プロジェクトマネジメントの鉄十字とアジャイル
今年読んだアジャイル本で結構多くの人が"Clean Agile"を挙げているのが観測できたので、読み始めました。そこで紹介されていたプロジェクトマネジメントの物理法則「鉄十字」がシンプルで解りやすいので紹介します。
この鉄十字は、品質(GOOD)、速度(FAST)、費用(CHEAP)、完成(DONE)の4要素で構成されています。当然、全部を満たすことが理想だと思いますし、そう言っている人もいることでしょう。ですが、この鉄十字はこの4要素のうち、3つまでしか選べないというトレードオフの物理法則です。物理法則なので、何者にも捻じ曲げることはできません(新たな歴史的発見がない限り)。
多くのプロジェクトでは、締切が決まっていて(FAST)、かけられるコストも決まっていて(CHEAP)、作るスコープも決まっています(DONE)。そうなると犠牲になるのは品質です。でも、品質を求めようとしてにっちもさっちもいかなくなった経験はないでしょうか。私は昔を思い出して胸が痛くなります。うぅ。
「バランスの問題でしょ?」と思った方、その通りです。すべてを100%にはできないので、問題はそのバランスをどう保っていくかなんです。
アジャイルと鉄十字
アジャイルがこれにどう立ち向かうかと言うと、データとそこから得られる最善の推測でマネジメントを試みます。プロダクトバックログの見積もりとベロシティが正しく計測できていたら、大体のスケジュール感は出すことが出来るはず。早めのワーニングも出せるかもしれません。
予定されているスケジュールに対して、明らかに期待されるベロシティがでていないのなら人を追加しても良いかもしれません。ただ、「遅れているソフトウェアプロジェクトへの要員追加は、プロジェクトをさらに遅らせるだけである」というブルックスの法則が存在します。恒久的に落ちるわけではないとは思いますが、また元のパフォーマンスまで戻るだけでも時間がかかることは理解しておいたほうが良いでしょう。
クオリティは唯一調整してはいけないものだと"Clean Agile"でも語られています。最速の道は、品質の高いコードを書くこと。品質の低いコードは、変更コストなどが高いだけではなく増えていく一方です。テストもしかり。もし継続的にコードを書いていく必要があるなら品質は落としてはいけません。
最後はスコープの調整です。納期に出す機能を調整します。やる・やらないの精神論で語ると危険です。今までの経験やデータをもとに可能か不可能かの話をしましょう。残業してでもやらなくちゃいけない時もあるという人もいます。そういう人はぜひ労働時間とパフォーマンスの関係についての研究結果をすこしググってみてください。いくらでも生産性が落ちるというエビデンスは出てきます。これこそアジャイルが持続可能なペースを重要視している理由ですね。
よろしければサポートお願いします!いただいたサポートは書籍やテック・アジャイル関連のイベント参加などに使い、レビューの公開をお約束します。