第24回 ソフトウェア試験の国際標準規格ISO/IEC/IEEE 29119 vol.1 ~今なぜ必要なのか?この規格の生い立ち~
全ての電子機器がソフトウェアでコントロールされていることはご承知のことと思います。そのソフトウェアの品質については、前回までお話ししてきました。そうしたところ、このコラムを読んだ読者の方から「品質の重要性は理解したがもっと具体的にソフトウェア品質を上げる方法はなのか?」と質問を受けました。そこで今回からソフトウェア試験に関する国際規格についてお話しさせて頂きます。
国際標準規格ISO/IEC/IEEE 29119とは?
ソフトウェア試験の国際標準規格は(ISO/IEC/IEEE 29119)は、業界では29119シリーズと言われています。この規格は、JTC1-SC7-WG26という国際委員会で2013年に作成されリリースされました。とても特殊な規格で、これまでバラバラに定義されていたソフトウェア試験を、ISO/IECだけでなくIEEEを巻き込んで作成されています。詳しく解説すると、ISO(the International Organization for Standardization 国際標準化機構)とIEC(the International Electrotechnical Commission 国際電気標準会議)は、世界的な標準化のための専門機関です。また、IEEE 標準文書は,IEEEソサイエティおよびIEEE標準化協会(IEEE-SA)標準化委員会の標準調整委員会内で開発されています。IEEEは,米国規格協会の認可を得た、合意開発プロセスを通じて標準を開発しています。ISO/EC/IEEE 29119シリーズはこの二つの国際的機関が合同で作成した標準規格です。簡単に言うと、ヨーロッパとアメリカが合同で作成した規格ということです。規格は、それぞれの国の思惑があり製品開発で優位に立つために利用されることがままあります。以前に書いた携帯電話の通信方法や電気自動車の充電規格などが良い事例です。それが、ソフトウェア試験に関しては全世界共通の標準規格を発行したということが重要です。
例えば、ISO 26262という自動車の電気/電子に関する機能安全についての国際規格があります。自動車は、輸出する際にはこの機能安全の規格に準拠していることを証明しなければなりません。従来は自動車会社が独自に試験を行い、規格に準拠していることを証明してきました。現在の自動車の機能の多くは、ソフトウェアによってコントロールされています。従ってその証明は、ソフトウェアの品質に問題が無いことの証明になります。その場合、ソフトウェア試験を「どのように行ったかということ」、「その結果問題はなかったという事実」を積み上げるのですが、今後はこの29119に準拠したソフトウェア試験が行われていることが前提での評価となる可能性があります。
自動車に限らず、すべてのシステム製品に搭載されているソフトウェアの試験は国際規格がリリースされて事実から推定すると、より厳しく高品質が求められてくると思います。
この規格の特徴について
この規格の特徴のもう一つが、規格としての要求事項の定義だけでなく、付属書として具体的な事例やサンプルを提示していることです。一般的な規格は概念と用語および定義、要求事項などで解説や付属書がついても30ページ程度です。それが29119の場合1部から5部までのシリーズとなり、1~2部は約60ページで3部は約120ページという膨大な規格となっています。現在リリースされているのは5部までですが、今後複数のISやTRが発行されると思います。内容の構成は1部「概念と定義」2部「試験プロセス」3部「試験文書」4部「テスト技法」5部「キーワード駆動テスト」となっています。キーワード駆動テストは、テストの自動化につながる概念を解説しています。テストの自動化はこれから積極的に取り入れられる技術であり、当社でも数年前から研究しているテーマです。
何話まで続くかわかりませんが、このコラムへのお付き合いいただけますと幸いです。