UMLの相互作用を表す図はどう見分ける?
基本情報技術者試験 平成29年度秋期 午前 問46 / システム開発技術 › ソフトウェア要件定義
過去問にチャレンジ
UML2.0において,オブジェクト間の相互作用を時系列に表す図はどれか。
- ア
アクティビティ図
- イ
コンポーネント図
- ウ
シーケンス図
- エ
状態遷移図
会話形式の解説
講師この問題では、何が時間の順に示されるのかに注目します。オブジェクト間のやり取りでしょうか、それとも別のものでしょうか。
受験者アクティビティ図も流れを表すので、時系列という条件に合いそうです。
講師その図で追うのは、処理がどう進むかです。設問で追いたいのは何ですか。
受験者処理ではなく、オブジェクト間のやり取りです。
講師そうです。シーケンス図は、オブジェクト間で交わされるメッセージの順序を表します。相互作用と時系列の両方に合います。
受験者コンポーネント図も部品同士の関係を表しますが、やり取りの順番まで分かるのでしょうか。
講師コンポーネント図が表すのは部品同士の関係です。やり取りの順番を読む図ではありません。
受験者状態遷移図は時間に沿った変化を扱います。そこが紛らわしいです。
講師状態遷移図で変わるのは、イベントに応じた状態です。オブジェクト間のやり取りを追うわけではありません。
受験者処理、部品、状態ではなく、オブジェクト間のメッセージの順序を表す図を選ぶのですね。
講師はい。「時系列」だけで決めず、「何の順序か」まで確かめると区別できます。
まとめ
オブジェクト間の相互作用を時系列で表すのはシーケンス図です。シーケンス図は、オブジェクト間で交わされるメッセージの順序を示します。アクティビティ図は処理の流れ、コンポーネント図は部品同士の関係、状態遷移図はイベントに応じた状態の変化を表します。
解答・解説
正解はウです
この問題のテーマ
UML 2.0の図のうち、オブジェクト間のやり取りを時系列で表すものを選ぶ問題です。
解き方の考え方
図が何を中心に表すかで見分けます。設問の要点は「オブジェクト間の相互作用」と「時系列」です。処理の流れ、部品の関係、状態の変化を表す図と区別します。
選択肢ごとの解説
- ×ア アクティビティ図アクティビティ図は、処理がどう進むかを表します。設問が求めるオブジェクト間のやり取りを時系列に示す図には当たりません。
- ×イ コンポーネント図コンポーネント図は、部品同士の関係を表します。やり取りの順番を読み取るための図ではありません。
- ○ウ シーケンス図シーケンス図は、オブジェクト間で交わされるメッセージの順序を表します。相互作用を時系列に示すという設問の条件に合います。
- ×エ 状態遷移図状態遷移図は、イベントに応じて状態がどう変わるかを表します。時間に沿った変化は扱いますが、着目するのはオブジェクト間のやり取りではなく状態です。
POINT
- 「相互作用」は、オブジェクト間のやり取りに着目する手掛かりです。
- 「時系列」は、やり取りの順番を表す図を選ぶ手掛かりです。
- 処理・部品・状態のどれを表す図かを確認すると、候補を絞れます。
