プロジェクトマネージャ 2011年 午前2 問17
問題文
図は、階層化されたDFDにおける、あるレベルのDFDの一部である。プロセス1を子プロセスに分割して詳細化したDFDのうち、適切なものはどれか。ここで、プロセス1の子プロセスは、プロセス1-1、1-2及び1-3と表す。


選択肢
ア:
イ:(正解)
ウ:
エ:
🔒 解説は解答すると表示されます
DFDのバランス原則【午前2解説】
正解の理由
階層化されたDFDでは、親プロセスを子プロセスに分割しても、親プロセスの境界を出入りするデータフローを保つ必要があります。これをDFDのバランスといいます。
元のDFDでは、プロセス1に外部から2本のデータフローが入り、プロセス2とプロセス3へそれぞれ1本ずつ出ています。したがって、詳細化したDFDでも、境界を越えるデータフローは「入力2本・出力2本」でなければなりません。
イでは、外部からの入力が「1−1」と「1−2」に入り、外部への出力が「1−1」と「1−3」から出ています。親プロセスの入出力を保ったうえで、子プロセス間のデータフローも表現できているため適切です。
解法ステップ
-
詳細化前のプロセスの入出力を確認します。
プロセス1には外部から2本のデータフローが入り、外部へ2本のデータフローが出ています。 -
詳細化後のDFDで、外部との境界を越えるフローを数えます。
子プロセス間のフローではなく、DFDの外部から入るフローと外部へ出るフローに注目します。 -
親プロセスの入出力が保たれているか確認します。
入力2本・出力2本が維持され、各子プロセスにも不自然な入出力がないイが適切です。
選択肢別の誤答解説
- ア:外部からの入力が1本しかありません。親プロセスに入っていた2本の入力のうち、1本が詳細化後に欠けています。
- イ:入力2本・出力2本が保たれています。また、子プロセス間のデータフローもあり、詳細化したDFDとして適切です。
- ウ:外部への出力が1本しかありません。親プロセスから外部へ出ていた2本の出力のうち、1本が欠けています。また、「1−2」には出力がありません。
- エ:境界を越える入出力の本数だけを見ると親プロセスと同じですが、「1−2」には入力がなく、出力だけがあります。データを受け取らずに出力を生成するプロセスになっており、適切ではありません。
よくある誤解
- 入出力の本数さえ同じならよい
本数の一致だけでなく、各子プロセスの入出力が不自然でないことも確認します。 - 子プロセスの配置や番号が重要である
図の配置より、親プロセスの境界を越えるデータフローが保たれているかが重要です。 - 子プロセス間の矢印も親プロセスの入出力として数える
親プロセスの入出力として数えるのは、詳細化後のDFDの外部との境界を越えるフローです。
補足コラム
DFDの詳細化では、親プロセスを複数の子プロセスに分け、内部の処理やデータの流れを明らかにします。一方で、親プロセスの外側から見た入出力は変えてはいけません。詳細化の前後でこの入出力が一致していることが、DFDのバランスです。
FAQ
Q. 子プロセス間のデータフローは、親プロセスの入出力に含めますか?
A. 含めません。親プロセスの入出力と照合するのは、詳細化したDFDの境界を越えるデータフローです。
A. 含めません。親プロセスの入出力と照合するのは、詳細化したDFDの境界を越えるデータフローです。
Q. 子プロセスが入力なしで出力するのは、なぜ不適切なのですか?
A. DFDのプロセスは、入力されたデータを処理して出力することを表すためです。入力なしで出力するプロセスは、データの出所が不明になります。
A. DFDのプロセスは、入力されたデータを処理して出力することを表すためです。入力なしで出力するプロセスは、データの出所が不明になります。
関連キーワード: DFD、階層化、データフロー、プロセス、バランス原則

\ せっかくなら /
プロジェクトマネージャを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

