これ僕.com:行動分析学マニアがおくる行動戦略

意図と行動のギャップから生じる「不自由さ」への挑戦。果たして僕たちに自由はあるのか?

段取れる人、段取れない人

プログラムを作るのがうまい人ってのは、段取りのうまい人なわけで。プログラムを書き始める前に、

  • 何をやるのか?
  • どのくらいあるのか?
  • いつまでにやるのか?
  • 必要な情報は揃っているのか?

などをはっきりさせようとする。で、さらにプログラムの(担当範囲の)全体的なイメージを膨らませる。これは、おそらく設計に相当する行為だ。まー、つまり「段取れる人」がプログラミングすると、詳細な設計情報がなくても、良いプログラムが出来上がってくる気がするわけです。
ところが残念なことに、プロジェクトは「段取れる人」ばかりじゃない。「段取れない人」のために、こちらで段取りを整えてあげる必要がある。詳細な設計書を書いたり、品質を保つための手順を示したり、出来上がったものをチェックしたり、etc。これで「段取れない人」のうち半分くらいは、ある程度適切に作業を進めることができる。更にその中から、「段取れる人」にランクアップする人もいる。
が、しかーし。残り半分がいる。この世の中には、ちゃんと段取りを整えても、その通りに作業を進めることができない人がいるようだ。単に理解できてないのか、モラルの問題なのかわかんないけど。人間はミスをしたりサボったりもする生き物だから、100%段取り通りにできるわけじゃないけど、それにしてもお話にならないレベルの人がいる。当然、出来上がってくる成果物の質もお粗末なものだ。

というわけで話を無理やり収束に向かわせてみると、この世の中の開発者には、

  • A.段取れる人
  • B.段取れない人

がいる。で、更にBのうち、段取りを整えてあげると

  • B-1.ちゃんと作業できるようになる人
    • B-1-1.段取れる人にランクアップする人
    • B-1-2.段取りがないと作業できないままの人
  • B-2.原因はどうあれ結果的に段取りを無視する人

ということになるのでしょうか。んで、私としましてはB-2の人はプロジェクトからご退場願いたい。どんだけ技術力があっても、正しいものができてこないし。できれば、B-1-1以上の人だけで構成したい。涙を飲んでB-1-2。B-2の人の生産性は、おそらくマイナスなので、たとえ人不足だとしても居ない方が良い。

開発プロセスについて考える

段取りつながりで。開発プロセスってのは、ソフトウェアを開発していくための段取りではないかと。で、この段取りには2種類あるんじゃないかと思う今日この頃。
一つ目は、ソフトウェアそのものを作りこんでいく段取り。これは簡単に言うと、どういう順番でどういう成果物を作って、その成果物同士をどう繋げていくの?ということだと考える次第。ウォーターフォールだと「要件定義 → 外部設計 → 内部設計 → 実装 ・・・(以下略)」って感じで、XPだと「ユーザーストーリー → タスク → テスト → プログラム」って感じでしょうか。
で、もう一つは、プロジェクトそのものをどう運用していくかについての段取り。メンバー同士をどう協調させるか?品質を作りこむには?要求の変更が起きたらどーする?とか。この段取りを考えるときは、「人」というものをとても強く意識するんじゃないだろうか。@ITの記事(http://www.atmarkit.co.jp/im/cpm/serial/emer02/emer02a.html)にもあったけど、プロジェクトを自己組織化するような、シンプルなルールを決める。メンバーの義務は、そのルールに従うことのみだ。それ以外は、思う存分に創造力を発揮してもらう。創造力が1+1を3とか5とか10とかにしてくれる。
・・・なんて具合にうまくいかないのが現実だったりするわけですが。orz
ええい、目指せ蟻んこ!