LoginSignup
1
0

まえがき

今回はスケーラビリティと結合度の関係性について考える。
一般的にこれらの間には、逆相関関係 トレードオフ関係がある傾向にある。
その理由を図解を通して考えていく。

密結合な場合

簡単のために2つのコンポーネントが密にべったりと結合した場合を考えよう。

スクリーンショット (429).png (41.8 kB)

この場合、赤い領域の方だけをスケールアップするには、ブルーの方も自ずとスケールアップしないといけないことは容易に想像がつく。

同様に、スケールダウンする際にも同じである。
べったりとくっついた状態では、どちらかだけを拡大したり縮小したりは難しい。

疎結合な場合

では、結合が疎な場合にはどうであろうか?
結合が疎とは、下図のようにくっついていない状態のことを指す。

スクリーンショット (439).png (71.6 kB)

この状態で、ブルーの方をスケールアップしようとしたら、赤い方は影響受けるだろうか?
もちろんくっついていないのだから、影響を受けずにいられる。

スケールダウンの場合にも同様である。
赤い方のみをスケールダウンさせたいって時には、密な結合の場合には
ブルーの方も一緒にスケールダウンさせなくてはならないが、
疎結合な場合にはブルーの方は影響を受けずに赤い方のみスケールダウンが可能である。

スクリーンショット (440).png (63.9 kB)

以上のことから、一部の設計パターンを除いて
スケーラビリティと結合度はトレードオフ関係にあるといえる。

これは是非とも常識にしておきたい品質特性同士の関係性である。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0