予見と適応のバランス

一般的によくあることで私自身もそうなのですが、アジャイルについて説明する際に従来の方法を「計画駆動型」とか「予見型」などと言って、それに対してアジャイル型を「適応型」として、それぞれを対比して違いを説明したりします。
これはアジャイルとはどういうものなのかをわかりやすく説明するための方便として意図的にこのような表現をするのですが、その結果これらの考え方があたかも対立するものであったり、相容れない関係にあるような誤解を与えてしまうことがあります。
この問題についてアジャイルプロセス協議会主催の特別セミナー「アジャイルは単に廃れつつある流行語なのか?」の中でKruchten博士が以下のように指摘しています。

間違った二分法: アジャイル対X
 • アジャイルウォーターフォール
 • アジャイル対規律?!?!
 • アジャイル対計画駆動?
 • 軽量対重量?
 • アジャイルさ対アーキテクチャ!?
 • どちらかといえば:
    適応対予期
  <<=============>>
 • そしてこれは連続的な状態であり、2値ではない

私はこの適応と予期を左右に配置してそれぞれのバランスをスライドバーの位置で表現するというのがなるほどと思いました。
私にとっては予期よりも予見の方がしっくりくるのでイメージとしては

 適応 <<---------------||-->> 予見

このようなスライドバーで、予見と適応のバランスをとるということはこのバーの位置をどれぐらい適応に寄せるか、予見に寄せるか、どれぐらいの頻度で見直してバーを動かすのかというイメージになると思っています。
話が戻るようですが、この予見と適応のバランスは「計画駆動型」であろうが、「予見型」であろうが、ウォーターフォールであろうが、「適応型」であろうが、アジャイルであろうが、何であろうと関係なく必要かつ重要なことです。
ただマネージメント手法によってそれぞれ傾向があってその傾向によって課題が変わってきます。
つまり計画駆動などの「予見型」をベースにマネージメントを行えば傾向として十分に予見されることになりますが一方で予見が難しい状況や変化への対応の適応(不足)が課題となりがちです。
またアジャイルなどの「適応型」をベースにマネージメントを行えばその逆で変化への対応はしやすいですが一方で行き当たりばったりのような予見(不足)が課題となりがちです。


例えば出かけるときに雨が降るかもしれないときに傘をどうするかと状況を考えます。
「計画駆動型」ではまずは出かける前に傘が必要かどうか、必要であれば持って出るのか、それともどこでどのように調達するのかを綿密に計画します。
それから実際の天気が当初の予見通りで無かった場合にどのように計画を見直すのかについても事前に計画しておいて、それから家を出ます。
「計画駆動型」であっても天気が当初の予見通りで無いかもしれないことはリスクとして管理しなければならないことはよく知られています。
そして当初の予見通りで無かった場合には速やかに計画を変更するべきであることも理解しています。
しかし当初の計画に強い思い入れ(例えば雨が降らないで欲しいなど)があったり計画に余裕がない状況(例えば雨が降らないことを前提に最適化した場合に途中で傘を調達する手段がないなど)ほど計画の変更が難しくなります。
一方で「適応型」の場合には次に状況確認を行うまでのタイムボックス(例えば10分とする)の間で雨が降りそうかどうか、もし雨が降った場合に傘が無かった場合の影響はどうか、もし傘を持って出て雨が降らなかった場合の影響はどうか、途中で傘を調達する手段はあるかなどを検討し、そのタイムボックス(例えば10分)の間どの様な対応にするのかの方針を決めます。(具体的な対応は随時判断します)
そしてタイムボックス(例えば10分)たったらまた状況を見直して次のタイムボックスの間にはどのような方針にするのかを見直すことになっています。
しかし「適応型」ということで雨が降ってから適応すれば良いという誤解が行き当たりばったりになったり、全く予見しないという誤解により明らかに雨が降らない状況でも常に雨の可能性を考慮するということになったりすることがあります。


では「適応型」(アジャイル)をベースとするマネージメントでいかに予見を行ってバランスを取るかということですが、それは予見しようとし続けることとその経験による学習効果だと考えています。
これはXPで言う「計画ゲーム」であったりスクラムの「自己組織化」が相当するものだと思っています。
オブジェクト倶楽部2010新春イベント『オブラブアレグザンダー祭り』招待講演:『From Patterns Eastward To Lean And Westward To True Objects』でジム・コプリエン氏はアジャイルでは"plan"は重要ではない、"planning"が重要であると言っています。
つまり予見した結果が重要なのではなく予見しようとすることが重要だということです。
私は達成すべき重要な課題(要求)でありながら予見が難しい(リスクが高い)事柄を予見しようとして情報を集めたり、試行を行ったり、利害関係者全員の知恵を集めたり努力することが重要であり、このような点に徹底的に重点を置いて適応することがアジャイルの神髄なのだと考えています。


(2010-02-10:追記)
上記Kruchten博士の特別セミナー「アジャイルは単に廃れつつある流行語なのか?」についてオージス総研の藤井さんが以下のリンクのページでセミナー報告されています。
「アジャイルは単に廃れつつある流行語なのか?」セミナー報告|オブジェクトの広場