Agile と Waterfall の適材適所
»
シャノンの情報定理によると、50%の確率の未来を確定させることの価値は大きい。成功確率0%のプロジェクトをやるのは意味がなく、100%のプロジェクトをやることはまったく簡単だ。
ウォーターフォールとアジャイルがどんなときに有効か、と考えると、100%に近く安定して結果が出せそうな時、はウォーターフォールで、未来が予見しにくいときはアジャイルで、というのが筋が合いそうに思う。それを、「成功確率」、「再現可能性」という軸に乗せてみた。ウォーターフォールは、製造に近いモデルなんだな。計画通りやることが正解であり、情報が事前に十分集まっている状態(Prepare Before Doing)。アジャイルは、そもそもうまく行くかどうか分からないから、少しずつ進んで、情報を仕入れながらやっていこう(Learning By Doing)、というスタンス。
アジャイルのやり方がうまくようになったのは、リファクタリング、という技術があるから。作った後でひっつけたり、作り変えたりできるソフトウェアの特性を生かしている。そして、リファクタリングは、ユニットテストがあるからできる。シンプルにまず縦に疎通し、その周りに太らせていく。徐々に内部構造を整理しながら。
SpecialPR