- Cohesion
- 결합도(Coupling)와 함께 모듈의 독립성을 판단하는 지표
- 응집도는 모듈 내부의 기능적인 응집 정도를 나타낸다.
- 결합도는 모듈과 모듈간의 상호 결합 정도를 나타낸다.
- 응집도는 높을수록 좋고 결합도는 낮을수록 이상적이다.
종류
- 우연적 응집도 < 논리적 응집도 < 시간적 응집도 < 절차적 응집도 < 통신적 응집도 < 순차적 응집도 < 기능적 응집도[1]
- 기능적 응집도(Functional Cohesion)
- 모듈 내부의 모든 기능이 단일한 목적을 위해 수행되는 경우
- 순차적 응집도(Sequential Cohesion)
- 모듈 내의 한 활동으로부터 나온 출력값을 모듈 내의 다른 활동이 사용할 경우
- 통신적 응집도(Communicational Cohesion)
- 서로 다른 기능을 수행하지만 동일한 입력과 출력을 사용하는 활동들이 모여있을 경우
- 절차적 응집도(Procedural Cohesion)
- 모듈 안의 구성요소들이 서로 다른 기능을 하지만 그 기능을 순차적으로 수행할 경우
- 시간적 응집도(Temporal Cohesion)
- 연관된 기능이라기 보단 특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우
- 논리적 응집도(Logical Cohesion)
- 실제와 달리 논리적으로만 같은 그룹으로 분류되는 처리 요소들이 한 모듈에서 처리되는 경우
- 우연적 응집도(Coincidental Cohesion)
- 모듈 내부의 각 구성요소들이 연관이 없을 경우