アクティビティ図が表す流れをどう見分けるか
基本情報技術者試験 平成31年度春期 午前 問46 / システム開発技術 › ソフトウェア要件定義
過去問にチャレンジ
UMLにおける振る舞い図の説明のうち,アクティビティ図のものはどれか。
- ア
ある振る舞いから次の振る舞いへの制御の流れを表現する。
- イ
オブジェクト間の相互作用を時系列で表現する。
- ウ
システムが外部に提供する機能と,それを利用する者や外部システムとの関係を表現する。
- エ
一つのオブジェクトの状態がイベントの発生や時間の経過とともにどのように変化するかを表現する。
会話形式の解説
講師それぞれの説明が、活動の流れ、やり取り、機能との関係、状態の変化のどれに着目しているかを見ましょう。
受験者オブジェクト間のやり取りを時系列で表す説明も、流れを扱っているように思えます。
講師そこは紛らわしいですね。その説明で時間順に追うのはオブジェクト同士のやり取りなので、シーケンス図に当たります。
受験者アクティビティ図では、何から何への流れを見るのですか。
講師活動から次の活動へ、制御がどう移るかを見ます。振る舞いから次の振る舞いへの制御の流れを述べた説明が正解です。
受験者システムの機能と、それを利用する主体との関係を表す説明はどう考えますか。
講師それはユースケース図です。活動間で制御がどう移るかではなく、機能と利用主体との関係に着目しています。
受験者残る状態の変化は、活動の流れとは違うのですね。
講師はい。一つのオブジェクトの状態がイベントや時間によってどう変わるかを表すのは、ステートマシン図です。
受験者やり取りの時間順ならシーケンス図、状態の変化ならステートマシン図と見分けられます。
講師その整理でよいです。アクティビティ図を選ぶときは、活動から次の活動への制御の流れかどうかを確かめましょう。
まとめ
アクティビティ図は、活動から次の活動へ制御がどう移るかを表します。オブジェクト間のやり取りを時間順に追う説明はシーケンス図に当たります。機能と利用主体との関係はユースケース図、一つのオブジェクトの状態変化はステートマシン図が扱います。
解答・解説
正解はアです
この問題のテーマ
UMLの振る舞い図について、説明されている対象からアクティビティ図を識別する問題です。
解き方の考え方
まず、それぞれの説明が活動の流れ、オブジェクト間のやり取り、利用者と機能の関係、状態の変化のどれに着目しているかを見ます。アクティビティ図が表すのは、活動から次の活動へ制御がどう移るかです。
選択肢ごとの解説
- ○ア ある振る舞いから次の振る舞いへの制御の流れを表現する。アの「振る舞いから次の振る舞いへの制御の流れ」は、活動の進み方を述べています。これはアクティビティ図が表す内容なので、正解です。
- ×イ オブジェクト間の相互作用を時系列で表現する。イはオブジェクト同士のやり取りを時間順に追う説明です。この観点に対応するのはシーケンス図であり、アクティビティ図ではありません。
- ×ウ システムが外部に提供する機能と,それを利用する者や外部システムとの関係を表現する。ウはシステムの機能と、それを利用する主体との関係を述べています。対応するのはユースケース図であり、活動の制御の流れを表す説明ではありません。
- ×エ 一つのオブジェクトの状態がイベントの発生や時間の経過とともにどのように変化するかを表現する。エは一つのオブジェクトが時間やイベントに応じてどう状態を変えるかという説明です。状態の変化を扱うステートマシン図に対応します。
POINT
- アクティビティ図を選ぶときは、活動間の制御の流れに着目します。
- やり取りの時間順を問う説明では、シーケンス図を考えます。
- 利用主体と機能の関係、オブジェクトの状態変化は、それぞれ別の図が扱います。
