各技術者が持つスキルの可視化を目指す「スキル基準」。プロジェクトメンバーの招集や評価制度などが具体的になるだろう
経済産業省が行った調査では「約7万人の開発者が不足している」という試算も発表されていますが、現場では「もっと足らないイメージだ」という声を多く耳にします。
人材不足の状況を表す調査結果を見ると、人材やスキルに関する意見が上位に来ており、技術よりも重要であるという意識が読み取れます。組み込みソフトウェアの開発現場では、新たな技術の獲得以前に、既存の技術を上手に使いこなし、QCD(Quality Cost Delivery:品質・コスト・納期)を確保できる人材が求められているといえます。
ここで、「技術」と「スキル」の関係について整理しておきましょう。繰り返しになりますが、組み込みソフトウェアの開発現場では、「技術」を使いこなす「スキル」を有する人材が求められているのです。
「技術」は、要求に対して結果を出すことを保証するプロセスであるといえます。一般にいう開発技術は、開発という要求に対して成果物を作ることを保証するプロセスです。また、一般にいう管理技術は、管理という要求を実現するためのプロセスです。
「スキル」は、技術として定義されたプロセスを構成する作業(サブ工程)を遂行する能力です。スキルは、「作業遂行能力」や「技能」と表現するのが適しています。
作業遂行能力や技能というと、工場などの生産工程における旋盤やプレス作業をイメージするかもしれません。これらはまさにスキルであり、これらのスキルを有し駆使する人は技能者と呼ばれています。生産現場では、少子高齢化や2007年問題などで技能者不足が問題となっています。これは、スキルをコピーすることが難しいことに起因しています。スキルを座学で伝えることは困難であり、優秀な指導者(メンター)や相当の訓練を必要とすることは理解に難くありません。スキルは伝達困難であり、「伝承するもの」といえます。
技術はスキルと異なりコピー可能であり、知識としてドキュメント化できます。例えば、C言語という技術は言語仕様やマニュアルなどでドキュメント化することで伝達可能です。設計手法やテスト手法、マネジメント手法も同様です。コンパイラやCASEツールなどは、技術をツールによって支援するものであり、これもコピーや伝達が可能です。
一方、スキルはコピーできません。例えば、プログラミングスキルは教育・訓練が必要ですが、資質やセンスなど教育・訓練では解決できない要素が含まれます。このような傾向は、プログラミングだけでなく、設計やテスト、デバッグでも同様です。
Copyright © ITmedia, Inc. All Rights Reserved.