![]()
このホワイトペーパーでは、コードカバレッジとは何か、何をするのかを説明します。また、セーフティクリティカルなソフトウェアの認証を取得するために、各種の業界標準がどういった理由で、どの程度のコードカバレッジを要求しているのか解説します。
解説している内容:
機能安全要件は、自動車、鉄道、ファクトリーオートメーション、医療など、あらゆる業界でますます重要視されています。認証を取得するためには、規格ごとに定められたコードカバレッジのレベルを達成する必要があります。その要件は各規格ごとに異なります。
(道路交通の機能安全)

(鉄道用ソフトウェアアプリケーション)
![]()
(電気・電子安全関連システム)


ラインカバレッジ
ステートメントカバレッジ
判断(分岐)範囲
Modified condition/decision coverage (MC/DC)
マルチコンディション対応
ツール資格認定キット
デジタル体験は、iPhoneやNestサーモスタットと同じくらい簡単で美しいものであるべきです。また、ユーザーはこれらの製品が安心して使えることを期待しています。美しさと安全性、この2つの消費者の期待に応えるために、プロダクトデザイナーは何をすればいいのでしょうか。原子力発電所や潜水艦のように、デジタル体験に加えアナログなシステムをデザインすることで、安全性をカバーする必要があるのでしょうか?それとも、これらの製品には、スマートフォンのような3Dユーザー体験と、初歩的な情報を表示するための2つの分離型プロセッシング・ユニットが必要なのでしょうか?このブログ記事でその答えを見つけてください。
貴社ではテストを十分実施していると感じていますか?このよくある質問に回答するのは、なかなか難しいものです。コードカバレッジの測定、つまり、テストされるコードの割合が非常に強力な指標となります。このような分析は、セーフティクリティカルなソフトウェアの認証に必要な要件となるケースがあります。本講演では、C++やQMLのソースコードからテストされていない部分を発見する方法について学びます。Decision CoverageやMC/DCのような異なるカバレッジレベルを説明し、比較します。また、テストされていない部分がある場合に備え、手動で検証を行う手法とパッチ解析のためのツールもご紹介します。