モジュール結合度 【module coupling】

概要

モジュール結合度(module coupling)とは、ソフトウェアを構成するプログラムのモジュール(部品)の性質を表す用語の一つで、複数のモジュールの間の結びつきの強さのこと。ソフトウェアの設計はモジュール間の結合度が可能な限り低いほうが良いとされる。

内容結合

最も結合度が強いのが「内容結合」(content coupling)で、他のモジュールの内部動作に直接影響を受けたり、他のモジュールの内部の状態を直接参照しているような場合を指す。

共通結合

2番目に結合度が強いのは「共通結合」(common coupling)で、プログラム全体に渡って有効なグローバル変数などの資源を共有している状態を指す。

外部結合

3番目に結合度が強いのは「外部結合」(external coupling)で、プログラムの外部で定義されたデータ形式や通信プロトコルなどを共有している状態を指す。

制御結合

4番目に結合度が強いのは「制御結合」(control coupling)で、他のモジュールにその処理内容を指示するためのデータ(フラグなど)などを渡して内部の処理を制御する関係にある場合を指す。

スタンプ結合

5番目に結合度が強いのは「スタンプ結合」(stamp coupling)で、モジュール間で複数のデータを連結した複合的なデータ構造を受け渡すが、そのすべてを使用するわけではない状況を指す。

データ結合

6番目に結合度が強いのは「データ結合」(data coupling)で、引数や返り値など単純な型のデータを受け渡す場合を指す。一般的な関数やメソッドの結合はこれに当たるものが多い。

メッセージ結合/無結合

一般的にはスタンプ結合あるいはデータ結合が最も弱い結合度とされるが、さらにその下に、単に呼び出しを行えるだけでデータの受け渡しなどは行わない「メッセージ結合」(message coupling)や、まったく何の結びつきもない「無結合」(no coupling)が定義される場合もある。

(2023.8.25更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。