ISO26262 Part.6 ソフトウェア開発(手法):自動車分野の機能安全規格「ISO26262」とは何か?(5)(2/2 ページ)
自動車分野向けの機能安全規格「ISO26262」。今回は、「ISO26262 Part.6 ソフトウェア」における“手法”にフォーカスし、車載系での採用事例が多い形式手法「SDL」について詳しく紹介する。
プロセス図(状態マシン図)
SDLのプロセス図では、実際に動作する状態遷移モデルを記述していきます。記述方法は、フローチャートに似た形式を使いますが、事前状態でイベントを受信するところから、開始する点がフローチャートとは異なります。また、処理の途中でイベントを送信することや、処理が終了した際には事後状態に遷移していく点が異なります。
SDLのプロセス図だけでは、状態遷移モデルの全体的な動きが分からないため、通常の状態遷移図と併用することが多くなります(ツールによっては、通常の状態遷移図を自動生成する機能があります)。
プロセス図は、他の形式手法やUML 1.xと比べてフローチャートに似ていることから、開発者が比較的使いやすい図になります。
プロセス図を具体的にしていく場合には、プロセス図特有の代入「:=」、変数型、配列型などは覚える必要がありますが、プログラミング言語を習得されている場合は、容易に覚えられるものとなります。
プロシージャ図
SDLのプロシージャ図では、プロセス図から実行されるサブモジュールを定義していくことになります。主に「共通モジュール」として定義されますが、プロセス図の処理フローが長くなった場合に、処理フローを短くするために使用することもあります。
プロシージャ図には、「開始」「処理」「終了」を記載していくことになりますが、処理としてプロセス図と同様にイベントや状態を定義することもできるのが特徴となります。
プロセス図の中で同じような状態遷移を行う場合には、プロシージャ図としてまとめてしまうのも1つの使い方となります。
SDLの保存形式と形式検証
SDLは、「SDL-GR」と「SDL-PR」という2種類の保存形式があります。SDL-GRがモデルベース開発に使われる保存形式となり、このSDL-GRからモデル情報を削除することでSDL-PRが出来上がります。
SDL-PRで保存した場合は、「UPPAAL」「KRONOS」「CADP」「SPIN」などで形式検証を実施する変換ツールを利用できます。
- SDL形式検証変換ツール(英語)
http://www-i2.informatik.rwth-aachen.de/Research/MCS/SDL/index.html
また、SDLツールによっては、「LTL」など形式検証用の用語を覚えなくても形式検証を実施できるものもあります(形式検証の専門家以外でも簡単に形式検証を実施できる)。
形式検証を実施することで、数学的にテストケースを削減することができるとともに、シミュレーションするよりも高速で、多くのテストケースを実施できるようになります。これによって、テストのヌケ・モレがなくなり、どのような動作をしても不具合が発生しないシステム、つまり“バグのないシステム”を作ることができるようになるのです。
とはいえ、テストケースの数が兆や京になりますと、形式検証を実施しても時間をかけないと検証し切れなくなる場合がありますので、抽象度を変えながら形式検証を実施していくことが重要となります。
このように、SDLは、フローチャートに似ているため、コーディングレベルの記述が必要な他の形式手法と比べると、なじみやすい形式手法といえます。また、モデルベース開発でもあるため、レビューもしやすく、状態遷移モデルの記載にも適しているなどさまざまなメリットがあります。
UML 2.xシリーズのツールでは、SDLを記載できるツールもあるため、試しにSDLでモデルベース開発&形式手法をはじめてみるのもいいと思います。また、車載システムがCANやLINによってさまざまな通信を行うようになった現在、通信系ベースのSDLを採用して、開発をしてみると開発効率が向上するとともに、ISO26262への適用も容易になります。
最後になりましたが、本連載が正式発行されたばかりのISO26262規格の理解に少しでも役立てば幸いです。読者の皆さん、全5回の連載にお付き合いいただき、誠にありがとうございました。(連載完)
筆者紹介
河野喜一(こうのよしかず)
NEC コンサルティング事業部
(http://www.nec.co.jp/service/consult/vision/softconsul/safety_05.html)
産業機器開発、通信機器開発、ALMベンダー、組み込みコンサルを経て、現職。専門分野は、開発者の視点による開発プロセス改革(管理面、開発面)、規格適用コンサル。現在、組み込み開発の開発プロセス改革、ISO26262適用コンサルに従事。
Copyright © ITmedia, Inc. All Rights Reserved.