skillup

技術ブログ

アーキテクト設計全般

ステートパターンについて

投稿日:

トランザクション系のデータの場合、スタータスの遷移がキーになることが多く、仕様の把握に関してこの部分の理解が重要です。

今まで、ステータスの遷移に関してはExcelを使って表現していたことが多かったのですが、ステートマシーン:StatusMachine(あるいはステートパターンと呼ぶこともあるようです。)と言うデザインパターンがあり、簡単に言いますとステータスの遷移や関わり方をUML上で表現したものになります。

10.ステートマシン

19.State パターン

利点としては以下のような点でしょうか。

  • 状態の遷移が画面上でわかる
  • Excelでは表現が難しい複数方向の遷移など立体的な情報を表現できる
  • 遷移時の条件などを追加させることができる

UML自体、仕事のための仕事のようなイメージがあり、実装が先行するような現場ではあまり使われることはなかったのですが、熟練の方が先日使われたのをみていて、これは今までのプロジェクトでもぜひあったらよかった!と思ったものでした。

UMLの中でもシーケンス図とこのステートマシーンはメリットが大きいかと思います。

-アーキテクト設計全般

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

オブジェクト指向 ドメインモデル

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。 本日は主にドメインモデルの考え方について。 Contents1 ドメインモデルの考え方1.1 要点1.2 感想 ドメインモデルの考え …

no image

アプリケーション間のデータの連携方法に関して

以前やった「現場で役立つシステム設計の原則」を再読してます。 今、読んでいるのはアプリ間のデータ連携に関して。 複数のアプリ間でデータをやり取りする場合、以下のような方法が考えられます。 ファイルを直 …

no image

オブジェクト指向 値オブジェクトの活用と場合分けに関して

オブジェクト指向 その1 オブジェクト指向 その2 オブジェクト指向 その3 でオブジェクト指向に触れたんですが、基本から勉強しなおす必要があると思い、まとめ&追記 参考文献 現場で役に立つシステム設 …

no image

アプリケーションアーキテクチャについて 〜ドメインモデルに関して〜

前回のトランザクションスクリプトパターンの反省から 今回はいわゆるドメインモデルの具体例に関して。 ドメイン駆動型設計には以下のような特徴があります。 大きく、アプリケーションの構成を以下のように分け …

no image

HTTPリクエストの分類について(POST、PUT、PATCT)

HTTPリクエストの分類(主に更新系のもの)について。 Contents1 POST2 PUT3 PATCH POST 更新系の代表的なHTTPリクエストですね。 通常はデータの取得=GET、更新=P …

アーカイブ