ソフトウェア開発の新たな手法としてアジャイル開発が紹介されてから数年が経過し、実プロジェクトへの適用事例を目にすることが多くなってきました。アジャイル(agile)とは、「俊敏な」「機敏な」という意味ですが、「ペアプログラミング」「テストファースト」のようなアジャイル開発手法の一部のプラクティスがそのすべてであるかのように言われることがあります。ここでは改めてアジャイル開発の基本的な考え方を整理していきたいと思います。
ソフトウェア開発手法とは
開発手法とはシステム開発を効率的に進めるための手順・約束事・ノウハウのことを意味します。最も歴史があり、よく知られている開発手法はウォーターフォールモデルとなるでしょう。ウォーターフォールモデルでは「要求」「分析」「設計」「実装」「テスト」「運用」といった形にシステムの開発工程を分割し、各工程では後工程の作業のインプットとなる成果物を作成します。成果物は仕様書や設計書などのドキュメント類で、基準や定義が定められおり、各工程の中で時間をかけて厳格に検証され承認されたもののみが用いられます。原則的に各工程の順序を飛び越えて先に進んだり、一度終了した工程に戻るということを許しません。このような開発モデルを滝の水が上から下に落ちることにたとえてウォーターフォールモデルと呼んでいます。
アジャイル開発の出現した背景
ウォーターフォールモデルは現在でも多くのプロジェクトで採用されています。その理由は工程がはっきりと分かれているためスケジュール立案や進捗管理などのプロジェクト管理を行うのが容易であること、段階的な詳細化のため各工程の工数の見積や資源の配分が行いやすいことなどがあります。しかしながら、最近のシステム開発の環境変化とウォーターフォールモデルに存在している問題点により、アジャイル開発手法が登場することになりました。
ソフトウェア開発環境に大きく影響を与えているのは、ビジネスの変化とスピードです。グローバル化や規制緩和などにより産業構造は大きく変化しており、従来の枠組みを自ら革して他社先んじて適合を行い、市場にいち早くサービスを提供していく必要があります。そのようなビジネスに必要なシステムを開発するための手法として捉えた場合、ウォーターフォールモデルには大きく2つの問題点があります。
■問題その1: システム全体に対する分析や設計を一括して行うため各工程が長く、ユーザーがシステムの実物を見られるようになるまでの時間が長い
ウォーターフォールモデルではシステム全体についてひとつの工程をモレがない段階まで行い、レビューによる確認や承認を終えた段階で次の工程に移ります。そのため、ひとつひとつの工程が長く、システム開発の初期段階で要件をヒアリングしたユーザが実際のシステムを利用できるまでには長い時間がかかります。
一方、市場で勝ち抜いていくために、企業は従来の業務構造を見直し、競合優位性を獲得できるように業務のあるべき姿を再構築しています。そのような業務に対するシステムの要件を検討した場合、日々の業務のみから必要な機能を抽出するということは困難であり、ビジネスゴールへの到達を想定した仮説にもとづいた要件にならざるを得ません。そのため、システムに本当に必要な機能は何か、システム機能を使用する業務は実現可能なのか、といった点については実際に動くもの見なければ検証できないという状況が発生してきています。
ウォーターフォールモデルを採用した場合には、ユーザーは開発の終盤にならなければシステムを利用して仮説の検証を行うということができず、そのためほとんどの機能を作り終えた後で変更要求が頻発して対応しきれなくなり、最終的に満足度の低いシステムになってしまう可能性が高いと言えます。
それに対して、アジャイル開発では開発プロジェクトの期間を短期間(1週間〜6週間)に区切り、この間に開発工程を一通り行って、部分的に機能を完成させます。そしてこの「短く区切られた期間で動くアプリケーションを開発する」という作業を繰り返すことによって、段階的にシステム全体を仕上げていきます。このような開発スタイルは反復型(イテレーション)開発と呼ばれていますが、開発期間の早い段階からユーザーが動くソフトウェアを目で見て確認できます。
関連情報
-
IBM、エクリプス財団に「Rational Unified Process」のコードを提供
BMは米国時間10月12日、オープンソース団体のエクリプス財団に対し、ソフトウェア開発プロジェクトの組織化に関するドキュメントやコードを寄贈したことを明らかにした - 離れていてもアジャイル開発が行える「Borland JBuilder 2006」、ボーランドが出荷
「今さら人に聞けないITトピック」 のバックナンバー
-
アップルの「Boot Camp」について知っておくべき3つのこと
Mac上でWindowsを稼働させるためのソフトウェアとして、アップルの「Boot Camp」が「Parallels Desktop」や「VMware Fusion」よりも優れた選択肢となり得る3つの理由について解説する。 -
TwitterでフォローすべきIT専門家100人
-
ここまで理解すればデビューもかんたん--ビジネスユーザーのためのTwitter基礎講座
-
マイクロソフトのクラウドサービス「Windows Azure」とは?
-
今流行のネットブックってどんなもの?
- 今さら人に聞けないITトピック 一覧へ »
-
日本モバイルインターネット端末市場分析 〜2008〜2012年のMID及びスマートフォン...
- 電力消費量を可視化〜!身近なPC管理から始めるグリーンIT統制〜
- 中堅企業におけるテクノロジーと成長
- 【SUN xVM portfolio】ダイナミックなデータセンターのための仮想化プラットフォーム
- 企業コスト削減の傾向と対策 〜最新アプローチのトレンド〜
- 高パフォーマンス・データベースの実現に向けたステップ
- パンデミックでも社員を守り業務継続を支援する
- 大容量ファイル、機密情報データの受渡しに! ~~ ファイルエクスプレス ~~
- インターネットセキュリティにおける今後の展望’09-’10
- データセンタとサーバルームの動的な電力変動
企画特集
-
進むストレージ環境の見直し
仮想環境に最適なiSCSIストレージLeftHandのメリット -
最大32個のセンサーが電力を徹底管理!
『省エネ性能』追求HPx86サーバー徹底レビュー -
求めているのはSIerのエンジニア!!
連載インタビュー第1話、グリーCTO藤本氏が語る -
企業ITシステムの企画、構築、運用のイロハ
戦略的なITシステムのために、今考えるべきポイント -
100万円で実現!中小企業の情報漏えい対策
中小企業の課題!?セキュリティ管理者不在でも大丈夫 -
マネジメントの「コラム」と「コネタ」
今日のキーパーソンは誰? -
大丈夫?あなたの会社のセキュリティ対策
中堅・中小企業のネットワーク・セキュリティを考える -
―エン・ジャパン厳選求人☆毎週更新―
ハンゲームの社長が語る・人材とサービスの在り方 -
【最終警告】パンデミック対策特集
サービス品質を保証するためのリスクマネジメントとは -
VMware OEMベンダー6社を独占インタビュー
IBM、HP、NEC、DELL、日立、富士通のVMwareの取り組み -
J-SOX法制定により内部統制の整備が急務に
重要性高まるActive Directoryの課題と対処法を公開中 -
急増するオンライン犯罪への解決策!
オンラインサービス保護ソリューション -
情報漏えいを食い止める!
証跡としての信用力を高めるメールアーカイブとは?
-
17. Intel Threading Building Blocks
オライリーブックから出版されている「Intel Threading Building Blocks... -
18. Intel Integrated Performance Primitives
単に最適化コンパイラを使うよりもパフォーマンスを良好にするルーチン...
新着企業動向
-
山なみ景観を守れ!建築物に新たなデザイン規制を導入 「山すそ景観保全策」への意見を募集
箕面市役所 -
【東京会場】12/5(土)プログラミングからWeb デザインまで、高速・高機能のテキストエディ...
エムソフト -
事例のご紹介 Vol.14 | 情報インフラの全体最適化
EMCジャパン -
WisePoint
ファルコンシステムコンサルティング - 企業動向一覧へ»
