データフローを作成する

 実際の作業は、その間に適当な成果物を挟んで繋がっています。そこでは、ある作業に入る前に完了していなければならない作業があります。また、前工程の作業の出来栄えが、後の工程に多大の影響を与えることもあります。

 自分勝手に考えたスケジュールでは、チームの他のメンバーと作業の連携が十分でないことが起きます。チーム内で未調整なスケジュールでは、自分のソースコードが出来上がってテストに入ろうとしても、共通の Header File がまだ作られていなかったりします。ここで確実に待ち状態に入ります。

 残念ながら、このような待ち状態が生じないようにお互いの作業がうまく設定できなていことが多く、しばしば「仮の作業」が行われて無駄な時間を過ごすか、メンバー間で2重の作業が行われたりします。「仮の作業」は、必ず後になってリワークとなります。この段階で連携のまずさに気付いたのでは、ほとんど調整は難しく、結果としてスケジュールの遅延を起こしてしまうことになります。

 このように、作業はお互いに関連しあうにも関わらず、実際には、相互の作業の関連が意識されていないことがあります。その結果、成果物が上手く繋がらず、後工程で無駄な作業や、手直しの作業が行われることになります。

 作業の繋がりが上手くイメージできないときは、DFD(データフローダイアグラム)を使って表してみると、意外とスムースに考えられることがあります。DFDは構造化分析手法の中心的な表現方法ですが、これをプロジェクトに当てはめれば、「プロセス」が「作業」と同じ意味になります。そしてプロセス間に流れる「データ」は、まさに作業間に流れるドキュメントであり「成果物」に相当します。

 構造化分析では、プロセスを見つけるために「出るデータ」と「入るデータ」を明らかにする所から取り掛かりますが、作業を見つけるときの要領はこの点でも全く同じなのです。つまり、

  1)どのような結果(成果物)を求められているか
  2)そして、どのようなデータが入手できるか

を明らかにすれば、そこから自ずと「処理」が見えてきます。

 成果物を産み出す作業をイメージする際に、事前にDFDのような表現が為されていれば、成果物と作業が一体でイメージ出来るでしょう。


(ウインドーを閉じて下さい)