응집도 : 모듈 내부의 연관 정도
결합도 : 모듈과 모듈의 연관 정도
응집도
기능>순차>통신>절차>시간>논리>우연
기능적 응집도
하나의 명확한 목적/기능을 수행하는 모듈 (최고 수준)
순차적 응집도
한 기능의 출력이 다음 기능의 입력이 됨
통신적 응집도
동일한 데이터를 사용하는 여러 기능을 함께 묶음
절차적 응집도
특정 절차를 따라 순차적으로 수행되는 기능을 묶음
시간적 응집도
실행 시점이 같은 기능을 묶음 (ex. 초기화 루틴)
논리적 응집도
비슷한 성격의 여러 기능이 논리적으로 그룹화. (e.g. 하나의 함수에 여러 switch-case로 동작 구분)
우연적 응집도
관련 없는 기능이 우연히 하나의 모듈에 있음. (최악)
결합도
내용>공통>외부>제어>스탬프>데이터
내용 결합도
한 모듈이 다른 모듈의 내부 내용까지 접근함 (예: 변수 직접 수정) (최악)
공통 결합도
여러 모듈이 공통 전역 데이터를 사용
외부 결합도
외부 시스템/파일/디바이스에 의존
제어 결합도
한 모듈이 다른 모듈에 제어 정보(플래그 등)를 전달
스탬프 결합도
필요 이상의 데이터 구조(예: 전체 객체)를 전달함. 일부 정보만 필요하지만 전체를 넘김
데이터 결합도
필요한 데이터만 인자로 전달, 가장 이상적인 형태 (최고 수준)
'CS > SoftwareEngineering' 카테고리의 다른 글
테스트 목적에 따른 분류 (0) | 2025.04.17 |
---|---|
형상 관리 도구 (0) | 2025.04.17 |
정적/동적 다이어그램 (0) | 2025.04.16 |
GoF 디자인 패턴 (0) | 2025.04.16 |
테스팅 기법 (0) | 2025.04.14 |