[2022 정보처리기사] 결합도(Coupling)과 응집도(Cohesion)

Haribo·2022년 3월 1일
0

정보처리기사

목록 보기
6/10
post-thumbnail

결합도(Coupling)과 응집도(Cohension)

결합도와 응집도 사진

결합도와 응집도는 모듈의 독립성을 판단하는 두 가지 지표이다.
결합도모듈과 모듈간의 상호 의존 정도이고, 응집도모듈 내부의 기능적인 집중 정도 이다.

즉, 결합도는 낮을수록 응집도는 높을 수록 이상적인 모듈화이다.

💾 결합도(Coupling)

결합도는 모듈 내부가 아닌 외부의 모듈과의 연관도 또는 모듈 간의 상호의존성을 나타내는 정도이다.

결합도의 특징 💾

  • 모듈 연관성 없음
  • 인터페이스 의존성
  • 복잡성 감소
  • 파급효과 최소화

결합도의 유형 💾

결합도의 유형은 내용 > 공통 > 외부 > 제어 > 스탬프 > 자료 의 결합도 순으로 결합도가 낮아진다.

유형설명
내용 결합도(Content Coupling)- 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 경합도
공통 결합도(Common Coupling)- 파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우의 결합도
외부 결합도(External Coupling)- 모듈이 다수의 관련 기능을 가질 때 모듈 안의 구성요소들이 그 기능을 순차적으로 수행할 경우의 결합도
제어 결합도(Control Coupling)- 어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어 신호를 이용하여 통신하는 경우의 결합도
- 하위 모듈에서 상위 모듈로 제어 신호가 이동하여 상위 모듈에게 처리 명령을 부여하는 권리 전도 현상이 발생하는 결합도
스탬프 결합도(Stamp Coupling)- 모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
자료 결합도(Data Coupling)- 모듈 간의 인터페이스로 전달되는 파라미터를 통해서만 모듈 간의 상호 작용이 일어나는 경우의 결합도

🧯 응집도(Cohension)

응집도는 모듈의 독립성을 나타내는 개념으로, 모듈 내부 구성요소 간 연관 정도이다.

응집도의 특징 🧯

  • 유사기능 영역 구성
  • 단일 책임할당
  • 함수 간 상호협력

응집도의 유형 🧯

응집도의 유형은 우연적 < 논리적 < 시간적 < 절차적 < 통신적 < 순차적 < 기능적 응집도 순서로 응집도가 높아진다.

유형설명
우연적 응집도(Coincidental Cohension)- 서로 간에 어떠한 의미 있는 연관 관계도 없는 기능 요소로 구성될 경우의 응집도
- 서로 다른 상위 모듈에 의해 호출되어 처리상의 연관성이 없는 서로 다른 기능을 수행할 경우의 응집도
논리적 응집도(Logical Cohension)- 유사한 성격을 갖거나 특정 형태로 분류되는 처리 요소들이 한 모듈에서 처리되는 경우의 응집도
시간적 응집도(Temporal Cohension)- 연관된 기능이라기보다는 특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우의 응집도
절차적 응집도(Procedural Cohension)- 모듈이 다수의 관련 기능을 가질 때 모듈 안의 구성요소들이 그 기능을 순차적으로 수행할 경우의 응집도
통신적 응집도(Communication Cohension)- 동일한 입력과 출력을 사용하여 다른 기능을 수행하는 활동들이 모여 있을 경우의 응집도
순차적 응집도(Sequential Cohension)- 모듈 내에서 한 활동으로부터 나온 출력 값을 다른 활동이 사용할 경우의 응집도
기능적 응집도(Functional Cohension)- 모듈 내부의 모든 기능이 단일한 목적을 위해 수행되는 경우의 응집도

https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=258036320

profile
개발 기록 남기는 중..

0개의 댓글