エンベデッドシステムスペシャリスト 2022年 午前2 問19
問題文
イベント駆動型のアプリケーションプログラムにおける、時系列でのオブジェクト間の相互作用を設計するのに有用なものはどれか。
選択肢
ア:DFD
イ:E-R図
ウ:シーケンス図(正解)
エ:状態遷移図
🔒 解説は解答すると表示されます
シーケンス図の役割【午前2解説】
正解の理由
イベント駆動型のアプリケーションでは、イベントをきっかけに複数のオブジェクトがメッセージを送り合い、処理が進みます。このようなオブジェクト間のやり取りと、その時間的な順序を表すのに適しているのが、ウのシーケンス図です。
シーケンス図では、オブジェクトを縦方向のライフラインで表し、オブジェクト間のメッセージを矢印で示します。時間の経過は上から下へ表現するため、どのオブジェクトが、いつ、どの相手に処理を依頼するかを追いやすくなります。
解法ステップ
- 設問の「時系列でのオブジェクト間の相互作用」に注目します。
- 「オブジェクト間の相互作用を時間の順に表す図」を思い出します。
- その役割に合うウのシーケンス図を選びます。
選択肢別の誤答解説
-
ア:DFD
システム内のデータの流れを、処理やデータストアなどを用いて表す図です。オブジェクト間のメッセージ交換を時系列で示す図ではありません。 -
イ:E-R図
データベース設計などで、実体(エンティティ)と実体間の関連を表す図です。処理の時間的な順序は表しません。 -
ウ:シーケンス図
オブジェクト間で送受信されるメッセージを、時間の順序に沿って表す図です。設問の内容に合致します。 -
エ:状態遷移図
オブジェクトやシステムが、イベントなどを受けてどの状態からどの状態へ移るかを表す図です。状態変化の把握には適していますが、複数オブジェクト間のやり取りを時系列で示す目的とは異なります。
よくある誤解
-
状態遷移図も時間に関係するので、シーケンス図と同じだと考える
状態遷移図は「状態がどう変わるか」、シーケンス図は「オブジェクト同士がどの順にやり取りするか」に注目します。 -
DFDを処理の順序を表す図だと考える
DFDの主眼はデータの流れです。時間の順序やメッセージの送受信を中心に表すものではありません。 -
シーケンス図は、イベント駆動型のアプリケーションだけに使う図だと考える
シーケンス図は、イベント駆動型に限らず、ユースケースなどにおけるオブジェクト間の処理の流れを整理する際にも使われます。
補足コラム
シーケンス図では、登場するオブジェクトを横方向に並べ、それぞれの下にライフラインを引きます。メッセージはライフライン間の矢印で表し、時間は図の上から下へ進みます。
イベント駆動型の処理を整理するときは、「イベントを受け取ったオブジェクトが、次にどのオブジェクトへ処理を依頼するか」を追うと、シーケンス図の読み書きがしやすくなります。
FAQ
Q. シーケンス図では、時間は横方向に進みますか?
A. いいえ。一般に、時間は上から下へ進みます。横方向にはオブジェクトや参加者を並べます。
A. いいえ。一般に、時間は上から下へ進みます。横方向にはオブジェクトや参加者を並べます。
Q. イベントを受けた後の状態変化も表したい場合は、どの図が適していますか?
A. 状態の変化を中心に表す場合は、状態遷移図が適しています。オブジェクト間のメッセージの順序を中心に表す場合は、シーケンス図が適しています。
A. 状態の変化を中心に表す場合は、状態遷移図が適しています。オブジェクト間のメッセージの順序を中心に表す場合は、シーケンス図が適しています。
関連キーワード: UML、シーケンス図、ライフライン、メッセージ、状態遷移図、DFD

\ せっかくなら /
エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

