HOME | products | LDRA | MISRA

MISRA C / MISRA C++ サポート 

Embedded Technology 2017で講演します

MISRA C:2012 は国際的に広く産業界で採用されるMISRA (Motor Industry Software Reliability Association)スタンダードの進化版。ISO 9899:1999 (C99)のサポートを追加する一方、C90のサポートも維持。コードの正当な使用あるいは振舞いを阻害しないこと・望ましくない結果を導かないことを目的に、ルールはより正確に定義され直した。ルールの精度や分類を改善し、より包括的な解釈で高い理解を得られるようにすることで、プログラマの労力を軽減して、セーフティクリティカルなアプリケーションのソフトウエアに関わるリスクを緩和する。ツールによる誤検知を削減してマニュアルレビューの工数を飛躍的に軽減できることも見逃せない。
 

・C90に加えてC99をサポート
・ルールの精度を改善(正当な使用や振舞いが阻害されない)
・Mandatory(必須)ルールを追加して、Required(必要)、Advisory(推奨)を補完
・ルールをシステムワイドと単一コンパイルユニットに区別
・決定可能・決定不可能なルールに分類
・自動生成コードに対するルール (例:オートコードのswitch文にはdefaultがあってはならない)

 
より好んでの利用へ!(ルールに従うのでは無く、、)
 
 “Although MISRA C has been used widely across the safety-critical sectors, it did tend to be something that people had to use because they were being certified. But the change in emphasis to ‘use this rule because it’s a good idea’ opens it out to people who just want software to work.”
 
LDRA 社はMISRA C:2012 プログラミングルールチェッカーとソフトウエア開発ライフサイクルを包括的にサポート


 TBvision ツールでMISRA C:2012 の決定可能(decidable)なルールを識別。また様々な決定不可能(undecidable)なルールのチェックも支援。当該コードから違反の詳細記述へのハイパーリンクなど、ユーザフレンドリーになった最新版MISRA スタンダードをサポート
 

 MISRA C:2012 では逸脱してはならない Mandatory(必須)の分類がルールに導入され、既存のRequired(必要)、Advisory(推奨)の分類を補完する。TBvision では、検出された違反ごとに分類して要約できる。
 

 TBvision や TBrules ではMISRA のスタンダードをベースに企業や開発プロジェクトごとで固有のルール集を編集できる。
 

 MISRA C:2012 で分類されたシステムワイドなルールも解析可能(単一コ ンパイユニット解析のみ対応するツールでは代替え手段が必要になる)
 

 コールグラフでプログラミングスタンダードをチェック。脆弱な箇所を特定できる。
 

 MISRA C:2012 のルール違反をコードとインラインに表示。違反箇所の特定が容易。
 
“LDRA has played an important role in the development and completion of MISRA C:2012,” commented Steve Montgomery, Chair of the MISRA C:2012 Working Group. MISRA is about collaboration and the latest version of MISRA C has benefited greatly from the involvement of all parties, including engineers across a number of sectors and disciplines. It is that expertise that will help programmers make safer use of the features of the C language.”
 

先進のコード解析能力により、TBvision は MISRA C:1998、MISRA C:2004、MISRA C:2012、MISRA C++:2008、 MISRA AC、IPA/SEC C、CERT C セキュアコーディングスタンダード など様々なコーディングスタンダードに対する準拠のチェックをサポートしています。また LDRA社は、ロッキード・マーチン社と協力して JSF++ AV スタンダードを開発し、これに加えて、Meyers Effective C++ や Effective STL coding guidelines など多くのガイドラインをサポートしています。
 
LDRA 社は高信頼性システムのソフトウエア検証ツールの第一人者として40年の実績を持ち、国際スタンダード認証支援実績No1のツールを提供する傍ら、国際スタンダードの制定にも貢献(MISRA 委員会に4名、DO-178C 委員会に6名)しています。またFAA のDER コンサルタントを擁する認証支援サービスも米国で展開しています。
 
■LDRA は、ソフトウエアテスト自動化支援ツールです。
 
 LDRA tool suite は国際スタンダード認証支援ツールとして、開発ライフサイクルの各段階における様々な検証を包括的にサポートするテスト自動化支援ツールです。要件トレーサビリティツール(TBreq)との統合により、要件・設計・モデル・ソースコード・検証(静的解析、動的解析、ユニット・システムレベルテスト)など、あらゆる開発成果物が紐付され、要件からテストに至るバイディレクショナルなトレーサビリティが支援されます。
 
 国際スタンダード認証に、要件トレーサビリティが求められるようになりましたが、70%にも及ぶプロジェクトの欠陥は要件管理とそのトレーサビリティに起因すると報告されており、ソフトウエア開発ライフサイクルに亘って要件管理をすることは、この不況下におけるコスト削減策の決定打でもあります。
 

1998年、MISRA(Motor Industry Software Reliability Association)は車載システムへのC言語の使用に対するガイドラインを発行。これはMISRAの安全レベル2、3に分類される自動車システムへの安全なCコードの利用を促進する目的で作成されました。
 
このMISRAスタンダードは自動車業界で広く受け入れられ、航空機、通信システム、医療機器、防衛、鉄道システムなど様々なドメインでベストプラクティスとして採用されるようになりました。
 
MISRA C:2004は、産業界とツールベンダの貢献により広範に改訂されました。MISRAに準拠するツールを提供する第一人者であるLDRA社は、このMISRA C:2004ガイドライン制定に貢献し、新規に追加されたルールや改訂された内容を包括する為に、ツールを拡張しました。
 

MISRA C:2004 ガイドライン準拠にLDRAツールスイートを

 
LDRAツールスイートには、MISRA C:2004準拠を自動解析するための設定があります。
 
単体・システム・統合テストなど、ソフトウェア開発サイクルを通じて一貫して解析し確認が行えるので、新規プロジェクトでも既存プロジェクトでも、開発者から管理者までスタンダードへの準拠を迅速かつ明確に行えます。
 
LDRAツールスイートによる解析で準拠しないコード領域を検出・ハイライトして、ドキュメントによる報告書作成、改善作業を支援します。広範なレポートとグラフィカルな表示により、テストの容易性、コードの可読性とメンテナンス性を、MISRA C:2004への準拠を踏まえて評価することもできます。
 
MISRA C:2004で推奨されている、テスト実行カバレッジ測定もLDRAツールスイートでサポートしています。
 
ツールは使いやすいですか?
 
ツールスイートが容易に使用できるかどうかは、導入に対する重要な課題です。そのため、MISRA C:2004への準拠をシンプルに解析できるように、LDRAツールスイートを拡張しています。また、簡潔明瞭なレポートでテストプロセスを効率化します。そのレポートはASCII、HTMLの両フォーマットで生成され、ワード形式やDTPへのエクスポートをサポートしています。HTMLフォーマットでは、MISRAルールの詳細説明へハイパーリンクされ、HTMLブラウザによるデータの共有も可能です。
 
MISRAガイドライン認証 折り紙付きの実績 
 
MISRA Cスタンダードへの準拠に、LDRAツールスイートを用いている世界的顧客事例:
 
• BAE Systems
• BAE Systems Avionics Limited
• ASTRIUM GmbH
• Bombardier Transportation (Signal)
• Fiat Avio S.p.A.
• Goodrich Sensor Systems
• Hamilton Sundstrand
• Honeywell Inc
• Intel
• Lockheed Martin
• Motorola
• MTU Aero Engines GmbH
• Northrop Grumman
• Dunlop Aerospace
• Hindustan Aeronautics Ltd
• Indian Institute of Technology Bombay
• Invensys Dimetronic Signals
• Logica UK Limited
• MBDA UK Limited
• Novo Nordisk A/S
• Penny & Giles Aerospace Limited
• QinetiQ Limited
• SENER Ingeniera Y Sistemas SA
• Smiths Aerospace
• Spider Software
• Westinghouse Brakes (UK) Limited
• Zytek Systems Limited
 
MISRA C:2004ガイドライン認証に関する詳しい情報は、LDRA reply form あるいはinfo@fuji-setsu.co.jp (国内代理店:富士設備)までお問合せください。
MISRA C:2004ガイドラインの購入などの情報は、MISRAのサイト www.misra.org.uk を参考下さい。
 
"MISRA" is a registered trademark of MIRA Ltd, held on behalf of the MISRA Consortium. Parts of this document are Copyright © The Motor Industry Research Association, 1998, 1999. No endorsement by MISRA is claimed or implied for any product.

1998年、MISRA(Motor Industry Software Reliability Association)は車載システムへのC言語の使用に対するガイドラインを発行。これはMISRAの安全レベル2、3に分類される自動車システムへの安全なCコードの利用を促進する目的で作成されました。
 
公開以来、ベストプラクティスとして自動車業界だけでなく、製品の安全性、高信頼性が求められる他の業界でも、広く採用されています。
 
MISRA-C:1998には1~127のルールがあり、そのうち93は必須、34はルールへの準拠を推奨されています。MISRA C:2004には141のルールがあり、そのうち121は必須、20はルールへの準拠を推奨され、環境やランタイムエラーに至る21の項目に分類されています。
 

MISRA C:1998 ガイドライン準拠にLDRAツールスイートを

 
LDRAツールスイートには、MISRA C:1998準拠を自動解析するための設定があります。
 
単体・システム・統合テストなど、ソフトウェア開発サイクルを通じて一貫して解析し確認が行えるので、新規プロジェクトでも既存プロジェクトでも、開発者から管理者までスタンダードへの準拠を迅速かつ明確に行えます。
 
LDRAツールスイートによる解析で準拠しないコード領域を検出・ハイライトして、ドキュメントによる報告書作成、改善作業を支援します。広範なレポートとグラフィカルな表示により、テストの容易性、コードの可読性とメンテナンス性を、MISRA C:1998ガイドラインへの準拠を踏まえて評価することもできます。
 
MISRA C:1998で推奨されている、テスト実行カバレッジ測定もLDRAツールスイートでサポートしています。
 
ツールは使いやすいですか?
 
ツールスイートが容易に使用できるかどうかは、導入に対する重要な課題です。そのため、MISRA C:1998への準拠をシンプルに解析できるように、LDRAツールスイートを拡張しています。また、簡潔明瞭なレポートでテストプロセスを効率化します。そのレポートはASCII、HTMLの両フォーマットで生成され、ワード形式やDTPへのエクスポートをサポートしています。HTMLフォーマットでは、MISRAルールの詳細説明へハイパーリンクされ、HTMLブラウザによるデータの共有も可能です。
 
MISRAガイドライン認証 折り紙付きの実績 
 
MISRA Cスタンダードへの準拠に、LDRAツールスイートを用いている世界的顧客事例:
 
• BAE Systems
• BAE Systems Avionics Limited
• ASTRIUM GmbH
• Bombardier Transportation (Signal)
• Fiat Avio S.p.A.
• Goodrich Sensor Systems
• Hamilton Sundstrand
• Honeywell Inc
• Intel
• Lockheed Martin
• Motorola
• MTU Aero Engines GmbH
• Northrop Grumman
• Dunlop Aerospace
• Hindustan Aeronautics Ltd
• Indian Institute of Technology Bombay
• Invensys Dimetronic Signals
• Logica UK Limited
• MBDA UK Limited
• Novo Nordisk A/S
• Penny & Giles Aerospace Limited
• QinetiQ Limited
• SENER Ingeniera Y Sistemas SA
• Smiths Aerospace
• Spider Software
• Westinghouse Brakes (UK) Limited
• Zytek Systems Limited
 
MISRA C:1998ガイドライン認証に関する詳しい情報は、LDRA reply form あるいはinfo@fuji-setsu.co.jp (国内代理店:富士設備)までお問合せください。
MISRA C:1998ガイドラインの購入などの情報は、MISRAのサイト www.misra.org.uk を参考下さい。
 
"MISRA" is a registered trademark of MIRA Ltd, held on behalf of the MISRA Consortium. Parts of this document are Copyright © The Motor Industry Research Association, 1998, 1999. No endorsement by MISRA is claimed or implied for any product.
 

MISRA C:2004 へのアップグレード

 
MISRA C:1998は、産業界とツールベンダの貢献により広範に改訂され、MISRA C:2004ガイドラインが制定されました。MISRAに準拠するツールを提供する第一人者であるLDRA社は、このMISRA C:2004ガイドライン制定に貢献し、それを包括する為にツールを拡張しています。MISRA C:2004ガイドラインに関しての詳しい情報は、 MISRA C:2004 のページを参考下さい。

セキュアでないコーディングの例とそのルール

CERT-C 対応で圧倒

MISRA C++ WG 議長/LDRA社 Chris Tapp 講演


MISRA C:2012 セミナー“準拠/未準拠の判定自動化を推し進める「MISRA C:2012」とは?”

コーディングスタンダードとの付き合い方:MISRA C 委員、MISRA C++:2008 のチェアマンの来日講演

セミナー2012:国際スタンダード認証に必要なテストの最新動向:IEC 61508, IEC 62304, ISO 26262, EN 50128, DO-178B, DO-178C など

セミナー2010:IEC61508、DO-178B 最新動向

セミナー2009:MISRA-C++:2008、CERT、IEC61508 MISRAメンバー来日講演

MISRA C++ WG 議長 クリス・タップ氏による
MISRA トレーニングコース