본문 바로가기
개발/개념

[Module] 공통 모듈

by BENGGRI 2021. 1. 25.
반응형

1. 공통모듈

1. 모듈 개념

  • 모듈은 크게 독립된 하나의 소프트웨어 또는 하드웨어 단위를 지칭하는 용어
  • 모듈화를 통해 분리된 시스템의 각 기능들을 서브프로그램, 서브 루틴, 소프트웨어 내의 단위 프로그램, 작업 단위 등과 같은 의미로 사용

2. 모듈의 특징

  • 각 모듈은 상대적으로 독립성을 가지고 있습니다.
  • 모듈 내부에는 그 모듈을 하나로 통합하는 수많은 조합이 존재할 수 있습니다.
  • 모듈은 단독으로 컴파일할 수 있으며 재사용할 수 있습니다.
  • 독립성이 높은 모듈일수록 수정 시 다른 모듈에 영향을 거의 미치지 않고 오류가 발생 시에도 쉽게 해결할 수 있습니다.

 

2. 결합도

  • 외부의 모듈과의 연관도
  • 상호의존성
  • 모듈 간의 관련성을 측정하는 척도
유형 설명 결합도 품질
내용
결합도
다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우 높음 나쁨
공통
결합도
파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우 | |
외부
결합도
두개의 모듈이 외부에서 도입된 데이터 포맷, 통신 프로토콜 또는 디바이스 인터페이스를 공유할 경우 | |
제어
결합도
단순 처리할 대상인 값만 전달되는 게 아니라 어떻게 처리를 해야한다는 제어 요소가 전달되는 경우 | |
스탬프
결합도
모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우
자료
결합도
모듈 간의 인터페이스로 전달되는 파라미터를 통해서만 모듈간의 상호 작용이 일어나는 경우 낮음 좋음

 

3. 응집도

  • 모듈의 독립성
  • 모듈 내부 구성요소 간 연관 정도
유형 설명 응집도 품질
기능적
응집도
모듈 내부의 모든 기능이 단일한 목적을 위해 수행되는 경우 높음 좋음
순차적
응집도
모듈 내에서 한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우 | |
통신적 
응집도
동일한 입력과 출력을 사용하여 다른 기능을 수행하는 활동들이 모여있을 경우 | |
절차적
응집도
모듈이 다수의 관련 기능을 가질 때 모듈 안의 구성요소들이 그 기능을 순차적으로 수행할 때 | |
시간적 
응집도
연관된 기능이라기보다 특정 시간에 처리되어야 하는 활동들을 한 모듈에서 처리할 경우 | |
논리적 
응집도
유사한 성격을 갖거나 특정 형태로 분류되는 처리 요소들이 한 모듈에서 처리되는 경우
우연적 
응집도
모듈 내부의 각 구성요소가 연관이 없을 경우 낮음 나쁨

 

4. 모듈의 독립성

결국 모듈의 독립성은 결합도와 응집도에 의해 측정됩니다.

독립성이 높은 모듈일 수록 모듈의 결합도는 낮게, 응집도는 높게 만들어야합니다.

 

모듈의 독립성이 높을 수록 개발할 때 집중력이 좋습니다.


하나의 함수에서 하나의 행위만 하도록 코딩하는 습관이 필요합니다.

반응형

'개발 > 개념' 카테고리의 다른 글

Web Server, WAS  (2) 2022.10.07
[가상화, 클라우드] 가상화와 클라우드  (0) 2021.02.23
[테스트] 애플리케이션 테스트  (0) 2021.02.03
[UI] UI 설계  (0) 2021.02.02
[UI] UI  (0) 2021.02.02

댓글