TechTargetは「アジャイルプロジェクト管理の原則」に関する記事を公開した。自己管理、自己組織化、継続的デリバリーなどの技術は、アジャイルプロジェクト管理を通じて、ソフトウェア開発の領域を超えた利点を実現する。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
TechTargetは2024年6月24日(米国時間)、「アジャイルプロジェクト管理の原則」に関する記事を公開した。
従来、プロジェクト管理のライフサイクルは、以下の5つの段階に明確に分かれていた。
これは、ある段階から次の段階へと工程が流れていくウオーターフォール型のアプローチを表している。建設業や製造業などの特定の産業ではうまく機能するが、要件や期待が常に変動する領域では成功しにくいという特徴がある。そうした変動が多い領域の一つにコンピュータプログラミングがある。従来のプロジェクト管理原則との不適合性から、IT分野の17人の開発者が2001年に「アジャイルソフトウェア開発宣言」を作成した。
この宣言は「4つの価値観」と「12の原則」で構成されており、基本的にソフトウェア開発を対象にしている。しかし、これらのアジャイルソフトウェア開発原則を支える考え方は、一般的なプロジェクト管理でも使えるように調整することで、ITやソフトウェア以外のさまざまな領域でも活用できる。
上述の通り、アジャイルソフトウェア開発宣言は12の原則を持つ。アジャイルプロジェクト管理という観点では、これを以下の5つにまとめることができる。。
アジャイル宣言は、アジャイル実践者の最優先事項は「価値あるソフトウェアの早期かつ継続的なデリバリー(early and continuous delivery of valuable software)」で、「包括的なドキュメントよりも動作するソフトウェアを優先すべきだ」としている。
アジャイルプロジェクト管理は従来のプロジェクト管理のように、開始と計画の段階に時間をかけることをよしとしない。広範な事前の計画を避けるのが特徴だ。長期間をかけて計画することは、橋やスカイスクレーパーの建設など、プロジェクトが開始後に大幅に再設計できない場合には理にかなっている。しかし、ほとんどの組織において「製品開発が遅れる」ということは「何も達成できていない」ことと同義だ。
アジャイルプロジェクトは、要件や目標が不明確であっても、すぐに製品ビジョンを構築する。目標は通常、プロジェクトの開始時には不明確なため、事前にどれだけ計画しても結果は変わらない。明確さを得る最良の方法は、動作する成果物を早期かつ継続的にステークホルダーの手に渡し、彼らがデリバリーされたものにどう反応するかを見ることだ。
アジャイル宣言によると、「動作するソフトウェアが進捗(しんちょく)の主要な尺度である(Working software is the primary measure of progress.)」とされている。これは、あらゆる製品開発の取り組みにも当てはまる。バーンダウンチャートや累積フロー図は素晴らしいが、クライアントに何も提供されていなければ意味がない。また、クライアントからすれば、提供される機能の進捗に満足できるなら、チャートや図表は重要ではない。価値あるものを構築、作成し、作成したものを継続的にステークホルダーに提供すること。これがアジャイルプロジェクト管理の核心的な原則だ。彼らのフィードバックが、製品開発の進捗を測る方法となる。
真の専門家集団は、専門家のスタッフを雇って管理しなくても、自己管理できるものだ。チームの主体性に任せることは、従来のプロジェクトマネジャーにとっては難しい考え方だが、アジャイルプロジェクト管理の成功には不可欠だ。
自己管理する個人は以下の目標を達成する。
アジャイルプロジェクトは、自己管理できる高度に動機付けされた良心的な個人を中心に構築されている。アジャイル宣言によると、アジャイルプロジェクトのマネジャーは「彼らに必要な環境とサポートを提供し、仕事を成し遂げることを信頼する(the environment and support they need, and trust them to get the job done.)」だけでよい。
アジャイルプロジェクトは、製品の構築とステークホルダーへの価値提供を段階的に進める。つまり、全ての成果物は、以前の成果物の上に構築されることになる。毎週、毎月という単位で実施する段階的な改善と追加が、プロジェクトの取り組みを完了に近づける。
アジャイル宣言では、このプロセスを次のように説明している。「2週間から2カ月程度など、できるだけ短い時間軸で、動作するソフトウェアを頻繁にデリバリーする(Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.)」
段階的なアウトプットは、チームが短期間で小さな改善を開発し、定期的にクライアントに提供することを意味する。これは最初の原則である“継続的な製品デリバリー”の強化につながる。段階的なアウトプットに焦点を当てるチームは、要件が不明確であっても製品をより速く開発できる。
段階的進行をサポートするために、アジャイルチームは以下のタスクを実施する必要がある。
短期目標に焦点を当てることで、アジャイルチームはリスクを最小限に抑え、集中力を最大化できる。クライアントへの機能や改善点の段階的なデリバリーは、顧客からのフィードバックの機会を増やすため、必然的に変更の要求も増える。しかし、これは良いことだ。なぜなら、アジャイル宣言では「計画に従うことよりも変化に対応することがアジャイルの本質だ(responding to change over following a plan)」と述べているからだ。定期的なフィードバックループによって、アジャイルプロジェクトが軌道から大きく外れる前に、すぐに軌道修正できる。顧客が期待するものと開発チームが提供したものの間に隔たりがある場合、チームはより小さな段階的なデリバリーで迅速かつ適切に調整する。
アジャイルプロジェクト管理において「修正フィードバック」は不可欠なものだ。アジャイル宣言では「アジャイルプロセスは、顧客の競争優位性のために変化を活用する(Agile processes harness change for the customer's competitive advantage.)」とされている。
あなたの組織が50人の新しい従業員を雇ったとする。彼らはさまざまなスキルと経験を持っている。これらの新しい従業員をどのようにチームに分けるだろうか?
アジャイルプロジェクト管理では、こうした振り分け作業は必要ない。代わりに彼ら自身に選択させればいい。自己組織化は、アジャイルプロジェクト管理の重要な部分だ。アジャイル宣言は次のように述べている。「最高のアーキテクチャ、要件、設計は、自己組織化チームから生まれる(The best architectures, requirements and designs emerge from self-organizing teams.)」。
高いモチベーションを持つ個人で構成されたチームは、指示しなくても自ら動くことができるはずだ。チームは自ら小さなチームに分かれ、効率的に協力して作業し、他のチームの成果物と統合可能な「製品の増分」を構築する。こうした活動は、プロジェクトの目標を実現するために全員が努力する中で実行される。また、プロジェクトが進行するにつれて、個人は自分の活用を最大化するために、あるチームから別のチームへ移動する権限を与えられるべきだ。
やる気のある人は一生懸命働き、生産性を高めたいと考えており、自分のスキルを最も必要としているチームに自然と移っていく。逆に、自分のスキルが過小評価されていると感じるチームからは離れていく。これは、職場の対立を未然に防ぐ方法の一つだ。
アジャイルプロジェクト管理の最後の原則は、成功をもたらす反復的プロセスを採用することだ。そうしたプロセスは「予測可能」「反復可能」「修正可能」という3つの特徴を持っている。アジャイルチームは、定期的かつスケジュールされたサイクルで計画、レビュー、振り返りを実施すべきだ。このサイクルには、チームがステークホルダーの手に渡せる価値あるものを生産するための合理的な時間が必要だ。これもまた最初のアジャイル原則である継続的デリバリーを強化することにつながる。
人気のあるアジャイル戦略であるスクラムフレームワークでは「開発スプリントは1カ月を超えてはならない」とされており、2週間のスプリントにするのが一般的だが、リスクを最小限に抑えたいチームは、スプリントを7日間まで短縮する。短い反復的なサイクルは、クライアントとの定期的なレビュー以上の意味を持っている。
反復的なサイクルはプロセスに予測可能性をもたらす。開発者はいつ増分をデリバリーすればいいのか知っているし、ステークホルダーはデリバリーがいつ来るかを知っている。さらに、定期的なサイクルによって、チームはより正確に自分たちの能力を見積もり、1週間や1カ月でどれだけのものを生産できるかを理解できる。こうした反復的なアジャイルプロセスには、チームが集まって「前回よりも改善する方法」を議論する機会も含まれるべきだ。
アジャイル宣言は、チームが定期的に「どうすればより効果的になれるかを振り返り、それに応じて自分たちの行動を調整する(reflect on how to become more effective, then tunes and adjusts its behavior accordingly.)」ことを主張している。反復的な生産サイクルがこれを可能にする。
アジャイル宣言はソフトウェア開発分野のために書かれているが、顧客やステークホルダーに価値を提供することを目指すあらゆる業界が、宣言の原則や信条から何かを学ぶことができる。それこそがアジャイルプロジェクト管理の本質だ。
Copyright © ITmedia, Inc. All Rights Reserved.