ログイン

シーケンス図チュートリアル

20分

シーケンス図は、併存するライフライン、プロセスやオブジェクトに加え、これらの間でライフライン終了までの間に機能実行のため交わされるメッセージに特に主眼を置いた図で、UML で人気の動的モデリングソリューションです。Lucidchart の UML 作図ツールと併せて、UML シーケンス図について知っておきたいことすべてが見つかるこのガイドを活用しましょう。

UML におけるシーケンス図とは?

シーケンス図を理解するためには、まず統一モデリング言語図、別名 UML の役割を知っておくことが大切です。UML は、行動図、相互作用図、構造図などのさまざまな種類の図の作成と表記の基本となるモデリングツールキットです。

シーケンス図は相互作用図の一種で、オブジェクトのグループが一緒に動作する方法と順序を表します。こうした図は、ソフトウェア開発者やビジネスパーソンが新しいシステムの要件を理解したり、既存のプロセスを記録するために用いられます。シーケンス図は、イベント図やイベントシナリオと呼ばれることもあります。

シーケンス図は、複雑なアーキテクチャにおいて、技術的な関係者とそうでない関係者の両方が読みやすいフローを維持しながら、時間の経過に伴う相互作用を視覚化する必要がある場合に特に役立ちます。

また、システムシーケンス図(SSD)と呼ばれる特殊なバージョンもあります。システムシーケンス図は、実際には UML におけるシーケンス図のサブタイプで、システム外部のアクターによって生成されたイベントの詳細を示しています。標準のシーケンス図では、複数の内部オブジェクトが連携して動作することをモデル化できますが、SSD は通常、システム自体を単一の「ブラックボックス」として扱い、特定のユースケースでは外部のアクターからシステムへのイベントフローに焦点を当てます。

シーケンス図には、UML 図とコードベースの図の2種類があります。後者はプログラミングコードをソースとするものであり、本ガイドでは触れません。Lucidchart の UML 作図ソフトウェアには、これらの図のモデル化に必要となるあらゆる図形と機能が揃っています。また、Lucid のコードによるダイアグラム機能を使えば、これまで以上に速く、簡単に作成できます。Mermaid のコードを使用して、Lucidchart の文書内でカスタムのシーケンス図を作成できます。

シーケンス図の利点

シーケンス図は、企業やその他の組織におけるリファレンスとして便利に使えます。以下の用途にシーケンス図を利用してみましょう。

  • UML のユースケースの詳細を示す。
  • 高度な手順、機能や操作のロジックをモデル化する。
  • プロセス完了までの過程におけるオブジェクトとコンポーネントの相互作用を確認する。
  • 既存または将来のシナリオの詳細な機能を計画し、理解する。

もしシステムシーケンス図(SSD)を特にご利用の場合、システムが外部で生成されたイベントにどのように応答し、それらのイベントがどのような操作をトリガーすべきかを明確にするのにも役立ちます。SSD は、システム内でタスクがいつ、どのように完了するかを示すのに最適であり、特にそれらのタスクとユースケースの関係を示す際に有効です。

SSD を使用する場合の具体例をいくつか示します。

  • イベントに応じて、システムの動作を段階的にモデル化する
  • 特定のユースケースの主な成功シナリオのブループリントを作成し、その後、代替パスを作成する
  • 必要なリソースを現実的に見積もるために、主要なシステムイベントおよびオペレーションを特定する

ユースケース図のユースケース

以下のシナリオは、シーケンス図の利用に特に適しています。

  • 利用シナリオ: システムを使用しうる方法を示す図が利用シナリオです。システムのあらゆる利用シナリオのロジックを想定できているかを確認する上で適した方法です。
  • メソッドのロジック: UML シーケンス図でユースケースのロジックの検討に用いるのと同様に、あらゆる機能、手順や複雑なプロセスのロジックの検討にシーケンス図を利用することができます。
  • サービスのロジック: 異なるクライアントが使用する高次のメソッドとしてサービスを捉える場合に、そのサービスをマッピングする上でシーケンス図が役立ちます。
  • シーケンス図 (Visio) - Visio で作成したシーケンス図はすべて Lucidchart へアップロードすることができます。Lucidchart は、.vsdや .vdxファイルのインポートに対応しており、Microsoft Visio に代わるソフトウェアとして最適です。このサイトの UML セクションで使用した画像は、ほぼすべて Lucidchart を使用して生成したものです。

基本的な記号と構成要素

 

記号名前プラン内容
Uml Object Symbol.svgオブジェクト記号UML のクラスまたはオブジェクトを表します。オブジェクト記号は、システムのコンテキストにおけるオブジェクトの振る舞いを示します。この図形にクラスの属性は表示されません。
Uml Activation Box Symbol.svgアクティベーションボックスオブジェクトがタスクを完了するまでに要する時間を表します。タスクの所要時間が長いほど、アクティベーションボックスも長いものになります。
Uml Actor Symbol.svgアクター記号システムと相互作用する、またはシステム外部に存在する実体を示します。
Uml Package Symbol.svgパッケージ記号UML 2.0 記法で用いられ、図のインタラクティブな要素を含むものです。フレームとも呼ばれ、長方形の図形に図のラベルとなる小さな長方形を内包します。 
Uml Lifeline Symbol.svgライフライン記号下方向に伸び、時間の経過を表します。垂直の破線で、作図対象となるプロセス間に、オブジェクトに対して連続して発生する事象を示します。ライフラインはラベル付きの長方形やアクター記号などから開始します。
Uml Option Loop Symbol.svgオプションループif/then シナリオ、すなわち特定の条件下でのみ起こる状況をモデル化します。
Uml Alternative Symbol.svg代替記号複数のシーケンス間の (通常、相互排他的な) 選択を表します。内側に破線を含むラベル付きの長方形の図形で代替を示します。

 

システムシーケンス図(SSD)では、これらの同じ要素の多くが登場しますが、通常は外部アクター、システム境界、それらの間で交換されるイベントに、より焦点を絞って使用されます。ユースケース図で扱うほとんどの要素は、システムシーケンス図全体で引き続き使用されます。これには以下が含まれます。

  • オブジェクト:タイトルに下線が引かれたこの箱型の図形で、UML のクラス(またはオブジェクト)を表しています。SSD 内では、この図形はシステムをブラックボックス(内部の仕組みがすぐには見えないシステム)としてモデル化します。

  • アクター:棒人間で示されるアクターは、システムと相互作用する実体であり、かつシステムの外部にあります。

  • イベント:アクターがシーケンス内で生成するシステムイベントです。破線はライフラインと呼ばれ、SSD 内のイベントを表します。ライフラインはラベル付きの長方形やアクター記号などから開始します。

一般的なメッセージ記号

以下の矢印やメッセージ記号を使い、オブジェクト間での情報の伝達方法を表します。これらの信号は、操作の開始と実行、または信号の送受信を示す場合があります。

記号名前プラン内容
Uml Synchronous Message Symbol.svg同期メッセージ記号実線と黒塗りの矢印で示されます。この記号は、送信者が続行するためにはメッセージへの応答が必要である場合に使われます。この図では、呼び出しと応答の双方を示す必要があります。
Uml Asynchronous Message Symbol.svg非同期メッセージ記号実線と線状の矢印で示されます。非同期メッセージは、送信者が続行する場合に応答を必要としません。この図には呼び出しのみを含めます。
Uml Return Message Symbol.svg非同期リターンメッセージ記号破線と線状の矢印で示されます。
Uml Create Message Symbol.svg非同期作成メッセージ記号破線と線状の矢印で示されます。このメッセージはオブジェクトを新規作成します。
Uml Return Message Symbol.svg応答メッセージ記号破線と線状の矢印で示されます。このメッセージは呼び出しに応答します。
Uml Deleted Message Symbol.svg削除メッセージ記号実線と黒塗りの矢印に X 印で示されます。このメッセージはオブジェクトを消滅させます。

メッセージを配置する際の実用的な注意点:矢印が適切なライフラインとアクティベーションに明確に接続されている限り、オブジェクトはダイアグラムをまたいでメッセージをやり取りでき、隣接している必要はありません。どのオブジェクトでも、他の任意のオブジェクトとの間でメッセージの送受信を行うことができます。オブジェクト同士が隣接している必要はありません。

シーケンス図の例

病院管理システムのシーケンス図

他の多くの業界と同様に、医療分野にもテクノロジーにより大きな変革がもたらされました。病院管理システム (別名: 病院情報システム) は、医師、事務管理者や病院職員が、診断、処方、予約、患者やその介護者に関する情報を始め、病院に関するすべての活動や関連して収集される情報を管理する上で役立つシステムです。以下の図では、主なプロセスの関わりを時系列で示しています。

Sequence Diagram Hospital 900x982.png

ATM システムのためのシーケンス図

銀行の顧客が完全に自動化されたプロセス経由で各自の銀行口座にアクセスできる仕組みが ATM です。シーケンス図を作成して確認すれば、このプロセスを段階別に検討することができます。以下の例では、ATM システムにおける相互作用を順番に示しています。

Sequence Diagram Atm Example 800x1292.png

これらの例以外にも、シーケンス図は、サインイン、パスワードリセット、多要素認証などの一般的なウェブアプリケーションのフローを文書化するために頻繁に使用されます。これらのフローでは、リクエストとレスポンスの順序が重要です。

 

シーケンス図を作成する方法

Lucidchart では、驚くほど簡単にゼロからシーケンス図を作成することができます。作成は以下の3つの手順で行います。

1. Lucidchart の利用を開始

Lucidchart のアカウントをお持ちでない方には、無料で登録することをおすすめします。ログインし、テンプレートを選択するか、文書を新規作成します。Lucidchart のインポート機能を使い、Visio などの他の作図プラットフォームから既存の図をインポートして作成途中の文書を共同編集したり、作業を続行することも可能です。

そこから、ワークフローは、通常3つのフェーズに分かれます。何をモデル化するか(参加者とメッセージ)を特定し、ダイアグラムを(手動またはマークアップから)作成し、フォーマットしてコラボレーターと共有します。

 2. 構成要素の特定と追加

まず図に含めるべきシステムのコンポーネントを特定します。最初のコンポーネントとして欠かせないのが、オブジェクトです。オブジェクトは特にアクターとも呼ばれ、タスク実行やメッセージ送信の主要なプレイヤーとなる存在です。例えば、ログインシーケンスにおいては、潜在的な訪問者/ユーザー、そして訪問者がログインしようとしているプラットフォームとの相互作用に使うログインページの2つがオブジェクトとなります。

特定すべきコンポーネントのセットは他にもあります。オブジェクトが送信するメッセージです。オブジェクトから他のオブジェクトへ渡される情報はどのようなものでしょうか?この例で示すユーザー認証プロセスにおいて、メッセージは、ウェブページへアクセスするためにユーザーがブラウザーに情報を入力する方法、さらに、そのブラウザーがその後指定のアプリケーションと認証情報をクロスチェックする方法を示します。

参加者リストを検証する簡単な方法は、誰がインタラクションを開始するのか、どのシステムまたはインターフェースがそれを受け取るのか、そしてシナリオが完了する前にどの下流サービスが応答する必要があるのか、を質問することです。

Sequence Diagram Login Page 780x806.png

3. 図形を追加またはインポートする

Lucidchart では、プロフェッショナルなシーケンス図の作成に必要なあらゆる標準図形が揃った完全な UML 図形ライブラリを利用できます。エディターの左上隅の [図形] をクリックし、[UML] を選択すれば、ツールバーに UML 図形を追加することができます。

この他にも図形が必要な場合には、画像検索機能でアイコンを検索するほか、お手持ちのステンシルやアイコンをインポートすることも可能です。Lucidchart では、一切の制限なく、さまざまな記号や図形を UML シーケンス図作成に活用できます。

4. シーケンス図を作成

Lucidchart はシーケンス図を作成するさまざまな方法を提供しています。

シーケンスマークアップを使用してプロセスを自動化:手書きですべてを作成する代わりにテキストからダイアグラムを生成したい場合、Lucidchart ではマークアップ駆動型のアプローチをサポートしています。Lucidchart のシーケンスマークアップ機能で、シーケンス図作成のプロセスがスピードアップします。すばやく、手間いらずで美しいシーケンス図が作成できる機能です。作図プロセスが自動化され、エディターへ直接マークアップ順序を入力するだけでシーケンス図を生成できます。

UML シーケンス図形ライブラリへ移動し、[マークアップを使用] を選択します。テキストパッドが開きます。ここに、シーケンスの順序とそのルールを入力します。準備が完了したら [作成] をクリックし、クリックでエディターに戻って自動生成されたシーケンス図を確認します。

手動でシーケンス図を作成する : UML 図形ライブラリを有効化した後は、シンプルなドラッグ・アンド・ドロップの動作でキャンバスへ図形を簡単に追加することができます。キャンバスの最上部にオブジェクトとなる長方形を追加し、それぞれにオブジェクトの名称となるラベルを追加します。システムの外部でもあり、内部でもあるオブジェクトについては、長方形の代わりにアクター記号を用いることもできます。この記号はツールボックスのユースケース図セクションで見つかります。

時間の流れをシーケンス形式で示すため、オブジェクト図形をクリックして線をドラッグで引き出します。すると、ライフラインを示す点線が直ちに表示されます。ライフラインの長さは、シーケンス内で示すメッセージの数により決まります。

テンプレートを使用:Lucidchart には、特定のニーズに合わせてカスタマイズできるさまざまなシーケンス図のテンプレートが用意されています。

5. シーケンス図にテキストや概念を追加

メッセージを作成するには、図形ライブラリからアクティベーションボックスをドラッグします。アクティベーションボックスは細長い長方形の形状をしています。点線のライフラインへボックスをドラッグし、必要に応じてサイズを調整します。

アクティベーションボックスを配置したら、ボックスをクリックしてメッセージ矢印を引き出します。メッセージをクリックして入力し、ラベルを付与することができます。矢印の方向を変更するには、メッセージ矢印、情報アイコンの順にクリックし、[方向を反転] を選択します。

シーケンス内でアクションが消滅した場合には、ライフラインの最後の削除記号 (X) を使用してその旨を示します。

すべてのメッセージを必ず正しいアクティベーションボックスに対応させます。最後のメッセージの描画が終了した時点で図は完成となります。

Sequence Diagram Tutorial Message Snippet 495x380.png

6. シーケンス図の書式設定

Lucidchart では、最終的な書式設定も容易です。ロジックに確かな根拠があり、すべてのプロセスが正しく並んでいることを確認しましょう。ライフラインは特定の時間枠を示すものではありませんが、メッセージは常に垂直方向に順番に表す必要があります。

文書のチェックが完了したら、図上の希望の領域を選択して書式設定を行います。右サイドバーの「テーマ」をクリックして設定済みのスタイル形式を選択するほか、特定の図形や線を選択してフォント、色や線の設定を変更することもできます。フォント、線のスタイルやサイズをあらかじめ選択してデフォルトのスタイルに事前設定しておけば、時間を節約することができます。

7. 公開、実装、共有

正確なダイアグラムができ、フォーマットが整ったら、最後のステップは、開発者、レビュー担当者、ビジネス関係者など、必要な人々に届けることです。完成したシーケンス図を Lucidchart から共有・公開すれば、同僚にシステムを明確に説明することができます。共同編集設定により、図のコントロール権限は完全に保持することができます。図を社内 wiki に埋め込んで公開したり、使いやすい共有機能で他の Lucidchart ユーザーや非ユーザーへ送信したりするほか、完成したシーケンス図を Visio など、あらゆる形式でダウンロードできます。図をリンク経由やソーシャルメディアチャネル上で共有するオプションもあります。

多種多様なLucidchart インテグレーションを利用することで、Google Workspace などのプラットフォームでシーケンスを公開するほか、あらゆるスプレッドシート、文書やプレゼンテーションに図を追加することができます。無料の Microsoft アドオンで、Word、Excel や PowerPoint などの Microsoft Office ツールへのシーケンス図の追加も自在です。オペレーティングシステムの違いに関係なく使用でき、共同作業につきものの追加費用や制限もありません。

UML で最も人気のある図のひとつがシーケンス図です。作図に必要な図形、インターフェイスや共同編集設定が揃った Lucidchart で、これらの図の作成がシンプルになります。無料で登録して今すぐ UML 図の作成を始めましょう!

 

ご自身の UML 図を作成する準備はできていますか?Lucidchart を試してみましょう。今すぐ簡単に、無料で開始できます。

 

図の作成に必要なすべて

Lucidchart を使えば、洗練された美しい図を無料で作成できます。どんな図にも対応できる機能を完備したツールで、今すぐアカウントを作成して図の作成を始められます。

無料ではじめる

シーケンス図のテンプレートと例

無料でカスタマイズ可能なテンプレートでインスピレーションを得て、アイデアをより早く文書化できます。

ウェブシーケンス図

料金:

有料アカウント

ウェブシーケンス図, 料金: 有料アカウント

UML 表記を使用したクラス図

料金:

有料アカウント

UML 表記を使用したクラス図, 料金: 有料アカウント

よくあるご質問

UML シーケンス図は、オブジェクトのグループが機能を実行するためにどのように、またどの順序で相互作用するかを表す相互作用ダイアグラムの一種です。これはライフラインと、それらの間でやり取りされるメッセージを中心に記述します。

主な構成要素には、オブジェクト記号、ライフライン(破線の縦の線で順次イベントを示す)、アクティベーションボックス(タスク完了に必要な時間を表す)、アクター記号(外部の実体)、オブジェクト間の相互作用を示す各種メッセージ矢印が含まれます。

ライフラインは下方向に伸びて時間の経過を表し、一連の出来事が上から下へと順に発生してプロセスが展開していく様子を示しています。

同期メッセージ(実線と塗りつぶし矢印)は、送信者が応答を受け取るまで待機する必要があります。一方、非同期メッセージ(実線と白抜き矢印)では、送信者は応答を待たずに続行できます。

シーケンス図を使用して UML ユースケースの詳細を表現し、複雑な手順のロジックをモデル化し、オブジェクトがプロセスを完了するためにどのように相互作用するかを確認し、既存または将来のシナリオの詳細な機能を計画・理解します。

アクティベーションボックスは、ライフライン上の長方形で、オブジェクトがタスクを完了するまでに要する時間を表します。タスクの所要時間が長いほど、アクティベーションボックスはより長くなります。

空白の文書またはテンプレートを開き、UML 図形ライブラリを有効にします。アクター、ライフライン、メッセージなどのシンボルをキャンバスにドラッグし、図形間に線を描いてテキストを追加することで、業務フローをモデル化します。

代替記号(破線で区切られたラベル付き長方形)は、互いに排他的な2つ以上のメッセージシーケンスから1つを選択することを表し、if/then シナリオをモデル化します。

UML 図の作成に必要なすべての機能

オンライン UML 作図ツールに加え、 Lucidchart はサポートやトレーニングリソースも提供しており、あらゆる図に挑戦できるよう支援しています。

作図を開始する