平成21年度 秋期 午前Ⅱ 問2
システム要件定義・ソフトウェア要件定義
DFDに関する問題
図は,階層化されたDFDにおける,あるレベルのDFDの一部である。プロセス1を子プロセスに分割して詳細化したDFDのうち,適切なものはどれか。ここで,プロセス1の子プロセスは,プロセス1−1,1−2及び1−3と表す。
DFDの一部(原典は図。円がプロセス,二重線がデータストア。矢印のつながりを書き写した):
外部 ──→ (1) (外部からプロセス1への入力が2本) 外部 ──→ (1) (1) ──→ (2) (1) ──→ (3) (2) ──→ =データストア= =データストア= ──→ (3) (3) ──→ 外部 (プロセス3から外部への出力が1本)
- ア(原典は図。外部→1−1が1本,1−1→1−2,1−1→1−3,1−2→外部が1本,1−3→外部が1本)
- イ(原典は図。外部→1−1が1本,1−1→外部が1本,1−1→1−3,外部→1−2が1本,1−2→1−3,1−3→外部が1本)
- ウ(原典は図。外部→1−1が2本,1−1→1−2,1−1→1−3,1−3→外部が1本。1−2からの出力はない)
- エ(原典は図。外部→1−1が2本,1−1→1−3,1−2→1−3,1−3→外部が2本。1−2への入力はない)
答えと解説を見る
✓ これが正解イ(原典は図。外部→1−1が1本,1−1→外部が1本,1−1→1−3,外部→1−2が1本,1−2→1−3,1−3→外部が1本)
解説
子のDFDは、親プロセスの入出力と数がつり合う必要があります。
階層化したDFDでは、親のプロセスを分解した子のDFDが、親と同じ入力と出力をもつこと(入出力のバランス)が軸になります。図のプロセス1には、外部からの入力が2本あり、出力はプロセス2へ1本とプロセス3へ1本の計2本です。正解の図では、外部からの入力が1−1と1−2へ1本ずつで計2本、外へ出る流れが1−1と1−3から1本ずつで計2本となり、親と数が合います。さらに、子プロセスはどれも入力と出力を少なくとも1本ずつもっています。子のDFDを確かめるときは、外から入る本数と外へ出る本数を親と照らし合わせ、そのうえで入力か出力の欠けたプロセスが無いかを見ると判断できます。
ほかの選択肢はなぜ違うのか
- ア(原典は図。外部→1−1が1本,1−1→…:外部から入ってくる流れが1−1への1本だけで、親のプロセス1が受け取る入力2本と数が合いません。外へ出る流れは2本で合っていますが、入力が1本欠けているので、詳細化した図としてはつり合いが取れていません。
- ウ(原典は図。外部→1−1が2本,1−1→…:外部からの入力は2本で合っていますが、外へ出る流れが1−3からの1本だけで、親の出力2本に足りません。また1−2は入力を受けるのに出力が無く、受け取ったデータがどこへも行かないプロセスになっています。
- エ(原典は図。外部→1−1が2本,1−1→…:入力2本、出力2本と数は合っていますが、1−2には入力が無く、何も受け取らずに1−3へデータを送り出しています。入力の無いプロセスはデータを生み出せないので、DFDとして成り立たない図です。
出典:平成21年度 秋期 システムアーキテクト試験 午前Ⅱ 問2
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)