業界から見たIT技術の変遷
IT技術の変遷について考えてみると、業界の変遷と照合すると分かりやすくなる。
最新のIT技術が必要とされる業界が、流れとして、鉱工業や金融から、小売などの商業やマーケティング系へ移りつつある。
昔は、工場や銀行のようなミッションクリティカルな業務システムに、メインフレーム+Cobolで構築していた。
昨今は、メインフレーム+Cobolを、Java/.NET+オープン系システムへリプレースする案件が非常に多い。
それらの案件は大抵、大規模案件で、いつもデスマーチになる。
技術者としても、部品ばかり作って、システムの全体像が見えず、楽しくない。
昨今の小売などのネット注文Webシステム、SNSなどは、Java/PHP/Perl/Ruby+Unixで構築することが多い。
例えば、Amazon、楽天、mixiなど。
それらの案件は中小規模だが、いつも最新のWeb技術を試すし、技術革新のスピードが猛烈に速い。
技術者としては、いつも新しい技術を使うので、しんどいけれども、ワクワクする。
小売系のWebシステムの特徴は、Webシステムの特徴を生かしきっていること。
Webシステムの最大の特徴は、2つある。
一つは、クライアントはPCブラウズ又は携帯なので、Webサーバーへモジュールをデプロイすれば簡単にリリースできる。
もう一つは、スケールアップがやりやすいこと。Webサーバーを増設すれば、簡単に処理性能をUpできる。
昨今は、サーバーのコストも安くなっている。サーバーのメモリを64G積もうとしても、そんなにお金はかからない。
メインフレームよりも安く、更にカスタマイズしやすい。
小売系の業務は実はかなり複雑。
大まかな流れは下記の通り。
1・バックエンド:オペレータが商品マスタを投入する
↓
2・PCブラウザ/携帯:ユーザが会員登録+商品検索+商品を注文する。更に、注文履歴や配送履歴を閲覧する。
↓
3・バックエンド:オペレータが、ユーザーの連絡を受けて、ユーザーの注文データを修正したり、クレジットカード会社へ注文を取り消したりする。
↓
4・バッチ:オペレータが売上計上する。更に会計システムや配送会社へ注文データを送る。
つまり、アクターが変わるたびに、システムが4つも変わる。
Webシステムだけで閉じているなら、テストも簡単だが、Web→バックエンド→バッチまできちんとデータが流れるか、その業務のインターフェイスを設計して品質を保つのが難しい。
業務的には、はぶさんやT字形ERによると、商品マスタというリソースが多い会社ほど、ビジネスを展開しやすい。
つまり、リソースを組み合わせることで、トランザクションを増やすことができる。
例えば、商品と顧客というリソースの関係から、注文だけでなく、購入履歴、お勧め商品、お気に入りリスト、優先会員へ割引注文、などのトランザクションを生成できる。
決済処理は、小売系で最も重要な機能。
小売系の会社は、自社のクレジットカードで決済させたがる。
理由は簡単。注文者の購入履歴を把握できるから。クレジットカード決済データがたまるほど、そこからマーケティング調査できる。
また、コンビニ注文は5日以内にお金を払わないと注文キャンセルらしい。
最近は、代引き決済なんてできるらしい。
また、小売系は、季節商品が多い。
冬はおせち・お歳暮・クリスマスケーキ・福袋、春はバレンタインデー・お花(母の日が年間で一番売れる)、夏はお中元など、やたらとイベント単位に大量に売りさばく業務が多い。
そのたびに、カスタマイズした機能を作り、商品データを流し込む作業が発生して、年中忙しいけれど、それらの商品でテストするのは楽しい。
少なくとも、女の子SEは、クリスマスケーキや女性用化粧品、女性用婦人服の商品を使ったテストが楽しいらしい。
僕もテストしたおかげで、女性用化粧品のブランドをかなり覚えたよヽ(^。^)ノ
クリニーク社の製品は実は、男性用もあるらしい、とか。
技術的には、EJBサーバーを使うとか、携帯ならFelicaや3G対応などハード面も技術調査が必要。
特に携帯は、画像の表示サイズが小さいとか、絵文字を使ったり、ハード面の制限も多い。
PCなら、ユーザが使う場面では、AjaxでUIを使いやすくするのが最近の流行。
バックエンドのシステムは、FlashやFlexなどで、昔のクラサバのシステムに近いUIにするのが普通だろう。
今年以後は、バックエンドは、AdobeAirやMSのSileverlightを使って、デスクトップアプリのようなUIを使うようになるだろう。
プログラミング的には、ミッションクリティカルな業務システムでは、Java技術がかなり枯れて安定している。
Javaはオープンソースのフレームワークやライブラリが多く、ノウハウも多い。
しかし、開発のスピードがJavaで遅いと感じる時が多い。
だから、PHP/Perl/Rubyを使うシチュエーションが多くなりつつあると思う。
Amazon、楽天、Mixi、はてなはいずれもPerlを使っている。
これからは、Ruby on Railsかな。
Webシステムの開発スタイルはアジャイル開発。
XPが最もマッチする。
特にUIやデザインは、顧客がリリース前に一度確認したがる。小売系は見た目重視だから。
だから、結局、開発チームに顧客も巻き込んだ形になる。
更に、ソース管理とビルドツールを統一的に組み合わせて、常時ビルドできる環境が普通だろう。
だからこそ、毎日リリースする開発体制を組むことも可能。
以前のメインフレーム上の開発では考えられないだろうが。
このように、ハード面も技術面もプログラミング面も開発プロセスでも、工場や銀行のシステム開発は、時代にマッチしなくなってきた。
昨今のように、3ヶ月先の景気すら見えない時代では、素早く変化できるビジネス、そして変化に対応できるシステム開発が最重要な技術。
Webシステムの最大の特徴は、リリースとスケールアップが簡単なこと。
Webシステムは、今の時代に一番マッチしている。
| 固定リンク
「ビジネス・歴史・経営・法律」カテゴリの記事
- ビジネス書の名著はどれ?(2023.09.18)
- 営業は顧客の”購買代理人”である(2023.08.16)
- 第85回IT勉強宴会の感想~概念データモデルからビジネスモデルを構築すべきという考え方(2023.05.13)
- 令和4年度春期試験のITストラテジスト試験第4問をastahでモデル化してみた(2023.04.15)
- ChatGPTで起きている事象の意味は何なのか(2023.04.02)
コメント