ソリューション
ソフトウェア
その他・お知らせ
本文までスキップする

認証取得済みコード生成機能を核とした、組み込みソフトウェアのモデルベース開発環境「Ansys SCADE」 のご紹介(その2)

皆さま、こんにちは。

IDAJの小川です。

 

前回から続き、今日は、SCADEを用いたソフトウェア開発プロセスについてご紹介します。

 

以下は、よく見られるソフトウェア開発のVプロセスです。

SCADEを適用した場合は、ソフトウェアアーキテクチャ設計からコーディングまでが対応します。

 

①モデルを用いてソフトウェアのアーキテクチャや振る舞いを定義します。

②作成したモデルを動かしてシミュレーションを実行し、ソフトウェアの振る舞いが意図通りであることを確認します。これによって、コード完成後でないと取りかかれなかったテストの多くをモデル上で行えることになります。

③テスト後はコード生成をします。SCADEのコード生成機能はモデルと生成コードの一致性をツール側が保証しますので、モデルと生成コード間の一貫性を検証するBack to Backテストは不要です。

 

 

これまでに度々、モデルと生成コードの振る舞いの一致性が保証されているとご説明してきましたが、なぜこれが重要なのかといいますと、ソフトウェア開発プロセスそのものが、全く異なったものになるからです。

以下の図の左がSCADEを用いたプロセスで、右がSCADE以外のツールを用いたプロセスです。

ソフトウェア要件をもとにモデルを構築し、要件とモデルが一致していることの確認としてシミュレーションやカバレッジ解析を実施します。ここまでは、どのツールを使用しても同じです。

ここから先が異なります。

モデルと生成コード間の振る舞いの一致性を主張する場合には、SCADE以外のツールでは、ツールがそれを保証していないため、開発者による確認のためのテスト“Back to Backテスト”が必要です。

このように、使用するツールによって、同じMBDと言っても開発プロセスが大きく違ってきます。

 

 

ここで、実際のソフトウェア開発の流れを簡単にご紹介します。

 

まず、ソフトウェアアーキテクチャを含むシステム全体の構成をSysMLを用いて設計します。そして、設計結果をSCADE Suiteへ同期させます。

そうすると、SysMLからBlockとポートの情報が渡されます。Blockがコード生成時にC言語の関数となり、ソフトウェアの具体的な演算や振る舞いをモデルを用いて描きます。

これは、SCADE モデルの特徴なのですが、状態遷移系とデータフロー系を混在させたモデル化が可能です。

 

 

ソフトウェアモデルが完成したら、シミュレーションを用いて、モデルが要件を満たしていることを確認します。シミュレーション実行前には必ずモデルに対してチェック(セマンティックチェック)が走りますので、例えば、型のミスマッチなどはこの時点で発見することができます。また、テストを円滑に進めるために、テスト用のパネルを簡単に作成することも可能です。

MBDではモデルレベルの検証に集中し、生成コードに対する検証はできるだけ省略するようにしたいものです。

 

 

次回に続きます。

追記・更新:2021年5月11日

■Ansys SCADEの新規・追加のご契約やお見積もりはこちらまで

株式会社 IDAJ 営業部

E-mail:info@idaj.co.jp

TEL: 045-683-1990