« 評論家と定量データオタクなんて、いらない | トップページ | 変わる世界 »

現代的なソフトウェア開発には、現代的な組織が必要だ

現代のソフトウェア開発は分業化が進んでおり、要求分析からリリースまでの全てを、一人で担当することは少なくなっている。
また、それに合わせて、要求分析の専門家、コーディングの専門家、テストの専門家といったように、ソフトウェアの専門職化も進んでいる。
とくに大きなメーカーでは、それぞれの専門分野ごとに部や課を分けており、その部門に配属されると、その部門の担当する種類の仕事だけをやっていくことになるというのが一般的だ。

例えば、開発課が要求分析を担当して、方式設計からソフトウェア結合までは専門のソフトウェアメーカーに外注し、納品されたソフトウェアの適格性確認テストを開発課が行い、機能と性能を確認した後は、テスト部門が検証を行い、ソフトウェア製品の品質を確認するといった具合だ。

このように分業化が進むのは、ソフトウェアエンジニアの専門性を高めることにつながり、好ましいことだと思うが、その一方で、要求分析からリリースまでを俯瞰的に見渡して、適切なマネジメントができる人材が少なくなっているのも事実だ。

実際にプロジェクト崩れを起こしているチームの状況を調べてみると、どのチームも、進捗管理、構成管理、リスク管理ができていないことが共通している。

それらのマネジメントに関わる仕事は、要求分析、方式設計、詳細設計、コーディング、、、といった個別のフェーズを実行するための技術やスキルとは別の技術でありスキルなのだが、失敗しているチームを管理する組織の長が、そのことを理解していないのだ。
つまり、彼らは、個別の開発フェーズを実行する担当を割り当てた時点で、計画を立て終わったと思いこみ、その計画を実現していくための方法を考えることや、その計画実現の担当者の割り当てや、計画の進捗状況に気を配ることを忘れてしまうのだ。

なぜそんなことになるのか?

実は、彼らは忘れているのではなくて、マネジメントを意識していないからだと思う。

多くの会社では、開発部門の組織の長、つまり部長や課長は、ほぼ全員、エンジニアから昇進した人々であり、もともとマネジメントの教育を受けていない。
さらに悪いことに、彼らは共通して、力任せに仕事を片づけてきたり、顧客との間でなんとなく仕事が片付いていく運の良い仕事を担当したりして、そして結果的にはうまくいったという「成功体験」」を持っている。

そんな人たちなら、マネジメントの重要性を意識できなくても、仕方がないだろう。

問題は、そんな彼らにでも、会社の中間管理職の仕事ができているように見えるということであり、さらに、その中間管理職の仕事ができることが、ソフトウェア開発を管理できるという国民的誤解につながっていることだ。

これは大問題だ。
実際に、ソフトウェア開発がとん挫し、ソフトウェアエンジニアが疲弊していく原因は、彼ら中間管理職が作り出しているのだから。

今後、世界はより多くのソフトウェアによって動かされていくし、そのソフトウェアを作り、支えるソフトウェアエンジニアは膨大な人数が必要になるだろう。

そんな世界を、古い体制に組み込まれているだけの中間管理職や、彼らを構成要素とする古い会社が、生き抜いていけるのだろうか?

それは不可能だ。

しかし、今あるものを一切捨てて、新しく作り直すのは、多くの会社にとって、不可能とは言えないまでも、非常な困難を伴うことだろう。

会社の昇進の仕組みを、根本的に変えることが、多くの会社にとって困難であるのなら、既存の中間管理職からなる構造とは別に、ソフトウェア開発のマネジメント構造を作ればよい。そして、徐々に、重点を新しい組織に移していけば良い。

古い価値観から新しい価値観への連続的な変化。

それこそが、今、すぐに取り掛かれなければならない、テーマだ。

|

« 評論家と定量データオタクなんて、いらない | トップページ | 変わる世界 »

ソフトウェア開発」カテゴリの記事

コメント

はじめまして。

確かに分業化がこれだけ進む中で、マネジメントの方法も見直しが必要ですよね。

個人的に思うに、専門のPMを配置すると同時に、末端のSEもマネジメント意識を高める必要があるように感じます。
いくらPMが優秀でも、SEが自分の作業見積もりを誤っていたり、進捗遅れを報告しなければ、プロジェクトが崩れてしまいますからね。
分業化が進んでいれば、なおのことです。

今後はプロジェクト全体を進める仕組みから、見直しをかける必要がありますね。

投稿: サムワン | 2010年11月28日 (日) 13時41分

コメントを書く



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


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1286769/37874294

この記事へのトラックバック一覧です: 現代的なソフトウェア開発には、現代的な組織が必要だ:

« 評論家と定量データオタクなんて、いらない | トップページ | 変わる世界 »