平成22年度春期 エンベデッドシステムスペシャリスト試験 午前II 問21
【問題21】
モジュールの独立性を高めるには,モジュール結合度を弱くする必要がある。モジュール間の情報の受渡し方法のうち,モジュール結合度が最も弱いものはどれか。
共通域に定義したデータを,関係するモジュールが参照する。
制御パラメタを引数として渡し,モジュールの実行順序を制御する。
入出力に必要なデータ項目だけをモジュール間の引数として渡す。
【解説】
モジュール結合度は、モジュール間の依存度を示し、結合度が弱いほどモジュールの独立性が高くなります。以下はモジュール結合度の種類と特徴です(弱い順)。
- データ結合(最も弱い):
モジュール間で必要最小限のデータだけを引数として渡します。
独立性が高く、影響範囲が小さい。
- 制御結合:
制御パラメータを引数として渡し、モジュールの動作を制御します。
モジュール間の依存が発生します。
- 外部結合:
モジュールが外部で定義されたデータを共有します。
変更の影響範囲が広がりやすい。
- 共通結合(最も強い):
モジュール間で共通のデータ領域を共有します。
データの変更がすべてのモジュールに影響を及ぼします。
各選択肢の解説
- ア: 共通域に定義したデータを,関係するモジュールが参照する。
誤り。共通結合に該当し、結合度が最も強いです。
- イ: 制御パラメタを引数として渡し,モジュールの実行順序を制御する。
誤り。制御結合に該当し、結合度は中程度です。
- ウ: 入出力に必要なデータ項目だけをモジュール間の引数として渡す。
正しい。データ結合に該当し、結合度が最も弱いです。
- エ: 必要なデータを外部宣言して共有する。
誤り。外部結合に該当し、結合度は高いです。
【答え】
ウ: 入出力に必要なデータ項目だけをモジュール間の引数として渡す。
出典:平成22年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問21