正答2
解説
正解は2です。
モジュール結合度は、モジュール同士がどれだけ強く依存しているかを表す尺度です。
結合度が弱いほどモジュールの独立性が高く、修正の影響が他に及びにくくなります。
必要なデータ項目だけを引数で渡すデータ結合が、最も弱い結合です。
【選択肢別解説】
1:× 一つのモジュールに多くの機能を詰め込むと、モジュールの役割がばらばらになり、モジュール強度(凝集度)が下がります。
モジュール間の結合度を弱める方法ではありません。
2:○ 必要なデータ項目だけを引数として渡すのはデータ結合です。
受け渡す情報が最小限なので、結合度は最も弱くなります。
3:× グローバルな領域を共有してデータをやり取りするのは、共通結合や外部結合です。
共有領域の変更が多くのモジュールに影響するので、結合度は強くなります。
4:× 呼出し先の処理の流れを制御する引数を渡すのは制御結合です。
呼出し側が相手の内部の論理を知っている必要があり、データ結合より強い結合です。
【ポイント】
結合度は弱い順に、データ結合、スタンプ結合、制御結合、外部結合、共通結合、内容結合です。
良い設計は「モジュール強度は強く、結合度は弱く」です。