シーケンス図は、基本情報技術者・応用情報技術者で繰り返し出題されるUMLの定番テーマです。

対象試験と出題頻度

シーケンス図は、基本情報技術者・応用情報技術者で出題されるテーマです。

UMLのダイアグラム比較問題として定番化しており、「ユースケース図」「クラス図」「アクティビティ図」「状態マシン図」との違いを正確に区別できるかが問われます。

詳細をクリックして確認
対象試験:
基本情報技術者
応用情報技術者
出題頻度:
★★★★☆
ランクA(重要)必ず覚えておくべき

用語の定義

情報処理試験を勉強していると、「シーケンス図って何を描く図?コミュニケーション図やアクティビティ図とどう違うの?」と混乱しがちです。

シーケンス図(Sequence Diagram)とは、一言で言うと

 「オブジェクト間のメッセージのやり取りを、時間の流れに沿って表現するUMLの図

のことです。

イメージとしては、LINEのグループチャットの履歴です。

グループチャットでは、誰が誰にいつメッセージを送り、いつ返信が来たかが上から下へ時系列で並びます。途中で別の人が会話に加わることもあります。

シーケンス図もまさにこの構造で、登場するオブジェクトを横に並べ、上から下へ「誰が誰に何を送ったか」を矢印で記述します。

📊 シーケンス図の基本情報

項目 内容
英語名 Sequence Diagram
UMLでの分類 相互作用図(Interaction Diagram)/振る舞い図の一種
主な利用工程 外部設計・内部設計・詳細設計
構成要素 ライフライン、メッセージ(矢印)、実行仕様(アクティベーション)、複合フラグメント

解説

オブジェクト指向設計では、複数のオブジェクトが互いにメッセージをやり取りして処理を進めます。

しかし「どのオブジェクトが、どの順番で、何を呼び出しているのか」は、ソースコードだけでは追いにくい場面が多々あります。

この問題を解決するために、オブジェクト間の呼び出し順序を時間軸で図式化するシーケンス図が使われます。

4つの構成要素

シーケンス図を読み書きするうえで押さえるべき構成要素は4つです。

要素 記号 役割
ライフライン 四角+下向き破線 相互作用に参加するオブジェクトを表す。上部の四角にオブジェクト名(またはクラス名)を書き、下へ伸びる破線が時間軸になる
メッセージ 水平の矢印 ライフライン間を結ぶ矢印。実線矢印は同期メッセージ(呼び出し)、破線矢印は戻り値(応答)を示す
実行仕様
(アクティベーション)
縦長の細い長方形 ライフラインの破線上に重ねて描く長方形。そのオブジェクトが処理を実行している期間を表す
複合フラグメント 四角い枠+ラベル 条件分岐(alt)やループ(loop)などの制御構造を囲む枠。枠の左上にオペレータ名を記述する

図解:ECサイトの「商品購入」シーケンス図

具体例として、ECサイトで顧客が商品を購入する流れをシーケンス図で表現します。

ECサイト「商品購入」のシーケンス図

顧客画面
注文処理
在庫DB
決済サービス
① 注文する
② 在庫確認
③ 在庫あり
④ 決済要求
⑤ 決済完了
⑥ 注文完了

▲ 実線矢印=同期メッセージ(呼び出し) / 破線矢印=戻り値(応答)
上から下へ時間が流れる

メッセージの種類

シーケンス図で使われる矢印には種類があり、それぞれ意味が異なります。

矢印の形 名称 意味
──▶(実線・塗り矢印) 同期メッセージ 呼び出し先の処理が完了するまで待機する。メソッド呼び出しが代表例
──>(実線・開き矢印) 非同期メッセージ 呼び出し後、完了を待たずに次の処理へ進む。イベント通知が代表例
– – ->(破線・開き矢印) 戻りメッセージ 同期メッセージに対する応答(戻り値)。省略されることも多い

コミュニケーション図との違い

シーケンス図と混同されやすいのがコミュニケーション図です。両者は「オブジェクト間のメッセージのやり取り」を表す点は同じですが、着眼点が異なります。

シーケンス図 vs コミュニケーション図

シーケンス図

着眼点:時間の順序
軸:縦軸が時間、横軸にオブジェクト
向いている場面:処理の実行順序を正確に追いたいとき

コミュニケーション図

着眼点:オブジェクト間の関係
軸:自由配置+番号で順序を示す
向いている場面:どのオブジェクト同士がつながっているかを把握したいとき

※ どちらにも「オブジェクト間のメッセージ」は表現される(FE H30秋 問46で出題)

では、この用語が試験でどのように出題されるか見ていきましょう。

💡 シーケンス図の核心を3行で

・オブジェクト間のメッセージを時間軸に沿って上→下で記述するUMLの相互作用図
・構成要素は「ライフライン(破線)」「メッセージ(矢印)」「実行仕様(長方形)」「複合フラグメント(枠)」の4つ
・コミュニケーション図とは「時間順序 vs オブジェクト間の関係」で使い分ける


試験ではこう出る!

シーケンス図は、FE・APの午前問題でUMLダイアグラム比較問題として繰り返し出題されています。

出題パターンは大きく3つに分かれます。

📊 過去問での出題実績

試験回 出題内容 問われたポイント
FE H29秋
午前 問46
UML2.0でオブジェクト間の相互作用を時系列に表す図を選ぶ問題。 ・正解は「シーケンス図」
・アクティビティ図・コンポーネント図・状態遷移図がひっかけ
FE H30秋
午前 問46
シーケンス図とコミュニケーション図の両方に表現されるものを選ぶ問題。 ・正解は「オブジェクト間で送受信されるメッセージ」
・「処理している期間」はシーケンス図だけの要素
FE H19秋
午前 問45
UMLのクラス図に記述するものを選ぶ問題。 ・「アクティベーション、オブジェクト、ライフライン」はシーケンス図の構成要素として除外する
AP H22春
午前 問44
FE H29秋 問46と同一構成の問題(流用)。 ・FEとAPで同じ問題が出回る典型例
AP H24秋
午前 問44
UMLでメッセージによる相互作用を表せる図を選ぶ問題。 ・正解は「シーケンス図」
・コンポーネント図・ステートチャート図がひっかけ

📝 IPA試験での出題パターン

パターン1:「時系列で相互作用を表す図を選べ」
4つのUMLダイアグラム名が並び、該当するものを選ぶ形式。キーワードは「時系列」「相互作用」「メッセージ」。「アクティビティ図」(制御フロー)や「状態遷移図」(状態変化)の説明に引っかからないこと。

 

パターン2:「構成要素を選べ」
各UML図の構成要素が選択肢に並び、シーケンス図のものを選ぶ(または除外する)形式。「ライフライン」「アクティベーション」「メッセージ」がシーケンス図の要素。ここだけは確実に押さえてください。

 

パターン3:「コミュニケーション図との共通点・相違点を問う」
両図に共通する「メッセージ」と、シーケンス図固有の「処理している期間(アクティベーション)」の区別が問われる。

 

試験ではここまででOKです。複合フラグメントの詳細(alt / loop / opt など)まで午前で問われることはほぼないので、深追いは不要です。


【確認テスト】理解度チェック

ここまでの内容を理解できたか、簡単なクイズで確認してみましょう。


Q. UML2.0において、オブジェクト間の相互作用を時系列に表す図はどれでしょうか?

  • A. システムに対する要求機能を、利用者や外部システム(アクター)とシステムの相互作用として表現する図。
  • B. クラスの属性・操作と、クラス間の汎化や集約などの静的な関連を表現する図。
  • C. ライフラインを縦に並べ、オブジェクト間で送受信されるメッセージの流れを時間の経過に沿って表現する図。

正解と解説を見る

正解:C

解説:
シーケンス図は、オブジェクト間のメッセージのやり取りを時間の流れに沿って記述するUMLの相互作用図です。ライフライン上にメッセージを矢印で描き、上から下へ処理の順番を追える点が最大の特徴です。

選択肢Aはユースケース図の説明です。ユースケース図はアクターとシステム機能の対応関係を表す振る舞い図であり、時系列を扱うものではありません。選択肢Bはクラス図の説明です。クラス図はシステムの静的構造を表す構造図であり、メッセージの流れは描きません。


よくある質問(FAQ)

Q. シーケンス図の「複合フラグメント」にはどんな種類がありますか?

代表的なものは「alt(条件分岐)」「loop(繰り返し)」「opt(任意実行)」「par(並行処理)」の4つです。altはif-else、loopはfor/whileに相当すると考えるとわかりやすいです。IPA午前試験ではここまでの詳細は問われませんが、APの午後問題でシーケンス図を読む際に登場する場合があります。

Q. シーケンス図は設計のどの段階で書くものですか?

主に外部設計(基本設計)から詳細設計の段階で使います。「画面→コントローラ→DB」のように、処理の呼び出し順序をチーム内で確認・共有するのが主な目的です。要件定義段階では、先にユースケース図で「誰が何をするか」を整理し、その後シーケンス図で「具体的にどう動くか」を詳細化する流れが一般的です。

Q. シーケンス図とタイミング図はどう違いますか?

どちらも時間軸を持つ相互作用図ですが、着眼点が異なります。シーケンス図は「メッセージの送受信の順序」に着目するのに対し、タイミング図は「各オブジェクトが特定の状態にどのくらいの時間とどまるか」に着目します。FE H30秋 問46の選択肢イ「最短時間及び最長時間」はタイミング図の特徴であり、シーケンス図の要素ではありません。

Q. 実務でシーケンス図を描くツールは何が使われていますか?

PlantUMLやMermaidが代表的です。どちらもテキストベースで記述するため、Gitでの差分管理と相性が良く、開発チームでの共有に適しています。GUI操作で描きたい場合はdraw.io(diagrams.net)やLucidchartが定番です。IPA試験では特定ツールの知識は不要ですが、実務で使う場面は非常に多いです。