PR
図1  組み込みソフトウェア開発企業が開発している応用カテゴリ<BR>出典:経済産業省,『2005年版組込みソフトウェア産業実態調査』
図1 組み込みソフトウェア開発企業が開発している応用カテゴリ<BR>出典:経済産業省,『2005年版組込みソフトウェア産業実態調査』
[画像のクリックで拡大表示]
図2  製品の開発費に占めるソフトの割合&lt;BR&gt;平均で約4割と読み取れる。出典:経済産業省,『2005年版組込みソフトウェア産業実態調査』
図2 製品の開発費に占めるソフトの割合<BR>平均で約4割と読み取れる。出典:経済産業省,『2005年版組込みソフトウェア産業実態調査』
[画像のクリックで拡大表示]
図3  JASPAR内に設けられた七つワーキング・グループ
図3 JASPAR内に設けられた七つワーキング・グループ
[画像のクリックで拡大表示]

 最終回となる今回は,本欄の総括として組み込みソフトウェア開発がおかれた現状と問題点,打開に向けた動きを紹介したい。2005年4月から始まった連載と重なる部分もあるが,総まとめとして読んでいただきたい。

 「かつて自動車はエンジンで動いていたが,今動かしているのはソフトウェアだ」。筆者の上司がよく口にする言葉である。自動車だけではなく我々は現在,さまざまな組み込みソフトウェアに囲まれて暮らしている。

 これらのソフトウェアを実際に意識することはあまりないが(意識するときは,故障が起こった場合など,ろくでもないことが多い),経済産業省の調査ではメーカーが開発する機器のほぼ94%が組み込みシステムを搭載している。エアコン,電子レンジ,テレビ,ビデオといった家電から携帯電話,オフィスのコピー機,ビルのエレベータ,自動改札,病院での医療機器などにいたるまで,組み込みソフトウェアを搭載した製品を挙げたらキリがない(図1[拡大表示])。

 組み込みソフトウェアの歴史は,4ビットのマイクロプロセッサ「4004」が誕生した1970年代初めに端を発する。4004は電卓に向けたチップであり,マイクロプロセッサはそもそも組み込みを前提にした製品だった。その後は,4ビットから8ビット,16ビット,32ビット,64ビットへとアーキテクチャを拡大し,性能向上を果たしていった。

 性能向上につれてマイクロプロセッサの応用範囲はぐんと広がった。組み込み分野に関して言えば,従来ならメカニカルな機構で実現していた機械制御から,ソフトウェアによる制御へと多くの製品でシフトしていった。いまやソフトウェアが,製品開発のコストの40%を占めるまでになっている(図2[拡大表示])。「エンジンを動かしているのはソフトウェア」となった訳だ。

組み込みソフトの五つの課題

 しかし組み込みソフトウェア開発には,いくつかの課題がある。この課題を乗り越えなければ,所望の機能・性能を実現する組み込みソフトウェアにはなり得ない。以下では五つの課題について取り上げる。

 まず最初が,所定の時間以内に処理を必ず終える「リアルタイム性」である。例えば自動車のブレーキやエアバックの制御だと,所望の時間内に反応しないと人命にかかわる。ただしコスト増につながるため,必要以上のリアルタイム性は必要ない。制御対象ごとに適したリアルタイム性が求められる。

 2番目が「リソース制約」である。多くの民生機器では,コストが重視される。価格が高かったり発熱が大きい高速のマイクロプロセッサは使いづらいし,メモリー容量もできるだけ削りたい。つまり,ギリギリのリソース(性能と容量)で所望の機能と性能を実現するのがよい組み込みソフトウェアとなる。

 第3と第4は,最近になってともに重要視されるようになった「ユーザビリティ」と「セキュリティ」である。組み込み機器の機能は実に多彩になっている。しかし機能がどれだけ豊富でも,使われなければ意味がないし,誤った使用は避けなければならない。誰にでも間違いなく使える視認性や操作性といったユーザビリティが求められる。

 インターネットなどへのネット接続機能を備えたデジタル家電や携帯電話などの組み込み機器の増加に伴ってクローズアップされているのが,セキュリティである。ウイルス(ワーム)への感染やハッキングへの対策が,パソコンだけではなく組み込み機器でも必要になってきた。

 最後が高信頼性である。組み込み機器に不具合(バグ)があった場合,製品を回収しなければならないこともある。当然だが多額のコストがかかるし,社会的な信用が失墜する。責任問題も起こってくる。自動車や医療機器などでは人命に直接かかわり,高信頼性は組み込みソフトウェア開発において欠くことのできない要件である。

自動車業界が立ち上がった

 こうした問題への対応は一つの企業では手に余ることもあり,産学間や企業間の垣根を越えた取り組みがなされている。ここでは最近話題の自動車関係と,高齢化社会やユーザー層の拡大に伴って重要性の高まっているユーザビリティに関して,いくつかの活動を紹介する。

 自動車分野では,トヨタ自動車,日産自動車,本田技術研究所といった有力企業が幹事として名を連ねる「JasPar(Japan Automotive Software Platform Architecture)」が挙げられる。自動車1台に搭載するECU(電子制御ユニット)の数は急増しており,これに向けたソフトウェア開発の工数もうなぎ上りになっている。いまや全工数の80 %以上を占めるといわれる。

 こうした現状に対応するためにJasParは,ソフトウェアの再利用性とECUの相互接続性の向上を図る活動を行っている。具体的には,車載LANの要素技術,ミドルウェア,ソフトウェア基盤といった非競争領域を,日本メーカー各社で協調して開発中である。現在,車載LAN,ソフト,知的財産権など,七つのワーキング・グループを立ち上げている(図3[拡大表示])。

 自動車用ソフトウェアの信頼性向上の取り組みでは「MISRA-C」が知られる。これは,欧州の自動車業界が中心になって組織した非営利団体MISRA(Motor Industry Software Reliability Association)が作成したC言語の利用ガイドラインである。SESSAME(組込みソフトウェア管理者・技術者育成研究会)がワーキンググループとしてMISRA-C研究会を置き,解説書を出すなど,現場におけるMISRA-Cの普及促進を図っている。

 ユーザビリティの高い機械/システムに関する研究開発を産学協同で手がけているのが,HCD-Net(人間中心設計推進機構)である。ここでいう人間中心設計とは,使う人間の立場や視点に立って設計を行うことを指す。HCD-Netでは,「人間中心設計」の理念に基づき,組み込み分野にユーザビリティを導入する手法の検討やツールの開発,人材育成などを活動の中心に置いている。

 今後,機器の電子制御化や情報端末化がさらに進むことは間違いない。組み込みソフトウェアの開発現場が背負う課題はどんどん重くなる。産学官の英知を集めた,さらには国境をも越えた活動の成果が期待されるところである。