Pulse

英MISRAのC++新ガイドライン、
信頼性/機能安全性への対応を強化

[2008年08月号]

この記事を :  印刷する プリントする ブックマーク  はてなブックマークに登録 この記事をクリップ! Buzzurlにブックマーク Yahoo!ブックマークに登録 メールで送る メールで送る
 組込みソフトウェア管理者・技術者育成研究会(SESSAME)、東海大学専門職大学院組込み技術研究科、東陽テクニカは2008年6月、都内で『MISRA C++ガイドラインの概要および最新プログラミング紹介セミナー』を開催した。同セミナーに合わせて、C言語のソフトウエア開発ガイドライン「MISRA C」で知られる英国の共同研究組織「MISRA(motor industry software reliability association)」のメンバーが来日。2008年6月5日に発表されたC++のガイドライン「MISRA C++:2008」と、電気/電子分野における機能安全規格のIEC 61508や自動車分野の機能安全規格であるISO 26262などに対応するための安全性解析ガイドライン「MISRA SA」について解説した。

写真1 MISRAリーダーのDavid Ward氏
写真1 MISRAリーダーのDavid Ward氏
 
写真2 MISRAの安全性解析委員長を務めるRoger Rivett氏
写真2 MISRAの安全性解析委員長を務めるRoger Rivett氏

 来日したのは、MISRAのリーダーを務めるDavid D Ward氏(写真1)と、MISRAで安全性解析(safety analysis)の委員長を務める英Jaguar Land Rover社機能安全スペシャリストのRoger S Rivett氏(写真2)。セミナーでは、Ward氏がMISRA C++とMISRA SAの概要を、Rivett氏がMISRA SAと機能安全規格との対応について解説した。

 Ward氏は「防衛関連、ジェット機のエンジン、医療システム、原子力施設など、信頼性を必要とする分野の組み込みシステム開発に、オブジェクト指向言語であるC++を利用する事例が増えている。MISRAは、自動車業界向けのソフトウエア開発ガイドラインの策定を目的に発足した。最近では、欧州の自動車業界もC++を使った組み込みシステム開発に注目するようになっており、2005年にMISRA C++に関する作業部会を設置することになった」と語った。

 MISRA C++:2008は、高い信頼性を必要とするシステム(critical system)での利用に最適なC++のサブセットである。C言語のガイドラインであるMISRA Cをベースに、非組み込み分野向けを含めてすでに複数存在しているC++のガイドラインの重要な要素を1つの文書としてまとめた。「MISRA Cでは、言語仕様に由来する問題を未規定、未定義、処理系依存の3種類に分類していたが、C++ではコンパイラがエラーと見なさないものなども含めて5種類に分類を増やした」(Ward氏)という。それにより、ルールの総数は、MISRA Cの最新バージョン「MISRA C:2004」における142から、今回のMISRA C++では228にまで増えた。現状のMISRA C++は、信頼性を確保する上で、本来カバーすべき事柄の50%程度にしか対応できておらず、また、ライブラリに関するドキュメントの整備が不十分といった問題がある。今後は、C++の標準仕様を定めるISO/IEC 14882の次バージョン発表時期に合わせて、こうした問題解決に当たるという。

 セミナーでは、日本国内での対応として、SESSAME内に「MISRA C++研究会」を発足させて、MISRA C++:2008の翻訳と出版、C++ガイドラインの研究と教育、C++を利用した開発におけるリスクの評価などの活動を進めていくことも明らかにされた。

 MISRA SAについては、「機能安全規格のIEC 61508は、もともと工場のプロセス制御機器を対象に策定されたもので、量産規模の大きい自動車に当てはめるのには適していなかった。例えば、工場の制御機器の場合、製品を開発してから工場に導入した後に安全性に関する最終的な評価を下す。それに対し、自動車の場合は、市場に製品として投入する前に安全性の評価を完了している必要がある。そこで、自動車業界向けの安全性解析ガイドラインの策定を1998年に開始し、2007年11月に完成させた」とWard氏は語る。

 MISRA SAでは、安全性解析を予備的(preliminary)プロセスと詳細(detail)プロセスの2段階に分けて行う。また、起こり得る危険を分類する「MISRAリスクグラフ」も策定した。同グラフは、ドライバーが制御にかかわる場合と、かかわらない場合とに分けているところに特徴がある。Ward氏は、「ドライバーの有無で分けるというのは自動車業界に合わせたものだが、このMISRA SAの手順を利用すれば業界別に最適なリスクグラフを作成できるだろう」と説明する。

 一方、Rivett氏は、MISRA SAとISO 26262の関係について説明した。同氏によれば、「ISO 26262は2005年から策定が始まった規格で、正式リリースは2010年ごろを予定している。製品開発から安全プロセスまでをカバーする350ページ以上の文書となる見込みだ」という。その上で、「ISO 26262では要求(requirement)だけが定められており、実装方法についての説明がない」という問題点を指摘。それに対し、MISRA SAは「リスク評価と安全認証をカバーする100ページの文書であり、要求を実現するプロセスのガイドラインを示している。MISRAに参加する技術者が、機能安全管理を実践的に行えるようにすることを第一に考えて作成したものだ」(Rivett氏)という。

(朴 尚洙)



この記事を :  印刷する プリントする ブックマーク  はてなブックマークに登録 この記事をクリップ! Buzzurlにブックマーク Yahoo!ブックマークに登録 メールで送る メールで送る

Sponsor Links

Partner Solutions

EDN RESOURCE CENTER


新着ホワイトペーパー情報




アナログ・デバイセズ - 22件
インターナショナル・レクティファイアー・ジャパン - 1件
ナショナル セミコンダクター ジャパン - 9件
リニアテクノロジー - 15件
日本アルテラ - 4件
リード・ビジネス・インフォメーション - 1件

このカテゴリーの他の記事