米国政府のアジャイル採用の取り組み
米国政府のITプロジェクトには、数多くの大規模プロジェクトが存在しています。これらの大規模ITプロジェクトは、これまで長い間ウォーターフォール型で開発されてきましたが、ダイナミックに変化する環境の中で、環境の変化に対応できないプロジェクトが多く発生し課題となっていました。そのため、米国政府は、大規模ITプロジェクトに対しアジャイルの採用について時間をかけて検討した結果、ウォーターフォール型との共存をベースにアジャイルの採用を決め、積極的に推進しています(1)。米国政府のアジャイルに対する取り組みは、日本における大規模ITプロジェクトに対するアジャイルの採用を推進していく上で参考になると思い取り上げました。
1 ) 米国政府がアジャイル開発を採用する理由 (1)
米国政府が開発するITプロジェクトには、複雑な大型案件が多い、法律に基づいた規準で動かなければならない、開発期間が長期にわたる、その間に状況が動的に変化する、などの特徴があります。当初、これらのプロジェクトの開発は、計画重視のウォーターフォール型が適しており、アジャイルを適用することは難しいと考えられていました。しかしウォーターフォール型開発による大型プロジェクトの成功確率が高くないため、米国政府は、大型ITプロジェクトに対するアジャイルの採用について長い間時間をかけて検討しました。その結果、ウォーターフォール型との共存をベースにアジャイルを取り入れていくことを決定しました。アジャイルを取り入れる理由として、アジャイルに以下のような利点があるからだと述べています。
・ |
非常に変化の多い動的環境に対応できる。 |
・ |
漸進的反復的出荷により顧客やユーザーのレビューやフィードバックが得られる。 |
・ |
費用対効果をベースにしたビジネス価値重視である。 |
・ |
ユーザー側と開発側との協働による開発である。 |
・ |
高い品質のプロダクトが出荷できる。 |
・ |
ムダ防止 |
2 ) 大規模ITプロジェクトへのアジャイル採用 (1)
複雑な大型ITプロジェクトのソフトウェア開発では、アジャイルとウォーターフォール型とが共存することになり、結果としてアジャイルとウォーターフォール型が混在するハイブリッド開発(2)といわれる開発形態が多くなります。この開発形態によりアジャイルの変化への対応という利点とウォーターフォール型の計画や規律順守という利点をうまく利用して複雑な大型プロジェクトを開発することが可能になります。
アジャイルを採用することにより、小規模プロジェクトの開発で効果を上げている同一場所におけるフェースツーフェースのコミュニケーションというやり方を、大規模プロジェクトにおけるチームの分散開発環境やバーチャル環境でも、IT技術やツールをうまく使って、同様のやり方を作り出すことができました。具体的には同一場所におけるフェースツーフェースのコミュニケーションの代わりに、ビデオコンファランスやテレコンファランスのツールや統合ツールなどを使って、デイリースクラムや反復レビュー会議を行っています。顧客が動くソフトウェアの実物のデモを反復レビュー会議で直接評価することにより、ウォーターフォール型で行っていた要求仕様書レビューやプロトタイプ法などに比べ、要求品質の高いソフトウェアを出荷できています。
国防省の例では、失敗プロジェクトが発生する主な要因は、開発側が顧客の要求や期待を理解し、適切に対応していないことにあると、過去の経験から分かっていたので、開発の初期の段階から顧客にアジャイルでの役割と責任を認識してもらい、直接参加を促すことが必要と考え、顧客がプロジェクトに直接参加することにしています。具体的には、プロジェクトを定義する初期の段階から顧客の参加を要請し、プロジェクトビジョンや要求定義書を一緒に作成し、開発を行って、効果をあげています。顧客参加はスコープをマネジメントする上で大変威力を発揮します。その理由は、プロジェクト・ライフサイクルの始まりから終わりまで顧客がプロジェクトに参加することにより、開発側が顧客の要求事項を確実に把握でき、変更要求に対しても直ちに対応できるので、開発途中でのビジネス環境の変化やIT技術の変化に対応することが容易になるからです。
3 ) アジャイル開発の推進活動 (3)
米国政府は、政府内のIT導入に関する21世紀のIT技術の取り組みの方向性として以下のような4項目に定め、推進活動を実施しています。
・ |
プログラムマネジメントできる専門家の育成 |
・ |
アジャイル開発の推進 |
・ |
リスクマネジメントの強化 |
・ |
政府内外の識者の委員会参画 |
この中で「アジャイル開発の推進」が1つの推進項目として取り入れられています。米国政府は、アジャイル開発の推進活動として以下のような具体的な活動を実施しています。
・ |
アジャイル開発を一般に広く宣伝する |
・ |
アジャイル開発のために政府内の業務プロセスを見直す |
・ |
予算プロセスを見直す |
・ |
アジャイル開発のためのテンプレート作成やトレーニングを実施する |
・ |
アジャイル開発に合った契約書を作成する |
・ |
アジャイル開発のベストプラクティスを共有する仕組みをつくる |
・ |
アジャイル開発をベンダー(開発者)に広める活動をする |
・ |
業界団体を通じてアジャイル開発へ開発要員をシフトするよう働きかける |
以上
参考資料
(1) |
Peter S. Zaleski, Christopher B. Bostian, Christtfer J. McDyer::Balancing Agility with Conformance on Complex Government Programs, PMI NA Congress paper(2011) |
(2) |
リンクはこちら |
(3) |
TechAmerica Foundation:Government Technology Opportunity in the 21stCentury, Improving the Acquisition of Major IT systems for Federal Government |
|