プログラミングの用語一覧へ
このページの目次

活性区間とは?

最終更新:2026/08/18

3秒でわかる

シーケンス図オブジェクト処理中であることを示す細長い四角。誰がいつ制御を持っているのかを、線の太さで見えるようにする記法です。

もう少し詳しく

どういうものか

活性区間(実行仕様、アクティベーションバー)は、UML のシーケンス図でライフライン(縦の点線)の上に重ねて描く細長い長方形です。そのオブジェクトが処理を実行している最中であること、言い換えると制御を持っている期間を表します。

メッセージを受け取った時点で長方形が始まり、呼び出し元へ戻った時点で終わります。長方形の縦の長さが処理の期間にあたります。

なぜ必要か

矢印だけを並べた図では、呼び出しの順番は分かっても、どの処理がまだ終わっていないのかが読めません。A が B を呼び、B が C を呼んでいる間、A はずっと待っているのか、それとも返事を待たずに次へ進んだのか。活性区間を描くと、入れ子になった長方形として重なりが見えるため、この違いが図の上で判別できます。

具体例

注文処理を文字で写すと、次のような重なりになります。

利用者 画面 注文<a href="/glossary/api" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">API</a> 在庫DB | | | | |--注文する->|▉ | | | |▉--POST----->|▉ | | |▉ |▉--在庫確認->|▉ | |▉ |▉<--残3------| | |▉<--201-------| | |<--完了表示-|▉ | | | | | |

縦に伸びた ▉ が活性区間です。注文 API の区間が在庫 DB の区間を包み込んでいるので、API は在庫の返事を待って止まっていると読めます。

つまずきやすいところ

戻りの矢印を描かずに長方形だけ閉じる、あるいはその逆で、矢印は描いたのに長方形が終わらない、という不整合が起きがちです。開始と終了は必ず対応させます。

自分自身を呼び出す再帰や内部メソッド呼び出しでは、同じライフライン上に活性区間が二重に重なります。これは誤りではなく、入れ子の表現として正しい書き方です。

非同期のメッセージを実線の矢印(同期)で描いてしまうのも紛らわしい例です。返事を待たない呼び出しは開いた矢先で描き、呼び出し元の活性区間はそこで途切れずに続きます。

似た用語との違い

記号意味
ライフラインオブジェクトが存在している期間を示す縦の点線
活性区間その中で実際に処理を実行している期間を示す長方形
メッセージオブジェクト間の呼び出しを示す矢印


覚え方

点線は「生きている期間」、長方形は「働いている期間」です。太いところが仕事中と読みます。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地活性区間プログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語に直接対応する公開中の編はまだありません。

すべてのコースを見る