UMLシーケンス図記号とその使い方

> ソフトウェア開発-UML図 記号 > UMLシーケンス図記号とその使い方
edraw編集者
編集者: いのき | 更新日:Feb 01, 2024

プロセス指向プログラミングにおいてソフトウェア開発時に活躍するUMLシーケンス図記号とその使い方をEdrawMaxでご紹介しましょう。UMLとはソフトウェアを形式化するための統一されたモデリング言語のことを指しUMLシーケンス図とは、アクティビティ図が処理工程を順序立てる一方、処理主体となるオブジェクトやクラスがメッセージ(実装においてメソッドの呼び出し) のやり取りを記述しているものを指します。
私はUMLシーケンス図を描く時、EdrawMaxを重宝しています。もちろんPluntUMLでも書くことで、共通認識を効率的に持つことも大切ですが、誰にでもすぐに理解でき専門的な知識も必要なくグラフィカルかつ美しく描けるEdrawMaxはUMLシーケンス図を描く上でとても最適なツールです。UMLシーケンス図は詳細な反応を記述する分根気のいる作業になります。この作業を相手に説明する時、よりリラックスしたハイセンスな形で見せた方が少しでもビジネスに縁遠い「楽しさ」を提供できると考えます。
それでは具体的にUMLシーケンス図を構成する記号について基本記号ともう少し詳細な記号をご紹介し実際にPluntUMLで実装した上で、EdrawMaxでより質の高いUMLシーケンス図のテンプレートをご紹介し視覚的でかつ専門的な記述も含めることができる新たなビジネスの形をご提供いたします。

フローチャートを無料で書くならEdrawMax(エドラマックス)
プライバシー保護 | マルウェアなし | 広告なし

Part 1: UMLシーケンス図記号の意味を説明します

シーケンス図例

上図はEdrawMaxのUMLシーケンス図例です。まずは、具体的に記号の基本要素ともう少し詳細な記述方法とに分けてご紹介いたします。UMLシーケンス図では、ライフラインの生成と消滅のタイミングと相互メッセージを表します。ライフライン間の相互やり取りを記述する図なので1つのライフラインだけでUMLシーケンス図を描くことはありません。この章では要素をPluntUMLにて実装までをご紹介いたします。
基本要素はアクター、ライフライン、メッセージについてご紹介し、細かな表現としてはUMLで定義されてないエンティティ、バウンダリ、コントローラ、そして実行指定、停止、点の使い方について記号を用いてご紹介していきます。その中でも注目すべきは実行指定です。下記します図の意味にもそれぞれ説明はしていますが、アクティビティ図との違いを大きく表現しているのがこお実行指定です。この実行を指定しすることでどのライフラインが自発的にメッセージを送ったのかを知ることができるのです。それえでは図とともにそれぞれの意味をご紹介しましょう。

1.1 基本記号

記号 名称 説明
条件分岐 アクター アクター実行時のインスタンスです。 スティックマン形式、四角形での表示が可能です。
条件指定 ライフライン 実行時のオブジェクトを示します。 ボックスの中に役割:分類子を記します。 分類子にはクラスやコンポーネント名を入れます。
決して両方必須ではありません。
そしてこのボックスから下に伸びる破線が時間経過を表します。
メッセージ ライフライン間でメ関数呼び出しなどメッセージのやり取りを行う際に使います。
属性=メッセージ名(引数):戻り値という ルールに即して記しましょう。
属性、引数、戻り値は省略可で最小のメッセージは”メッセージ名()”です。メッセージを受けたライフラインはリプライを 返します。
並列処理 同期メッセージ オブジェクト間の命令を表します。
この矢印終点は応答メッセージが返ってくるまで待ちます。
ループ処理 非同期メッセージ オブジェクト間の命令を表します。
この矢印終点は応答メッセージを待たずに次の処理に移ります。
中断処理 応答メッセージ 同期メッセージまたは非同期メッセージの返却メッセージを表します。

1.2 細かな表現

記号 名称 説明
不正 エンティティ 永続的な要素を示します。具体例として、データベースのテーブルなどがあります。(以下エンティティ・バウンダリ・コントローラはUMLで定義されている要素ではありません。)
排他処理 バウンダリ 画面や入出力デバイスなどを示します。
アサーション コントローラ 処理内容を実際に担当する要素を示します。
無効 実行指定 ライフライン間のメッセージのやり取りについてどのライフラインが自発的にメッセージを送ったのかを詳細に記すためにこの実行指定が使われます。
つまり、ライフラインでこの実行指定が支持されている場合処理が実行されていることを意味します。
重要処理 停止 ライフラインの消滅を意味します。
処理が終わりライフラインを破棄する際などに使います。
重要処理 シーケンス図の範囲外からのメッセージの視点や、範囲外へのメッセージの終点に利用します。

1.3 PluntUMLにて実装

次にPluntUMLにて実装してみましょう。PluntUMLはテキスト形式でかけるので専門的な知識を比較的使わずチームなどで共有する時は非常に有効でしょう。

シーケンス図例

シーケンス図例


Part 2: EdrawMaxを使用して上記の記号を事例に説明します

シーケンス図例

このUMLシーケンス図はEdrawMaxのテンプレート例です。ビジュルも美しく常にオブジェクトサイズを決めるのに補助線を当ててくれるEdrawMaxを私は重宝しています。では上図は何を描いているのでしょう。それは色々な状況下で図として描かれる動的コンテンツを表しています。具体的には買い物かごのメッセージ、フォーム、金利の更新などこのような日常よく目にするシステム内の状況を表しているのです。
まず、Filter記号とはクライアントとサーバ間のリクエスト・レスポンス時に何らかの処理を行う機能です。ログの生成、パラメーター値の変更、フォーマット変更、フォーマット変更、認証などの処理を行います。
その後、FilterChain記号にてdoFilterメソッドによって一連の処理が実行されるので、これより前で処理を行うか後ろで処理を行うかで、クライアントからの要求と応答のどちら側でフィルタリングを行うか決定する処理を描き、そしてTarget の外部に保存されたオファーはキャッシュとして保存される状況を表現しています。EdrawMaxではこの他にもUMLシーケンズ図のテンプレートをご用意しております。


まとめ

今回はUMLシーケンス図記号とその使い方をご紹介しました。メソッドの呼び出しがある分より具体的で詳細に描かれます。この根気のいる作業を少しでもリラックスして表現できるEdrawMaxを私は重宝しています。視覚的にクリック&ドロップで作業しやすく、テンプレートも豊富にあります。PluntUMLという統一された規格を用いて図を共有するのも効率的ではありますが、自分の型や自分のビジネスを本来ITが持っている自由で開放的であることを思い出させてくれます。また、オブジェクトの大きさを均等にラインを等間隔に配置できる補助ラインもお気に入りの理由です。より視覚的にハイセンスな上、専門的な記述ができるEdrawMaxをあなたのビジネスのお供にいかがでしょうか。まずは、無料版のEdrawMaxをお試しください。

フローチャートを無料で書くならEdrawMax(エドラマックス)

Edraw Max -- All In One の作図ツール
  • 豊富なテンプレートと図形
  • 様々なファイル形式に対応
  • フローチャート、マインドマップ、組織図などを作成
  • Officeライクの操作感覚 初心者もすぐ使える
1