判断するための情報を得る - 見える化
はじめに
前回はプロセスの共通要素としてフィードバックを取り上げました。フィードバックの要(かなめ)はフィードバック情報の処理能力にあります。現状を理解し、未来の可能性を描き、活動の方向性を選択するために必要な情報を得ることができなければ、フィードバックの目的が果たせません。
今回は『見える化』を取り上げます。フィードバックでは、活動の結果と活動の過程という2つの側面がありました。見える化でも結果と過程に分けて考えていきます。
スプリントの結果を見える化する
今回は例としてスクラムを取り上げます。スクラムでは、図1のサイクルを繰り返します。スプリントは、選択した要求を満たすシステムを1ヶ月で開発する活動です。スプリント終了時には、動くシステムが出来上がります。
図1:スクラム |
見える化の対象はスプリントの結果、つまりスプリントが終了した時点の状況です。終了した時点でどのような情報を知りたいでしょう?例えば、QCD(Quality, Cost, Delivery)という視点があります。Qualityは品質であり、言い換えればシステム使用者の満足度と言えます。品質を高める目的は、使用者の満足度を向上させることにあるからです。Costは費やされる資源を意味し、一般的には費用ということになります。Deliveryは納期であり、期間です。
見える化の目的は、現状を理解し、未来の可能性を描き、活動の方向性を選択するために必要な情報を得ることです。QCDを把握できれば目的を果たせるでしょうか?何とも答え難い気がします。QCDの情報がどのように意思決定(方向性の選択)に使われるのか明確ではありません。
そこで、意思決定の過程を知っている活動と対比して考えてみます。ここでは、スクラムによるシステム開発をドライブ(車の運転)と対比します。
ドライブ(車の運転)で喩える
ドライブでは、現在地と目的地があり、現在地と目的地の間の距離(km)が測れます。費用(¥)と時間(h)は有限の場合がほとんどです。ドライブで気にかけるパラメータとしては、距離、費用、時間の他に、速度(km/h)、燃費(km/l)、ガソリン価格(¥/l)があります。これらのパラメータから限られた時間と費用で目的地に到達できるか、どこまで行けるのかを検討します。
- 走行可能距離A(km) = 費用(¥) × 燃費(km/l) ÷ ガソリン価格(¥/l)
- 走行可能距離B(km) = 時間(h) × 速度(km/h)
- 距離(km) ≦ 走行可能距離A(km) かつ 距離(km) ≦ 走行可能距離B(km)
スクラムでもドライブと同じように考えます。いくつかのパラメータを見える化して、ドライブ計画を立てるようにスプリント計画を立てます。ドライブの計画であれば、上記の式から未来の可能性を描き、ドライブの方向性(走行ルートや速度など)を選択できるのではないでしょうか?スプリントの計画も全く同じです。図2に示すパラメータを見える化することで現状を理解しつつ、未来の可能性を描き、開発の方向性を選択します。
図2:ドライブとスクラムによるシステム開発の対応 |
では、対応を1つずつ説明します。
- 移動する
- スプリントにおけるシステムの実装に対応します。現在地はシステムの状態を示し、いろいろなシステムの状態を経て(地点を移動して)、最終的なシステムの状態(目的地)にたどり着きます。
- 距離、費用、時間
- QCDに対応します。スプリントにおける距離とは、満たされていない要求の量と言えます。Pts(ポイント)は要求の量を示す単位です。ファンクションポイント、ユースケースポイント、ストーリーポイントなど様々なポイントが提唱されています。費用はプロジェクトの予算、時間はリリースまでの期間です。
- 速度
- 開発速度に対応します。開発速度は、時間あたりに実装可能な要求の量です。開発速度を計測する上で、時間の単位は日ではなく、時(h)がよいでしょう。単位を日とすると、1日の業務時間が多くなった時に速度が向上したように見えることがあります。
- 燃費、ガソリン価格
- 燃料の量(l)が関わるパラメータです。燃料は動力源であり、活動の主体(ドライブでは車、システム開発ではチーム)がどれだけ動けるかに関係します。燃料の量の単位は人月と考えると理解し易くなると思います。ガソリン価格は人月あたりの費用、燃費は人月あたりに実装可能な要求の量となります。車において燃料は、動力の他にエアコンやステレオなどの機器によっても消費されます。システム開発においても要求を実装する以外の打ち合わせや様々な作業によって消費されます。さらには、モチベーションが影響します。プロジェクトへのモチベーションが低ければ、人月あたりの活動量が低くなります。
以上は、喩え(メタファ)を用いることで見える化を行った例です。例では、システム開発とドライブに類似性を見いだしています。そして、ドライブにおいてどのように意思決定(目的地の選択など)が行われているかを考察します。考察した結果、ドライブにおいて意思決定に用いているパラメータが明らかになります。これらパラメータをスプリントに当てはめ、無理なく説明できる当てはめ方を探します。喩えを使うことで、活動の本質を浮かび上がらせることができます。それにより見える化する内容を絞り込むことができます。