平成22年度 春期 午前Ⅱ 問21
設計
データ結合に関する問題
モジュールの独立性を高めるには,モジュール結合度を弱くする必要がある。モジュール間の情報の受渡し方法のうち,モジュール結合度が最も弱いものはどれか。
- ア共通域に定義したデータを,関係するモジュールが参照する。
- イ制御パラメタを引数として渡し,モジュールの実行順序を制御する。
- ウ入出力に必要なデータ項目だけをモジュール間の引数として渡す。
- エ必要なデータを外部宣言して共有する。
答えと解説を見る
✓ これが正解ウ入出力に必要なデータ項目だけをモジュール間の引数として渡す。
解説
必要なデータ項目だけを引数で渡すデータ結合が、最も弱い結合です。
モジュール結合度は、モジュールどうしがどれだけ強く依存し合っているかを表す尺度で、弱いほど独立性が高く、変更の影響が広がりにくくなります。入出力に必要なデータ項目だけを引数として渡す方法はデータ結合と呼ばれ、受渡しの内容が引数に限られ、相手の内部の動きにも関わらないので、結合度は最も弱くなります。制御のためのパラメタを渡す制御結合や、外部宣言や共通域のデータを複数のモジュールで共有する方法は、互いの内部に強く依存します。引数でデータ項目だけをやり取りするのが最も弱い、と覚えると選べます。
ほかの選択肢はなぜ違うのか
- ア共通域に定義したデータを,関係するモジュ…:共通域に定義したデータを複数のモジュールが参照する方法では、そのデータを使うモジュールすべてが共通域の構造に依存します。一か所を変えると関係するモジュール全体に影響が及ぶので、結合度は強くなります。
- イ制御パラメタを引数として渡し,モジュール…:制御パラメタを引数で渡し、相手のモジュールの実行順序を左右するのは制御結合です。呼ぶ側が相手の内部の処理の流れを知っている必要があり、データ項目だけを渡す場合より結合度は強くなります。
- エ必要なデータを外部宣言して共有する。:必要なデータを外部宣言して共有する方法では、宣言されたデータを通じて複数のモジュールがつながります。引数で必要な項目だけを渡す場合と比べて、どこで変更されるか追いにくく、結合度は強くなります。
出典:平成22年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問21
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)