2006年8月29日火曜日

生産性の高いチームの適正人数

最近は、IT業界ではアジャイルな開発手法などが流行しています。(いわゆる"アジャイル"自体についてはまた別の機会に。)
(picture: carlosluis' Flickr)

"アジャイル"の特徴はいろいろあると思いますが、少人数のフラットな組織で迅速な開発を行う、というのも特徴の1つだと思います。そこで、

“ステルス攻撃機”開発のチーム運営に学ぶ

という記事がありました。

スカンクワークスは最初、米ロッキードが通称として使った。ステルス攻撃機の開発などが有名で、航空産業の最先端を担っているチーム運営手法だ。能力差が少ない「粒揃い」のメンバーを10人〜15人集めてフラットなチームを構成し、1人のプロジェクトマネジャーがすべてを統括する。少数精鋭のチームがすべての創造的な活動の中心になる。

もっとも効率的なチームの人数というのはやはりせいぜい15人といったところなのでしょうか。それも、スキルのある15人です。たしかに、世の中の優れたもの、革新的なものの多くが、少人数で作られています。

たとえば、最近でいうと37Signals。シンプルで使い勝手のよいWebツールを開発していることで有名です。37Signalsのメンバーの1人が、Ruby on Railsを開発したことでも有名です。彼らのモットーは、使いやすいサイトを小さくシンプルに開発する、というものです。

The 37signals Manifesto: 05 Size Does Matter

上で紹介されているスカンク・ワークスについては、

ステルス戦闘機—スカンク・ワークスの秘密』 ベン・R・リッチ

がおもしろいです。

スカンクワークスの一員でもあったこの著者によると、スカンク・ワークスの特徴は、

* 超個性的なリーダ(慕われ信頼されてもいるが敵も多い)
* 会社からの独立性、自由(必要最低限のルールを守れば監視されることもなく、必要な報告量も多くない)
* 優秀な技術者の集まり
* 技術者と製造現場がすぐ近く(開発者が製造現場に関われる)
* つねに80%の完成度を目指す(100%をめざさない)
* できるだけ既存品を使いまわす

ということにあるようです。

やはり、高い生産性と官僚主義的生産体制は相反するものだけれども、規模が大きくなると官僚主義的になり生産性が落ちるというのは悩ましい問題ですね。

ちなみに、「スカンクワークス」でも、なにも製造工程もすべて少人数なわけではなく、設計を少人数で行っています。実際の製造は、当然工場です。ただし、工場が設計場所のすぐ横に隣接されていて、何か問題があればすぐフィードバックが来るようにはなっています。

37Signalsなどは、(おそらく)自分たちでコーディングもしてもっとも生産性を高めていると思います。が、ステルス戦闘機を作るような大規模なシステムだとそういうわけにもいきません(実際、37Signalsも大規模なものはやらない、逆にそういう小さなものに特化することで生産性を維持する、としています)。大規模なシステムでは、高い生産性が求められる部分と、そうではない部分を分けて、分担していくしかないですね。

実際、IT以外の世の中のプロダクトは、家電にしろ車にしろ建築にしろ、少人数の設計チームと、大規模な製造、流通体制が協業しあっています。

ITシステムを作るときにも、現実問題は、スキルのある人を多く集められるわけでもなく、実際に作らなければいけないものも巨大で、15人ではとても無理なものも多いと思います。

解決策の1つは、"アジャイル"な考え方にしたがって、大規模なシステムを小分けにして少しずつ反復しながら開発していく、ということになると思います。もう1つは、高い生産性が求められる設計チームと、製造チームを分けた開発体制をとることです。もちろん、そういう体制が目指されてはいると思うのですが。

開発対象を分割するにしろ、開発主体(チーム)を分割するにしろ、いかにチームをスキルのある人による少人数フラットな形に近づけるか、というのが体制作りのキーポイントかもしれません。

0 コメント:

 
Clicky Web Analytics