« 製造指示の設計と実装 (2)開始と完了 | トップページ | 製造指示の設計と実装 (3)外作 »

2013.04.03

もう「チーム開発」には戻れない

 生産管理システムをひとりで開発しているわけだが、このやり方(おひとりさま開発)に慣れると、分業体制でのチーム開発がいかに非効率だったかがよくわかる。チーム開発は「設計・実装技術の未成熟さゆえの必要悪」だったのではないかとさえ思えてきて、仲間と和気藹々とやっていた昔の自分がなんだか恥ずかしい。

 たとえば、いくらしっかり設計してもどうしても仕様変更が起こるものだが、これにともなう手戻りコストがチーム開発では想像以上にかさむ。自分で修正したほうが早いと思いつつ、変更作業のための指示を他人のためにまとめたりする。また、実装担当者の稼働率を上げるために、仕様がまだ不明確であるような機能をあえてあてがったりする。今となっては信じがたいほどの非効率だ。

 また、自分で作って動かしてみなければ得られない気づきやアイデアがたくさんあるのだが、チーム開発では設計担当と実装担当が分かれていることが多い。それゆえ、プログラムが動くようになってからでないと改善点に気づけない。ひとりでやっていれば、動くようになるずっと前のタイミングで俊敏に軌道修正できる。ようするにチームで開発することで、さまざまなムリ・ムラ・ムダが大量に生じている。

 効率の良さばかりでなく、おひとりさま開発には代えがたい「楽しさ」がある。業務設計もDB設計も機能設計も実装もテストもぜんぶやる。下手な設計をすれば直接しっぺ返しを受けるという厳しさもあるが、それを上回る悦楽がある。なにしろ、自分の頭で構想したソフトウエアが自分の手で形になってゆくのだ。単能工用の流れ作業から多能工用のセル生産方式に変えることで作業者の働き甲斐が回復すると言われるが、ちょうどそんな感じだ。

 「チーム開発は開発者の育成の観点から必要だ」と考える向きがあるかもしれない。今となって私は思うのだが、メンバーの育成を多少とも意図するチーム編成は、しばしば弊害のほうが多い。

 たとえば、効率の上でおおいに問題含みである。育成の名のもとに新人が2名投入されたなら、年季のいったメンバーを1名投入することによる効果と簡単に相殺されてしまう。現場のベテランは知り抜いているが、新人が開発プロジェクトに関わればひどく足をひっぱられるだけだ。それをあえてコトアゲしないのは、彼ら自身もプロジェクトの足をひっぱりつつ育成してもらった経緯があるからだ。

 チーム開発にともなう分業によって起こるもうひとつの問題は、職掌の固定化である。組織の開発効率を少しでも高めるために、「設計する人」と「コードを書く人」の分業の固定化が起こりやすい。その結果、プログラマが分析・設計スキルを磨くことなく三十路を迎えるなんて事態が起こったりする。現役のプログラマであり続けることは悪いことではない(むしろカッコイイ)。しかし、彼らに分析・設計の実務経験がいつまでも与えられないとしたら、それは所属組織による育成の失敗である。

 ゆえに、育成すべき新人がいるのであれば、おひとりさま開発を担う開発者の下で「見習い」として働かせたらいい。「一部の開発工程」ではなく「一部のサブシステムについての全工程」を経験してもらうためだ。ホワイトボード上でのモデリングから始めて、コーディングやシステムテストまでひととおりやらせる。その場でダメ出しされながら全工程を経験することで、新人は効果的に成長できる。もちろん客先との契約において新人の工数を含めるようなアコギなことはせず、あくまでも「教育投資」として位置づける。

 なお私は、チームでなければ開発できないソフトウエアが存在することを否定するつもりはない。多くのOSSは、ひとりの開発者だけでは使いやすい形で完成することはなかっただろう。業務システムに限っても、金融系あたりをひとりで開発するなどとうてい無理だ。そういうものを相手にするのであれば、緻密なプロセス論や管理ツールが必要であることは言うまでもない。

 しかし、販売管理システムや生産管理システムといった一般的な業務システムについては、おひとりさまで開発される機会が増えてゆくだろう。なぜならこの種のソフトウエアの開発作業を合理化することの社会的効用が大きいだけでなく、技術革新の動きのうえからも蓋然性が高いからだ。個々の開発案件をひとりで扱うための開発・保守体制が工夫され普及することは、もはや時間の問題でしかない。

 そのための鍵は、まともな設計支援ツールと超高速開発ツールだ。設計支援ツールは、たったひとりで複雑膨大な設計情報を掌握するため、そして、引継ぎを容易にするために欠かせない。超高速開発ツールは、たったひとりで現実的な工期で完成させるために必要だ。これらの道具立てがあれば、開発プロセスが苦もなくアジャイル化するなんてオマケもついてくる。

 結論。おひとりさま開発は、合理的かつ働き甲斐を実感できるやり方である。しかしそれは、設計・開発過程のカイゼンを推し進めた先で初めて味わえる果実である。そしてその自由と孤独の味を知ってしまったら、もうチーム開発には戻れない。

|

« 製造指示の設計と実装 (2)開始と完了 | トップページ | 製造指示の設計と実装 (3)外作 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: もう「チーム開発」には戻れない:

« 製造指示の設計と実装 (2)開始と完了 | トップページ | 製造指示の設計と実装 (3)外作 »