LoginSignup
1
1

More than 1 year has passed since last update.

IBM Rhapsodyでシミュレーション実行可能なシーケンス図を描く

Last updated at Posted at 2021-01-04

IBM Rhapsodyとは

IBM Rhapsodyは、UML、Systems Modeling Language(SysML)、AUTOSARをサポートするモデル駆動型開発(MDD)環境です。

概要

本記事ではRhapsodyを使ってシーケンス図を記述する手順を説明します。

前回の記事

ブロック図を描く

手順

シーケンス図の追加

前回の記事でブロック図を定義しました。
次にこれらがどのように連動するかをシーケンス図を使って表現したいと思います。
ScenarioModelingパッケージを選択し、右クリックメニューを開き、[新規追加]->[SequenceDiagram]を実行します
image.png
名前をUser Starts the Stopwatchに変更します。[OK]をクリックします。
image.png
モデル・ブラウザー上でBlockModelingパッケージ内にあるBlocksカテゴリを選択し、シーケンス図上にドロップします。
image.png
Button、Smartwatch、Timerのライフラインが生成されます。
image.png
Smartwatchライフラインは不要なため、選択しDeleteキーを押下して削除します。

システム境界線の追加

シーケンス図内をクリックし、ツールバーを表示します。[システム境界線]を選択します。
image.png
シーケンス図内をクリックするとシステム境界線が生成されます。システム境界線は、システムの外側からメッセージが送信されることを示すために利用します。
image.png
ENVライフラインを選択しツールバーを表示します。右側のイベント・メッセージを選択します。
image.png
ENVからButtonに線を引き、イベント・メッセージを生成します。
image.png
イベント名を evPress に変更します。
image.png
同様にイベント・メッセージを追加し、evReleaseとします。evPressの下に位置するように設定します。
image.png
同様の手順を続けます。Buttonライフラインを選択し、Timerに向かってイベント・メッセージを生成します。evStartStopと名称変更します。
image.png
Timerライフラインを選択し、ツールバーを開き、左側のメッセージを選択します。
image.png
Timerライフラインを選択し、自分自身に線を引くようにします。
image.png
message_0を選択した状態で、Ctrl+Spaceを押下します。下矢印キーを押下し、一覧の中からincrementTimeを選択します。incrementTimeはブロック図において定義した操作(オペレーション)です。
image.png
イベントにincrementTime操作が割り当てられました。
image.png
incrementTimeを選択し、右クリックメニューを開き、[ナビゲート]->[ブラウザー上での位置確認]を実行します。
image.png
既存のincrementTime操作にジャンプします。
image.png
次にButtonからTimerに向かって引かれているevStartStopイベント・メッセージを選択し、Ctrl+Lを押下します。これによりモデル・ブラウザー上で対応するメッセージにジャンプします。incrementTimeメッセージには既存の操作(オペレーション)が割り当てられていたのに対し、evStartStopには既存のイベントや操作が割り当てられていないことがわかります。
image.png

イベントの自動生成

シーケンス図内を選択し、右クリックメニューを開き、[すべての要素の自動実現]を実行します。
image.png
対応するイベントや操作が自動生成されます。
image.png
シーケンス図上のevStartStopを選択し、Ctrl+Lを押下するとBlockModelingパッケージ内のevStartStopイベントにジャンプします。
image.png
メインメニューから[ファイル]->[保存]を実行します。
image.png
シーケンス図の作成を完了しました。

次の記事

シミュレーション実行可能なステートチャートを描く

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1