ステートマシン図の履歴状態の使い道
ステートマシン図の機能の一つに「履歴状態」(Hに○の記号)がある。
使い方をメモ。
【元ネタ】
誤解しがちなモデリングの技:第3回:ステートマシン図(I) | 豆蔵ソフト工学ラボ
状態マシン図(State Machine Diagram) - UML入門 - IT専科
第4回 シーケンス図とステートマシン図を学ぼう | Think IT(シンクイット)
誤解しがちなモデリングの技:第3回:ステートマシン図(I) | 豆蔵ソフト工学ラボでは、エアコンのステートマシン図において、履歴状態を使っている。
履歴状態を使いたい状況は、割り込みが発生した時に、基本フローから一度離れるが、元の基本フローに戻った時に、元の状態から実行したい状況をモデル化したい時だろう。
たとえば、エアコンのリモコンのボタンで冷房→暖房→除湿の順に遷移する仕組みなっている場合としよう。
除湿の状態で運転停止した後に、湿気が多いのでエアコンを再開したら、除湿の状態から再開する状況で、履歴状態を使えばいい。
ステートマシン図の履歴状態を使う場面は少ないと思うが、組込システム機器の割り込み処理やイベント駆動処理などで使えるのではないかと思う。
なお、ステートマシン図の履歴状態には2種類がある。
「浅い履歴状態」では、割り込み処理後に元の基本フローを復活する時、中断時点の状況まで再現しない。
「深い履歴状態」では、元の基本フローを復活する時に、中断時点の状況を再現して、再開される。
状態マシン図(State Machine Diagram) - UML入門 - IT専科
この辺りのモデリングは、astahのステートマシン図を使えば、より簡単に書けるだろう。
| 固定リンク
「モデリング」カテゴリの記事
- 「システム開発・刷新のためのデータモデル大全」を読み直した感想~親子頻出アンチパターンは初心者モデラーに多い(2024.08.31)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- アーキテクチャ量子の考え方はソフトウェア工学に物理学アプローチを適用したアイデアではないか(2024.02.12)
「astahによるUMLモデリング」カテゴリの記事
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- astahにタイミング図がサポートされた(2024.03.12)
- 概念モデリングや設計原則は進化しているのか(2023.10.21)
- パッケージ原則とクラス原則の違いは何なのか(2023.10.14)
コメント