分析したモデルが意図通りか確認しよう

分析したモデルが意図通りか確認しよう

もちろんモデルを使って分析/設計を行うだけでも十分効果的です。しかし、世の中には記述したモデルを実際に動かすことができるツールもあ ります。今回は、モデル駆動型組込みシステムソフトウェア開発のモデリングツール「Telelogic Rhapsody」を使ってモデルを作りました。このツールはモデルを実際に動かして動的検証することが可能なツールです。

ここで、これまで説明してきたハイブリッドカーのモデルを動かしてみたいと思います。なお、誌面の関係でモデルを限定的に説明してきましたが、実際のモデルは動かすために他にも記述があります。



図3:モデリングツール「Telelogic Rhapsody」でモデルを動かすと…
 

動画でわかるガソリンとバッテリが切り替えのモデル

今回は特にバッテリ制御の動きに着目してみたいと思います。図3の動画の中のアクティビティ図の中でピンク色の枠になっているものが現在のアクションです。黄土色の枠になっているものが1つ前のアクションです。

また、同時にモデル制御用の簡単なHTMLも作成しました。ボタンを押すと、「エンジンOff → エンジンOn → 緩やかな加速 → 緩やかな減速 → 停止 → 激しい加速 → 緩やかな加速 → 激しい減速 → 停止 → エンジンOff」の順番に車を操作していきます。

これらのシナリオがバッテリ良好の状態とバッテリが低下している状態で2回流れます。HTMLには他にも車の画像があります。車の後部にあ るのがバッテリ、中部にあるのがガソリンエンジンです。車の中を矢印が流れていきます。これがエネルギーの流れになります。動画を見ると車の状態やバッテ リの状態に応じてアクティビティ図の流れが変わるのがよくわかると思います。

今回、ハイブリッドカーを例にしましたが、複雑で大きなシステムでは、まずSysMLなどを使って抽象度の高いところからモデル(「第1回:これがハイブリッドカーのモデリングだ!」参照)を作っていくことが肝心です。その後、今回説明したように順を追って細かな部品にばらしていきます。

モデルを使用することで曖昧さも低減されますし、動的検証を利用可能なツールを使用すれば実装前に間違いに気付くこともできます。モデルを使って分析/設計を行っていくことは難しくないといことを少しはご理解いただけましたでしょうか?

第1回、第2回はSysMLを使ったシステムエンジニアリングモデルについて紹介しました。第3回、第4回では、UMLを使ったソフトウェアエンジニアリングについてお話したいと思います。

なお、記事中にてご紹介しているモデル表記、動画などは、テレロジック社のモデル駆動型組込み開発環境の「Telelogic Rhapsody(ラプソディ)」を利用しています。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30