IPA/SECは、組み込みソフトウェアの開発の現状を定量的に捉えることを目的とし「組み込みソフトウェア開発データ白書2017」を発行した。同白書によると、強いリアルタイム性を要求されるソフト開発は生産性が低い傾向があるとしている。
情報処理推進機構 技術本部 ソフトウェア高信頼化センター(IPA/SEC)は2017年11月15日、「組み込みソフトウェア開発データ白書2017」を発行した。2017年11月15〜17日にパシフィコ横浜(横浜市)で開催されている組み込み関連技術の展示会「Embedded Technology 2017(ET2017)」とIoT(モノのインターネット)関連技術の展示会「IoT Technology 2017」において、同白書による調査内容をアピールしている。
「組み込みソフトウェア開発データ白書」の発行の狙いについて、IPA/SEC システムグループ 研究員の松田充弘氏は「エンタープライズソフトウェアの開発環境や課題などは以前から定量的な調査が行われ、そのデータによってさまざまな対策などがとられてきたが、組み込みソフトウェア開発の現場ではそういう定量的な調査資料がほとんど存在していなかった。しかし、現場の人材不足が進む一方で、IoTなどで求められるソフトウェア量が増え、さらに複雑性も増す中で、全体的に体系立てた総括が求められ、それに応じた対策が必要になってきていた」と述べる。
これらの狙いから、2013年から調査を開始して、2015年に第1回の「組み込みソフトウェア開発データ白書」を発行。今回の「組み込みソフトウェア開発データ白書2017」は2回目の発行となる。「今後は2年ごとの発行を進めていく」(松田氏)。
2015年度の「組み込みソフトウェア開発データ白書」についてはサンプル数が少なく、有効な情報分析が難しかったが、今回は416件のサンプルを集め「ある程度傾向が見えるようになった」と松田氏は語る。
その調査で見えてきたのが「製品特性の違いによる生産性・信頼性指標の傾向が変わる」という点である。
「組み込みソフトウェア開発データ白書」では、主に生産性と信頼性について調査を実施。これらの指標に対し、以下の8つの項目において相関関係などを調べた。
これらの中で特に関連性が見られたのが「リアルタイム性」と「自然環境からの影響度合い」である。
ある命令に対して瞬時に反応することが求められる「リアルタイム性」の強い製品と、それ以外の製品では、生産性に違いがあることが分かった。この要因として、リアルタイム性の強い製品では全体工数のうち5割が結合・総合テストに費やされているのに対し、リアルタイム性を気にしなくてよい製品の場合は3割強にとどまるという点があるという。
松本氏は「リアルタイム性を要求される環境では、優先度などを明確化し、遅延などを抑えるために各ソフトウェアコンポーネント間のすり合わせも含めて、さまざまな工夫を盛り込んでいる。これらのテストに対する工数が大きな違いとして存在することが分かった」と理由について述べている。
「自然環境からの影響度合い」とは、自動車など屋外で使う製品と家電など屋内で使う製品との差である。
分析の結果、自然環境から影響度合いが大きい製品に組み込まれるソフトウェアは、影響度合いの小さいソフトウェアに対し、総合テストに費やす工数が2倍近くになるというデータが得られたという。
さらに、屋外で使用されるような自然環境の影響を受ける組み込みシステムは、生産性が下がる傾向も明らかだという。屋内で利用する製品では、総合テストで検出される問題が少ないが、屋外で利用する製品の場合、実環境で行う総合テストでなければ発見できない問題があることが要因だとする。
松田氏は「常に変動する自然環境を開発環境で全て想定するのは非常に難しい。そのため総合テストの工数が非常に多くなり、さらにそこで初めて発見するバグが多くなるという形となっている」と述べている。
松田氏は「生産性や信頼性の良い・悪いではなく、製品ごとの傾向を把握することが重要だ。今後複雑化する開発環境を改善していくためには、さまざまなデータが重要になる。『組み込みソフトウェア開発データ白書』を切り口とし、さまざまな開発環境の改善や教育などを進めていけるようにしたい」と今後の抱負を語っている。
Copyright © ITmedia, Inc. All Rights Reserved.