基本情報技術者 2018年 春期 午前(科目A) 問64
問題文
UMLをビジネスモデリングに用いる場合、ビジネスプロセスの実行順序や条件による分岐などのワークフローを表すことができる図はどれか。
選択肢
ア:アクティビティ図(正解)
イ:オブジェクト図
ウ:クラス図
エ:コンポーネント図
🔒 解説は解答すると表示されます
UMLアクティビティ図【午前解説】
正解の理由
アクティビティ図は「処理の流れ(フロー)」を表現するために設計されたUMLの図です。開始ノードからアクティビティ(処理)へ流れ、条件分岐は意思決定ノード(diamond)、並列処理はフォーク/ジョインで表現できます。これにより業務の実行順序、分岐条件、並列化、同期などワークフローの主要要素を視覚化できるため、この問題の条件に最も合致します。
解法ステップ
- 問題文からキーワードを抽出:「実行順序」「条件による分岐」「ワークフロー」。
- UML図の目的を想起:各図が何を表すか(構造/振る舞い/相互作用/構成)。
- 「ワークフロー=処理の流れ(開始→活動→分岐→同期→終了)」に合致する図を選ぶ。
- アクティビティ図が該当するため選択する。
選択肢別の誤答解説
- ア: アクティビティ図 — 正解。処理の流れ、意思決定(分岐)、フォーク/ジョイン(並列)を直接表現できる。
- イ: オブジェクト図 — 誤り。特定時点のオブジェクトとその関係(インスタンス構成)を示す図で、処理フローや分岐を表現する用途ではない。
- ウ: クラス図 — 誤り。システムやドメインの静的構造(クラスと属性・操作、関連)を示すためワークフロー表現には不向き。
- エ: コンポーネント図 — 誤り。ソフトウェアのモジュール/コンポーネント構成や依存関係を表す図で、業務の実行順序や条件分岐を示す図ではない。
よくある誤解
- アクティビティ図は「動的振る舞い」だけでなく、ビジネスプロセスの高レベルなワークフロー把握にも使える点を見落とす。
- シーケンス図と混同して「時間順=ワークフロー」と短絡し、誰が何をするか(相互作用)と処理の分岐・並列を区別できない。
- クラス図やオブジェクト図を見て「関係があるからこれで表せる」と考え、処理の流れ(分岐・並列)を表現できない点を見逃しやすい。
補足コラム
- アクティビティ図はBPMN(業務プロセスモデリング記法)と同様にワークフロー記述に使えますが、BPMNは業務プロセスの実務者向けにより豊富な表記(プール/レーン、イベント、メッセージフロー等)を持ちます。UMLアクティビティ図はソフトウェア設計との連携や簡潔な振る舞い記述に便利です。
- 実務では「誰が」「いつ」「何をするか」を明確にするため、アクティビティ図にレーン(参加者別スイムレーン)を追加して責務を表現することがよくあります。
- 並列処理を表す際はフォーク(一本の流れを複数へ)とジョイン(複数流れを一本へ)を正しく使い、デッドロックや同期の扱いに注意してください。
FAQ
Q1: シーケンス図とアクティビティ図はどちらがいいですか?
A1: シーケンス図はオブジェクト間のメッセージ交換の時系列把握に優れ、アクティビティ図は処理の分岐や並列を含むワークフローの全体像把握に優れます。用途に応じて使い分けます。
A1: シーケンス図はオブジェクト間のメッセージ交換の時系列把握に優れ、アクティビティ図は処理の分岐や並列を含むワークフローの全体像把握に優れます。用途に応じて使い分けます。
Q2: アクティビティ図で例外処理は表現できますか?
A2: はい。ガード条件や別のフロー(例外フロー)で表現できますが、複雑な例外管理は状態図や別の表現と組み合わせることもあります。
A2: はい。ガード条件や別のフロー(例外フロー)で表現できますが、複雑な例外管理は状態図や別の表現と組み合わせることもあります。
Q3: ビジネスモデリングでBPMNを使うべきかUMLを使うべきか?
A3: 業務担当者中心ならBPMN、ソフトウェア設計との連携や技術者向けの抽象化が必要ならUMLアクティビティ図を選ぶと良いです。
A3: 業務担当者中心ならBPMN、ソフトウェア設計との連携や技術者向けの抽象化が必要ならUMLアクティビティ図を選ぶと良いです。
関連キーワード: UML、アクティビティ図、ワークフロー、ビジネスプロセス、意思決定ノード、フォーク/ジョイン、シーケンス図、クラス図、オブジェクト図、コンポーネント図

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

