SOAを説くときによくでてくる「疎結合」という言葉だが、その意味は2つの結合すべき要素(再構成の場合は各システムの機能など)を結合する際に、お互いに影響しあわないように結合するということである。影響しないというのは、いずれの要素に対して変更や拡張があっても、もう1つの要素には影響を与えないということだ。 ソフトウェア開発の原則に「Open-Close Principle(OCP)」と呼ばれる原則がある。この原則の「Open」はモジュールが拡張に対して開放されているという意味を指し、「Close」というのは変更があっても他には影響を与えないという意味を指している。 システムに対してこの原則を適用する技術が、疎結合になる。つまり疎結合によって、変更に対しては閉じていて、拡張に対しては開放されているように構築できるということだ。 しかし、疎結合は抽象的に議論することが難しい。2つの結合方式を比較