では、組込みソフトウェア開発現場では、その重要性の高まりに見合った、品質に対する抜本的な対策が取られているだろうか。おそらく、重要性を理解しつつもなかなか対策が打てていないというのが、多くの開発現場の状況ではないだろうか。元々、ソフトウェアは目に見える「形」のあるものではない上、自由度が非常に高く、品質を測ることやテストすることが非常に難しい。
膨大な機能仕様の組み合わせや動作タイミングはほとんど無限に存在しており、その全てを網羅したテストを実施することは不可能に近い。
また、急成長する組込みソフトウェア開発の現場では常に開発者が不足している。品質を高めるために、単純にテスト項目や設計書類のレビューポイントを倍増するといった工数のかかる対策を行うのは現実的ではないだろう。品質に対する問題意識はあっても、体系的な品質向上施策を打ち出すための工数すらとれないのだ。
さらに、近年は以下の状況もソフトウェア品質の向上を難しくしている要因となっている。
①コストダウン要求、短納期要求が厳しくなり、体系的に品質を見直す体力が組織になくなっている
②外部委託が常態化し、組織内の技術者が育たない(空洞化)、仕様を把握しきれない(ソフトウェアのブラックボックス化)
③組込みソフトウェアは急激な成長を遂げたため、マネージメント層に現在のソフトウェアの品質向上施策を打てる人材が不足している
①は、多くの開発者が開発作業に追われ、品質やプロセス改善などに優秀な人材を投入できないという問題である。ソフトウェアに対する機能要求が増す一方で、製品リードタイムは短縮され、ソフトウェア開発はボトルネックとなりつつある。開発の現場は目先のスケジュールに追われ、会社単位、組織単位での品質改善に手が回らない。
②は、ソフトウェア開発の外部委託に起因している問題である。単価の安いオフショア開発を含め外部委託は常態化し、経済産業省の調査でも71.7% もの企業が開発を外部委託している現実が明らかになっている。そのため、自社の社員の役割はスケジュール管理や要件定義が中心となり、肝心の技術力が空洞化している。メーカーから品質をコントロールできる人材が失われてしまっているのだ。
③は、現在の複雑なシステムを理解し品質を管理できる人材が、世代として不足しているという問題である。現在マネージメント層を担っているのは、組込みソフトウェアが専門化する前の世代や畑違いの部署の人間である場合多く、数百万ステップに及ぶ組込みソフトウェアの品質向上の施策を行うための経験がない。結果、「品質2倍を目指そう!」「98%の品質を目指そう!」「今日から不具合0運動を始めよう!」といった具体性のないスローガンを打ち出すのみで、品質は現場の担当者任せなのだ。また、ソフトウェアの品質と一言で言っても様々な側面がある。ただ単にプログラムバグがないソフトウェアが高品質とは限らない。やみくもに開発者を投入し、テスト項目を増加させてもソフトウェアの品質は向上しないのである。
下の図3を見ていただきたい。これは組込みソフトウェア開発の課題を開発企業の経営者および事業責任者に調査した結果である。この結果から開発期間の短縮や開発コストの削減よりも設計品質を課題と認識している人が多いことが分かる。品質はソフトウェアを開発する企業全般にわたる課題であり、待ったなしの状況なのである。
図3:組込みソフトウェア開発の課題

(出典)経済産業省および情報処理推進機構ソフトウェア・エンジニアリング・センター(PA・SEC)の「組込みソフトウェア産業実態調査」より作成
>> -05- 国際的なソフトウェア品質の定義
PDFファイルをダウンロードしてまとめて読む【ダウンロード申込】
─ Index ─
-01- はじめに
-02- ソフトウェアの不具合が企業の存続に関わる大問題に発展
-03- 製品開発費の4割超をソフトウェア開発費が占める
-04- 品質の確保を阻む開発現場の現状
-05- 国際的なソフトウェア品質の定義
-06- ソフトウェアテストの戦略的リソース配分
-07- STEP1 開発している製品の製品戦略や製品特性を元に目指すべき品質(To Be)を定義する
-08- STEP2 現在のテスト項目や工数から現状の品質(As Is)を可視化する
-09- STEP3 目指すべき品質と現状の品質のGAP からテスト項目やリソース配分を検討する
-10- まとめ