結合度

結合度（けつごうど、カップリング、coupling）とは、コンピュータープログラミングで用いられる（機械よりは）人間寄りの尺度。ソフトウェア測定法の一種。利用者またはメンテナンスをする者にとって対象を利用、保守しやすいように対象の内容が整理、分割できているかどうかを、その状態によって段階に分けて表現する。
概説.
コンピュータープログラマにとっては、既存のソフトウェア製品に対して　無い機能の追加、対応していないデータへの対応といった事柄に対応する場面がある。この際、全ての既存のソフトウェア製品の内部（より具体的にはソースコード）の各機能各データに対して、どのデータはどこで利用されまたどこで利用されていないか確実に判断できるよう整理、分割が行き届いている状態を結合度が低いと表現する。結合度は低いほど好ましい。逆に結合度が高いとは、例えば1つのデータの持ち方の変更が　部品の関連性を伝って波及し（遠く離れた、と感じる）意図しなかった箇所での不具合を招く。1つの変更に対して　広範囲かつ複数の散在した箇所の部品の動作を改造する必要が出てくることがある。
結合度の程度.
結合度の概念モデル.
結合度は、品質尺度であり、ソースコードを調査検討することで結合度の程度が分類される。高い結合度から低い結合度までを以下のように分類できる: