はじめに
組込みスキル標準(ETSS)が持つ重要な機能の一つに、「組織や個人のスキル分布を可視化する」があります。今回は、スキル分布が可視化されるということでどのような効果につながっていくのかをプロジェクトマネジメントの観点で紹介してみたいと思っています。
作業遅延に対する要員追加
発生の原因はともかくとして作業遅延の発生した開発プロジェクトに、作業遅延を挽回させるために開発要員を追加するという対策がとられるという話をよく聞きます。またそれと同じくらいに、安易な開発要員の追加投入によるトラブル火消しの失敗話(ボヤが大火災に!)もたくさんあるようです。
筆者もまた開発エンジニアとしてトラブルプロジェクトに巻き込まれた(巻き込んだ?)経験が数回(十数回?)ありました。トラブルプロジェクトをなんとか終わらせたあとに振り返ると、「やみくもに技術者を投入してもダメ。本当にできる人が必要」「遅延が生じるはなんらかのマネジメント上の問題がある」「人が増えることはさらにマネジメントに負担をかける」などといった毎度毎度、ごく当たり前の反省を繰り返しました。その反省を経験として活かせればよいのですが、いざ開発上のトラブルが発生してしまうと、上長から「人を増やすからなんとかしろ!」と言われれば、経験則だけで「それは逆効果ですよ」と言っても説得することはたいへん困難だと思います。
統計データから見えること /言えること
これらについてたいへん興味深い統計データがあります。経済産業省が行った「2007年度組込みソフトウェア産業実態調査」に、品質や生産性などのソフトウェア開発上の管理観点と組織のスキル分布状況(ETSSのスキル基準による)との比較分析を行っています。図1はその中の一つで、統計結果からソフトウェア品質の高い組織と、低い組織の2象限のグループに分類したものを、その2つのグループごとにスキルレベルが3以上の人数の比率(実線)と、レベル1の人数の比率(破線)の折れ線グラフを筆者の方で追記してみました。
注目していただきたいところは、マネジメント能力を表す管理技術について、品質のよいグループはスキルレベル3以上の人材が多く、逆に悪いグループではスキルレベル1の人材が多いということがわかります。また、ソフトウェアの開発技術に関しては、いわゆるソフトウェア実装(スキルレベル3以上の分布状況)は良いグループも悪いグループもほとんど同じでしたが、品質が悪いグループではスキルレベル1の人数比率が高いということが読み取れます。また悪い品質のグループでは、いわゆる上流工程と言われる要件定義や設計のフェーズにもスキルレベル1(半人前)の人材をかなり投入してしまっているようです。
この統計データからソフトウェア開発において品質を確保するために、しっかりとしたマネジメント(管理)スキルを持った人材の確保と、やみくもに開発技術のレベルの低い人を増やしても効果が出ないという前述の経験則を可視化したうえで裏づけることができます。
チームのスキルを可視化する
しかしながら、いきなりこの統計グラフを上長に見せて説得しようとしても「ふーん。それで?」で終わってしまうかもしれません。その説得を行う前に担当しているプロジェクトチームに対するETSSのスキル診断をぜひやってみてください。なぜなら今回紹介したグラフは、あくまでもアンケート結果から導きだされた統計値であって、あなたのプロジェクトチームの状況を表したものではないからです。もしかすると、あなたのプロジェクトチームはととても高いスキルの分布を持ったハイパフォーマーの集まりであるかもしれませんし、残念ながらあまり高いレベルのエンジニアが少なく、緊急に対策をとらなければならないチーム状況であるかもしれません。
実際のチームの状況を可視化し前述のような統計データと比較することによって、チームにとってどのようなスキルとスキルレベルを持った人材が必要なのか、またそれらが不足した場合にどのような影響(品質、生産性、コストなど)が生じるのかを客観的に分析できます。これらの分析結果は図1のグラフのように可視化することができるので、上長や同僚と一緒にさらなる課題の抽出や共有を実現できます。
おわりに
良いベテランのプロジェクトマネージャなどは、このような方法を無意識のうちに頭の中で瞬時にやってしまっているのかもしれません。そのようなベテランの技を後進に伝えるためにも、今回のように可視化し共有していくことが大事なのではないかと思う今日このごろです。