(編集部注:2011年の連載記事「アジャイル開発を実案件に生かすための基礎知識」も併せてご覧下さい)
ソフトウェア開発の新たな手法としてアジャイル開発が紹介されてから数年が経過し、実プロジェクトへの適用事例を目にすることが多くなってきました。アジャイル(agile)とは、「俊敏な」「機敏な」という意味ですが、「ペアプログラミング」「テストファースト」のようなアジャイル開発手法の一部のプラクティスがそのすべてであるかのように言われることがあります。ここでは改めてアジャイル開発の基本的な考え方を整理していきたいと思います。
開発手法とはシステム開発を効率的に進めるための手順・約束事・ノウハウのことを意味します。最も歴史があり、よく知られている開発手法はウォーターフォールモデルとなるでしょう。ウォーターフォールモデルでは「要求」「分析」「設計」「実装」「テスト」「運用」といった形にシステムの開発工程を分割し、各工程では後工程の作業のインプットとなる成果物を作成します。成果物は仕様書や設計書などのドキュメント類で、基準や定義が定められおり、各工程の中で時間をかけて厳格に検証され承認されたもののみが用いられます。原則的に各工程の順序を飛び越えて先に進んだり、一度終了した工程に戻るということを許しません。このような開発モデルを滝の水が上から下に落ちることにたとえてウォーターフォールモデルと呼んでいます。
ウォーターフォールモデルは現在でも多くのプロジェクトで採用されています。その理由は工程がはっきりと分かれているためスケジュール立案や進捗管理などのプロジェクト管理を行うのが容易であること、段階的な詳細化のため各工程の工数の見積や資源の配分が行いやすいことなどがあります。しかしながら、最近のシステム開発の環境変化とウォーターフォールモデルに存在している問題点により、アジャイル開発手法が登場することになりました。
ソフトウェア開発環境に大きく影響を与えているのは、ビジネスの変化とスピードです。グローバル化や規制緩和などにより産業構造は大きく変化しており、従来の枠組みを自ら革して他社先んじて適合を行い、市場にいち早くサービスを提供していく必要があります。そのようなビジネスに必要なシステムを開発するための手法として捉えた場合、ウォーターフォールモデルには大きく2つの問題点があります。
■問題その1: システム全体に対する分析や設計を一括して行うため各工程が長く、ユーザーがシステムの実物を見られるようになるまでの時間が長い
ウォーターフォールモデルではシステム全体についてひとつの工程をモレがない段階まで行い、レビューによる確認や承認を終えた段階で次の工程に移ります。そのため、ひとつひとつの工程が長く、システム開発の初期段階で要件をヒアリングしたユーザが実際のシステムを利用できるまでには長い時間がかかります。
一方、市場で勝ち抜いていくために、企業は従来の業務構造を見直し、競合優位性を獲得できるように業務のあるべき姿を再構築しています。そのような業務に対するシステムの要件を検討した場合、日々の業務のみから必要な機能を抽出するということは困難であり、ビジネスゴールへの到達を想定した仮説にもとづいた要件にならざるを得ません。そのため、システムに本当に必要な機能は何か、システム機能を使用する業務は実現可能なのか、といった点については実際に動くもの見なければ検証できないという状況が発生してきています。
ウォーターフォールモデルを採用した場合には、ユーザーは開発の終盤にならなければシステムを利用して仮説の検証を行うということができず、そのためほとんどの機能を作り終えた後で変更要求が頻発して対応しきれなくなり、最終的に満足度の低いシステムになってしまう可能性が高いと言えます。
それに対して、アジャイル開発では開発プロジェクトの期間を短期間(1週間〜6週間)に区切り、この間に開発工程を一通り行って、部分的に機能を完成させます。そしてこの「短く区切られた期間で動くアプリケーションを開発する」という作業を繰り返すことによって、段階的にシステム全体を仕上げていきます。このような開発スタイルは反復型(イテレーション)開発と呼ばれていますが、開発期間の早い段階からユーザーが動くソフトウェアを目で見て確認できます。
勝ち残るIT活用--中堅中小企業の現場からタレントの江口ともみさんをレポーターに、
全国さまざまな業種の企業担当者に聞く!
サイバー攻撃関連ニュースのまとめ特別企画:高度化するサイバー攻撃からビジネスを守る
~対策レポートや企業の製品動向をまとめ読み~
ウェブ消費行動の専門家×日本ベリサイン
ネットで消費者の信頼を得るポイントとは
必要以上の容量を奨められていませんか?
→電気ガスのように使えるストレージを知る
率直な読者のご意見を全て公開
クラウドに対する疑問や実際の効果に迫る
福田和代が贈るZDNetオリジナルストーリー
見逃せない3部作の第1回が無料公開!
境界防御だけでは、もはや不十分?
大切なデータベースを守る方法とは
陥らないためのワンポイント解説&
”実証実験から読み解くセミナー”情報
日立のサーバ戦略が描く、IT活用の今後
仮想化・クラウド対応としての製品強化
JP1、Hadoop、QlickView "集計・分析"
データをクラウドに集約 ”蓄積・検索"
物理パッチ適用までにサーバを襲う脅威から
自動的に保護するDeep Securityエージェント
製造業者必見
オフライン環境のセキュリティ対策
最新テクノロジ満載、「百度」の講演も!
TECHNOLOGY @WORK 東京 2012レポート
ポーターズ株式会社
NECラーニング株式会社
ピーエムシー・シエラ・ジャパン株式会社
ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。