では最後に、エクスプレス開発手法に対する理解を深めてもらうために、ほかの開発手法との違いも簡単に紹介しておきましょう。以下の表1は、開発手法として代表的なウォーターフォール開発、エクストリーム・プログラミング(XP)などのアジャイルソフトウェア開発との違いを比較したものです。これを見ていただくと、エクスプレス開発はウォーターフォール開発とアジャイルソフトウェア開発の中間的な特徴を持っていることが分かると思います。
エクスプレス開発 |
ウォーターフォール開発 |
アジャイルソフトウェア開発 |
|
短納期開発 | 向いている | 向いていない | 向いていない |
開発者が 重視するもの |
業務 | システム | プログラム |
向いている 開発規模 |
中小規模 | 問わない | 問わない |
プロジェクトの 進め方 |
3分割する | セオリー通り | 優先順位付けを行う |
開発体制の特徴 | 2チーム制 | ピラミッド構造 | 各自が役割を兼務 |
進ちょく管理の 基準 |
納期 | 当初計画と実績 | 変更も念頭に置きつつ、当初計画を1つのメドとする |
品質管理で 留意するポイント |
バグ、障害 | 基準、計画、テスト | ソースコードの品質 |
開発側と エンドユーザーの 距離感 |
近い | 一般的な距離感 | 近い |
開発サイトの 設置場所 |
ユーザー企業の業務現場と、開発側の本社 | ケースバイケース | ユーザー企業の開発サイトと、開発側の本社 |
テスト上の特徴 | 結合テスト、運用テストを一緒に行う場合もある | 各フェイズが厳密に定義されている | テストは全開発作業の前提となる |
現在の業務システムの開発シーンでは、ウォーターフォール開発が一般的かつ大多数を占めています。しかし、開発を効率化するうえでは、プロジェクトの特性に応じて、エクスプレス開発やアジャイルソフトウェア開発も積極的に適用すべきですし、複数の開発手法を組み合わせる「ハイブリッド」も進んで取り入れるべきです。
例えば、業務システムの主要部分ではウォーターフォール開発を適用し、サブの無線システムの開発にはエクスプレス開発を使うというケースもあれば、工場のメインの業務システムにかかわる何らかのデバイスが必要となった際、その開発にはアジャイルソフトウェア開発を活用する、といったケースも考えられます。
すなわち、ここで念押ししておきたいのは、「いつも使っているから」など消極的な理由で常に1つの開発手法を使い続けるのではなく、「真に開発を効率化し、短納期化するためにはどうすべきか」と考え、案件に応じて最適な開発手法を積極的に選択する、あるいは、通常適用している開発手法をカスタマイズして対象プロジェクトに臨む“柔軟性”が何よりも大切ということです。
確かにエクスプレス開発やアジャイルソフトウェア開発は「短納期」がポイントですが、短納期化に最も効果を発揮するのは、手法の特性以上に、案件ごとに開発手法の向き・不向きを見極め、「柔軟に使い分ける姿勢」なのです。
また、昨今は開発のスピードアップ、低コスト化といった観点からクラウドコンピューティングが注目されています。ただ、プライベートクラウド、パブリッククラウドのいずれを活用するにせよ、クラウドコンピューティングならではの「スピード」というメリットを引き出すうえでは、ハードウェアやミドルウェアがクラウドサービスに内包されている以上、それらの上に乗せる「業務システムの開発スピード」が大きなポイントになることは言うまでもありません。
もちろん「パッケージを利用する」という選択肢もあります。しかしながら、企業が競争優位を獲得するうえで、「独自システムの開発」という選択肢は今後も確実に残るはずです。この点で、競争優位を発揮できる業務システムを、「いかに短納期で開発するか?」というテーマは、 スピード重視のクラウド時代において、より一層重要なテーマになると言えるでしょう。
従って、ウォーターフォール開発、アジャイルソフトウェア開発と並んで「エクスプレス開発手法」というバリエーションを用意しておくことは、さまざまな条件を持つ開発案件に柔軟に対応し、その開発スピードを高めるうえで、非常に大きな武器になると思います。クラウド時代を目前に控えたいま、ぜひ本連載をもう一度、始めから読み返してみてください。きっとあなたの開発チームの武器になるヒントが見つかると、筆者は確信しています。
筆者の経験でもそうですが、SEや情報システム部門のスタッフとして開発に携わっていると、日々の開発業務に追われて、その進め方を体系的に考えたり、見直したりする時間は意外に少ないものです。
しかし、今後は折りを見て、過去のプロジェクトなどを振り返りながら、「どのような進め方をしているのか」ぜひ客観的に見直してみてください。自分や身近な人にとっては、“ごく当たり前のやり方、進め方”であっても、外部から見れば新鮮かつ興味深く、自ずと取り入れたくなるような手法を、皆さんはすでに実行しているのかもしれません。
そして第1回で紹介したように、この「エクスプレス開発手法」もそうした手法の1つなのです。つまり、皆さんが「当たり前」のものとして実践している手法も、本連載と同様、多くの人にとっての“新たな知見・ノウハウ”になり得る可能性を秘めているのです。開発に携わる者同士、そうしたノウハウを共有できることほど、充実を覚える取り組みもほかにないのではないでしょうか。
筆者自身、本連載を始めるに当たり、「開発手法」というものをあらためて整理して考える機会をいただいたと感じています。ぜひ皆さんも、あらためて自身の開発手法、周囲の開発手法を見直してみてはいかがでしょうか。ご愛読、ありがとうございました。
西村 泰洋(にしむら やすひろ)
富士通株式会社 マーケティング本部フィールド・イノベーションプロジェクト員。物流システムコンサルタント、新ビジネス企画、マーケティングを経て2004年度よりRFIDビジネスに従事。RFIDシステム導入のコンサルティングサービスを立ち上げ、数々のプロジェクトを担当する。@IT RFID+ICフォーラムでの「RFIDシステムプログラミングバイブル」、「RFIDプロフェッショナル養成バイブル」などを連載。著書に『RFID+ICタグシステム導入構築標準講座』(翔泳社/2006年11月)などがある。
Copyright © ITmedia, Inc. All Rights Reserved.