令和6年度 春期 午前Ⅱ 問5
設計
モジュール結合度となるもの
モジュール間のデータの受渡し方法のうち,最も低いモジュール結合度となるものはどれか。
- ア単一のデータ項目を大域的データで受け渡す。
- イ単一のデータ項目を引数で受け渡す。
- ウデータ構造を大域的データで受け渡す。
- エデータ構造を引数で受け渡す。
答えと解説を見る
✓ これが正解イ単一のデータ項目を引数で受け渡す。
解説
単一のデータ項目を引数で渡すのが、最も結合度の低い形です。
モジュール結合度は、モジュール同士がどれだけ強く結び付いているかを表す尺度で、低いほど独立性が高く、修正の影響が広がりにくくなります。見分ける軸は二つあります。一つは受渡しの経路で、引数で渡すほうが、大域的データを介するより結び付きが弱くなります。大域的データは、それを参照するどのモジュールからも書き換えられるからです。もう一つは渡す単位で、必要な単一のデータ項目だけを渡すほうが、データ構造ごと渡すより相手の内部の形に縛られません。二つの軸のどちらでも弱い側に当たる、引数で単一項目を渡す形がデータ結合で、最も低い結合度になります。経路は引数、単位は必要最小限、と覚えておくと選べます。
ほかの選択肢はなぜ違うのか
- ア単一のデータ項目を大域的データで受け渡す…:単一のデータ項目であっても、大域的データを介すると、そのデータを参照する全モジュールが同じ場所を通じてつながります。誰がいつ書き換えたかを追う必要が生じ、引数で渡す形より結合度は高くなります。
- ウデータ構造を大域的データで受け渡す。:データ構造を大域的データに置いて共有する形は、経路と単位の両方で強い側に当たります。構造の一部を変えるだけで、それを参照するモジュールすべてに影響が及びうるため、四つの中で最も結合度が高い形です。
- エデータ構造を引数で受け渡す。:引数で渡す点はよいのですが、データ構造をまるごと渡すと、受け取る側は使わない項目も含めて構造の形を前提にします。構造の変更が相手に響くため、単一項目を渡す形よりは結合度が高くなります。
出典:令和6年度 春期 システムアーキテクト試験 午前Ⅱ 問5
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)