教育・資格支援

【3分で理解】モジュール結合度6種類をわかりやすく【ITパス/基本情報】

今回はIPAの情報処理試験で頻出の
「モジュール間結合度」について解説します。

モジュール間結合度は、ITパスポート・基本情報技術者試験で毎年のように出題される重要テーマですが、
「種類が多くて覚えにくい」「強弱の順番が混乱する」と苦手にする人がとても多いポイントです。

この記事では、結合度の考え方と強さの順番を、具体例を交えながらわかりやすく整理していきます。

モジュール間結合度とは?

モジュール間結合度とは、複数のモジュールがどれだけ強く依存しているかを示す指標で、結合度が強いほどモジュール同士が密接に関係し、変更の影響を受けやすくなります。

ですので、モジュール間結合度をできるだけ弱く(疎結合)することが望ましいです。


モジュール間結合度の種類(強い順)

それでは、モジュール間結合度を「強い(避けるべき)」→「弱い(望ましい)」の順に解説します。

1. 内容結合(Content Coupling)【最も避けるべき】

モジュール間で、他のモジュールの内部実装に直接アクセスする状態。

特徴
  • 完全に依存してしまい、変更が難しくなる
  • メンテナンス性が極端に悪化する
  • あるモジュールが別のモジュールの内部変数を直接変更する
  • 別のモジュールの内部メソッドを直接呼び出す

2. 共通結合(Common Coupling)

モジュール間でグローバル変数を共有する状態。

特徴
  • どのモジュールがデータを変更したのか把握しづらい
  • 変更の影響範囲が広がる
  • すべてのモジュールが同じグローバル変数を読み書きする

3. 外部結合(External Coupling)

モジュール間で外部リソース(ファイル、データベース、環境変数など)を共有する状態。

特徴
  • 外部システムの影響を受けやすい
  • テストや保守が難しくなる
  • 2つのモジュールが同じファイルを直接操作する
  • 環境変数を使って設定を共有する

4. 制御結合(Control Coupling)

モジュール間で制御用のフラグ(true/false など)を渡し、処理を制御する状態。

特徴
  • 呼び出し側が処理の流れを制御するため、依存関係が強くなる
  • モジュールの独立性が損なわれやすい
  • 関数の引数としてフラグ(true/false)を渡し、処理の流れを変える

5. スタンプ結合(Stamp Coupling)

モジュール間でデータ構造(構造体やクラスなど)を受け渡す状態。

特徴
  • データ結合よりも結合が強くなる
  • 必要のない情報まで渡してしまう可能性がある
  • 関数の引数としてオブジェクト全体を渡すが、実際には一部のデータしか使用しない

6. データ結合(Data Coupling)【最も望ましい】

モジュール間のデータの受け渡しが単純なデータ構造(変数や配列など)で行われる状態。

特徴
  • モジュール間の関係が最も緩く、独立性が高い
  • 変更の影響が最小限
  • 関数の引数として単純なデータ項目(整数、文字列など)を渡す

モジュール間結合度の比較表

以下、表にまとめます。

結合度の種類結合度独立性推奨度
内容結合最も高い最も低い他モジュールの内部を直接操作×××(避けるべき)
共通結合高い低いグローバル変数を共有××
外部結合やや高いやや低いファイルやDBを共有×
制御結合普通普通フラグを引数で渡す
スタンプ結合やや低いやや高い構造体を引数で渡す
データ結合低い高い変数を引数で渡す◎(推奨)

まとめ

以上、今回はモジュール間結合度について簡単に説明してみました。

情報処理試験対策として、以下のように覚えておきましょう笑

情報処理試験対策

結合度は「内容結合」が最も避けるべきで、「データ結合」が最も望ましい

「結合度が強ければ悪」「結合度が低ければ正義」

情報処理試験対策であれば、これで十分だと思います。

モジュール間結合度を聞かれるのは選択問題のはずなので、これ覚えておくだけで正しい選択し選べます^^

情報処理試験でモジュール間結合度の問題が出てきたら、確実に正解しておきましょうね^^

それではまた!


✅ ITキャリアを育てるコミュニティ「ITキャリアラボ」

「独学だと続かない…」
「相談できる人がいない…」
「同じ目標の仲間がほしい…」

そんな方向けに、
無料のLINEコミュニティ『ITキャリアラボ』を運営しています。

エンジニア歴20年・講師の僕が、

・資格学習のコツ
・勉強法アドバイス
・キャリア相談
・IT業界のリアル情報

などを発信&質問対応しています。

📌 参加無料・匿名OK・LINEだけで完結
📌 まずは「話を聞くだけ」でも大歓迎

独学で悩む時間を減らしたい人は、気軽に頼ってください。

👇お気軽にどうぞ

ITキャリアラボ

【無料】ITの悩みを気軽に相談できるコミュニティ・ITキャリアラボ

IT業界を目指すあなたへ|「ITキャリアラボ」無料コミュニティのご案内 「IT業界に転職したいけど、何から始めればいいかわからない…」「資格の勉強が続かない…」「相談できる人がいない…」 そんな不安、 ...

続きを見る


✅ 本気で最短合格を目指す方へ(個別サポート)

「一人だと不安…」
「できればマンツーマンで見てほしい」
「最短で確実に合格したい」

そんな方向けに、
MENTAで個別の学習サポートも行っています。

・学習計画の作成
・チャット質問し放題
・週1回のZoom面談
・合格まで伴走サポート

まずは無料相談からでOKです。

👇 詳細はこちらから

個別サポート

【ITパスポート・基本情報】独学が不安な人向け伴走型個別サポート

  【ITパスポート・基本情報】独学に限界を感じていませんか? こんな悩み、ありませんか? IT資格は「正しい順番」と「効率的なやり方」さえ分かれば、実はそこまで難しくありません。 でも、や ...

続きを見る

  • この記事を書いた人
  • 最新記事

ユウイチ

20年間ソフトウェアエンジニアとして働いた後、フリーランスを経て現在は1人社長として活動。 プログラミング講師やIT教育を中心に活動しながら、趣味でゲーム開発やシナリオ作成にも挑戦中。どちらも「創ることを通じて人を笑顔にしたい」という想いから始めた、大切なライフワーク。 「創造と教育で、人生に迷う人の“自由な一歩”を支援」を理念に発信中。

-教育・資格支援