令和5年度 春期 午前Ⅱ 問2
システム要件定義・ソフトウェア要件定義
DFDに関する問題
図は,階層化された DFD における,あるレベルの DFD の一部である。プロセス 1 を子プロセスに分割して詳細化した DFD のうち,適切なものはどれか。ここで,プロセス 1 の子プロセスは,プロセス 1−1,1−2 及び 1−3 とする。
DFD の一部(==はデータストア):
(外部)→ 1 (外部)→ 1 1 → 2 1 → 3 2 → ==(データストア) ==(データストア)→ 3 3 →(外部)
- ア(原典は図。外部→1−1,1−1→1−2,1−1→1−3,1−2→外部,1−3→外部)
- イ(原典は図。外部→1−1,外部→1−2,1−1→外部,1−1→1−3,1−2→1−3,1−3→外部)
- ウ(原典は図。外部→1−1,外部→1−1,1−1→1−2,1−1→1−3,1−3→外部)
- エ(原典は図。外部→1−1,外部→1−1,1−1→1−3,1−2→1−3,1−3→外部,1−3→外部)
答えと解説を見る
✓ これが正解イ(原典は図。外部→1−1,外部→1−2,1−1→外部,1−1→1−3,1−2→1−3,1−3→外部)
解説
親のプロセスと外部との入出力の本数が一致する分割を選びます。
見分ける軸は、親のプロセス 1 に出入りするデータフローが、子の DFD 全体の出入りと一致しているかです。階層化された DFD では、子に分割しても外との出入りは変わってはなりません。プロセス 1 には外部からの入力が二つあり、プロセス 2 と 3 への出力が二つあります。正解の図は外部からの入力が二つ、外部への出力が二つで数が合い、1−1 と 1−2 が受けた入力を 1−3 にまとめる流れも途切れていません。さらに、すべての子プロセスが入力と出力を一つ以上ずつ持っています。入出力の本数を親と子で数え比べ、入力のないプロセスや出力のないプロセスがないかを見る、の二段で確かめると選べます。
ほかの選択肢はなぜ違うのか
- ア(原典は図。外部→1−1,1−1→1−2…:外部からの入力が1本しかありません。親のプロセス 1 には外部からの入力が2本あるので、分割したあとの子の DFD 全体でも2本の入力が必要で、データフローが一つ消えています。
- ウ(原典は図。外部→1−1,外部→1−1,…:外部からの入力は2本ありますが、外部への出力が1本しかありません。親のプロセス 1 からは2本の出力があるので数が合わず、さらに 1−2 には出ていくデータフローがなく、受け取ったデータが行き場を失っています。
- エ(原典は図。外部→1−1,外部→1−1,…:入力と出力の本数は親と合っていますが、1−2 にはどこからも入ってくるデータフローがありません。入力なしにデータを生み出すプロセスは DFD として成り立たないので、適切な分割とはいえません。
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問2
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)