家電メーカーにとって,製品の機能を左右する組込みソフトの開発は,今や大きな経営課題となった。開発規模が急拡大する中で,各社はソフトの不具合や開発遅延の回避に全力を注いでいる。製品ジャンルをまたいだ標準化や共用への取り組み,そして人材育成の方向性について解説する。

 デジタル家電の高機能化が進む中で,ソフトウエアの開発人員不足が深刻になっている。各社は国内外で要員確保に躍起だが,それでも9万人が不足しているとの試算がある。ソフトが原因の不具合も急増。このままでは今後の市場成長が制約されかねないとの危機感が強く,ソフト開発の効率化に向けた連携の動きも出てきた。

 ソフト技術者の不足が深刻化する背景には,各種デジタル機器が搭載するソフトの量が膨大になってきたことがある。プログラム数は,地銀システム並みとも言われている。そして,携帯電話端末の開発コストの7割は組込みソフトにあるとも言われている。

 デジタル家電は商品のライフサイクルが急速に短くなっており,中には高額な薄型テレビのように,特定の商戦期に年間売り上げのかなりの部分を売り切ってしまう商品もある。当然,商品開発のリードタイムも急速に短期化しており,ソフトのバグや開発遅れが原因で商品の市場投入が商戦期に間に合わなくなることは,メーカーにとって致命傷になり得る。

 しかも,デジタル家電は年間数万台の規模で市場に投入されるため,市場投入後にソフトのバグが発覚すれば,その対応にかかるコストは莫大な額になる(表1)。もともとメーカーにとって利幅が少ない商品だけに,勝ち組と言われるメーカーでさえ,たちまち赤字へ転落する可能性があるのだ。

表1●家電製品の主なソフトウエア対策
表1●家電製品の主なソフトウエア対策
[画像のクリックで拡大表示]

 最近になってこのような深刻な問題が表面化した背景には,家電メーカーの業務において,組込みソフト開発の比重が急速に増している,という事情がある。デジタル家電編の最終回となるPart3では,こうした組込みソフト開発の現状や,課題解決への取り組み,今後の方向性について解説する。

ソフトの開発規模が急拡大

 Part1で述べたように,デジタル家電は,従来アナログ技術で実現されていた機能をデジタル技術で代替し,さらに付加価値や使い勝手を向上させた商品である。テレビではアナログ放送からデジタル放送へ,携帯音楽プレーヤーではカセットテープからmp3などのデジタル・ファイルへとメディアが変遷し,それらの処理をアナログ回路ではなく,デジタルLSIとそこに組み込まれるソフトで実現するようになった。情報のデジタル化により,著作権管理やネットワーク対応など,ソフトで処理しなければならない機能も新たに加わっている。

 デジタル家電で扱う映像・画像や音声は,放送方式やデータ形式の規格が定められており,処理性能によって他社製品と差異化することは難しい。そのため各社は,主に組込みソフトで実現する機能によって差異化を図っている。これにより,ここ数年でデジタル家電の多機能化が進み,組込みソフトの開発規模は一気に拡大した。プラズマテレビの画像処理エンジンは,プログラムのステップ数が(1000万行を超える)パソコン用基本ソフトと同等とも言われている。

 1980年代の家電製品では,開発コストに占めるソフト開発の割合は5%程度だったが,最近のデジタル家電では半分程度をソフト開発が占めると言われる。製品出荷後に発生した不具合の要因についても,組込みソフトに起因するものが30%以上に達し,製品仕様やハードに起因するものを抜いて一番多い,という調査結果がある。ソフトの設計業務を改善して品質を高めることは,今や家電メーカーにとって最重点課題であると言っても過言ではない。

ハードと並行開発する難しさ

 この課題を考えるうえでは,デジタル家電に特有のソフト開発の難しさについても理解しておく必要がある。家電製品の開発では,ソフトの開発とハードの開発がほぼ同時並行で進められる。そのため,極端な言い方をすれば,ハードが完成しないとソフトを検証できないし,逆にソフトが動かないとハードの検証もできない。

 ソフトが動作するハードがあらかじめ用意されている(仕様が決められている)パソコンなどと違い,デジタル家電のソフト開発の根底には,こうした“鶏か卵か”というジレンマが存在する。

 しかし,上流の開発工程で遅れや不具合が生じると,そのしわ寄せはテスト工程に及び,製品の品質に深刻な悪影響を与えかねない。実際,商品によってはテストパターン(検証すべき機能の組み合わせ)が膨大になり,すべてのバグ検証が終わらず,見切り発車で製品を発売することさえあると言われる。

 家電メーカーはこの問題に対処するために様々な工夫をしている。まず,早い段階でソフト開発に着手できるよう,製品の基本動作を検証できるレベルのハードを先行開発してソフト開発者に提供する。また,シミュレーション技術の活用も進んでいる。家電製品の基本動作環境をパソコン上でシミュレーションする技術(例えば,米クアルコムの携帯電話向けアプリケーション開発・実行環境「BREW」のエミュレーション環境)や,FPGA(Field Programmable Gate Array)のようなプログラミング可能なLSIを使って実際の回路をシミュレーションする技術などである。

 まだ実現には至っていないものの,論理設計をすべてソフト化する「ソフト・ハード協調設計」の検討も始まっている。ただし,ソフト開発に使う言語とHDL(Hardware Description Language:ハードウエア記述言語)の違いや,対応できるハードの種類の制約など,課題も多い。