IEIP_Note

모듈 Module

특징 설명
독립성 각각의 모듈은 독립성을 가지고 있다.
모듈의 독립성은 결합도와 응집도에 의해 측정된다.
다양한 조합 모듈 내부에는 모듈을 하나로 통합하는 수많은 조합이 존재할 수 있다.
재사용 모듈은 단독으로 컴파일할 수 있고 재사용이 가능하다.
영향 최소화 독립성이 높은 모듈일수록 수정 시
다른 모듈에 영향을 거의 미치지 않는다.

공통 모듈

원칙 설명
정확성
Correctness
해당 기능이 실제 시스템 구현 시 필요 여부를
정확하게 파악할 수 있도록 작성
명확성
Clarity
해당 기능에 대해 일관되게 이해되고
한 가지로 해석될 수 있도록 작성
완전성
Completeness
시스템이 구현될 때 필요하고, 요구되는 모든 것을 기술
일관성
Consistency
공통 기능 간에 상호 충돌이 없도록 작성
추적성
Traceability
공통 기능에 대한 요구 사항 출처와 관련 시스템 등의
유기적 관계에 대한 식별이 가능하도록 작성

모듈화 Modularization ☆☆☆

기법 설명
Routine SW 내에서 특정 동작을 수행하는 일련의 코드
기능을 가진 명령들의 모임
Main Routine 프로그램의 주요한 부분
전체의 개략적인 동작 절차를 표시하도록 만들어진 Routine
메인 루틴은 서브 루틴을 호출한다.
Subroutine 메인 루틴에 의해 필요할 때마다 호출되는 Routine

모듈화 특징

특징 설명
재사용성 모듈의 이름으로 호출하므로 다수가 이용 가능
매개변수로 값을 전달하여 사용 가능
모듈마다 사용할 변수를 정의할 필요 없이 상속해서 사용 가능
변수 선언을 효율적으로 하여 메모리를 유용하게 사용
복잡도 감소 프로그램의 복잡도가 절감
모듈은 분담하여 독립적으로 작성
관리 용이 시스템 개발 시 시간과 노력을 절감
시스템의 Debugging, Update가 수월하다.
품질 향상 시스템 개발 시 SW의 품질 증대

모듈화 특성

특성 설명
모듈성
Modularity
프로그램을 효율적으로 관리할 수 있도록 하는 SW 특성
시스템 분해 및 추상화를 통해 SW 성능 향상을 위한
적합한 프로그램 단위
응집도
Cohesion
모듈 내부에서 구성 요소 간에 밀접한 관계를 맺고 있는 정도
응집도 높음: 필요한 요소들로 구성됨
응집도 낮음: 관련 없은 요소들로 구성됨
모듈 간 최소한의 상호 작용으로 하나의 기능 만을 수행하는 정도
결합도
Coupling
모듈 간에 어느 정도 관련성이 있는 지를 나타내는 정도
관련이 적을 수록 모듈 독립성이 높아 모듈 간 영향이 적어짐