정보처리기사[실기]

[개념정리] 결합도와 응집도

microsaurs 2024. 10. 15. 15:49

💡 결합도

내용 결합도
Content Coupling
다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도 ➡️ 가장 높음



















➡️ 가장 낮음
공통 결합도
Common Coupling
파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는
식으로 상호작용을 하는 경우의 결합도
외부 결합도
External Coupling
두 개의 모듈이 외부에서 도입된 데이터 포맷, 통신 프로토콜 또는 디바이스
인터페이스를 공유할 경우 결합도
제어 결합도
Control Coupling
어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로
제어 신호를 이용하여 통신하는 경우의 결합도 권리 전도 현상이 발생하는 결합도
스탬프 결합도
Stamp Coupling
모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
데이터 결합도
Data Coupling
모듈 간의 인터페이스로 전달되는 파라미터를 통해서만 모듈 간의 상호 작용이 일어나는
경우의 결합도

 

➡️ 결합도가 낮아질수록 품질은 향상

 

 

💡 응집도

우연적 응집도
Coincidental Cohension
모듈 내부의 각 구성요소가 연관이 없을 경우의 응집도
➡️ 가장 낮음























➡️ 가장 높음

논리적 응집도
Logical Cohension
한 모듈에서 처리되는 경우의 응집도
시간적 응집도
Temporal Cohension
특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우의 응집도
절차적 응집도
Procedural Cohension
모듈 안의 구성요소들이 그 기능을 순차적으로 수행할 경우의 응집도
통신적 응집도
communication cohension
동일한 입력과 출력을 사용하여 다른 기능을 수행하는 활동들이 모여 있을 경우 응집도
순차적 응집도
Sequential Cohension
한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우의 응집도
기능적 응집도
Functional Cohension
모든 기능이 단일한 목적을 위해 수행되는 경우의 응집도

 

➡️ 응집도가 높아질수록 품질은 향상