728x90
반응형
※ 공부 내용의 복습 개념으로 정리된 글입니다. - 출처 시나공
공통 모듈의 개요
공통 모듈은 여러 프로그램에서 공통적으로 사용할 수 있는 모듈을 의미합니다.
- 자주 사용되는 계산식이나 매번 필요한 사용자 인증과 같은 기능들이 공통 모듈로 구성될 수 있습니다.
- 모듈의 재사용성 확보와 중복 개발 회피를 위해 설계 과정에서 공통 부분을 식별하고 명세를 작성할 필요가 있습니다.
- 공통 모듈을 구현할 때는 다른 개발자들이 해당 기능을 명확히 이해할 수 있도록 다음의 명세 기법을 준수해야 합니다.
명세 기법
- 정확성(Correctness)
- 시스템 구현 시 해당 기능이 필요하다는 것을 알 수 있도록 정확히 작성합니다.
- 명확성(Clarity)
- 해당 기능을 이해할 때 중의적으로 해석되지 않도록 명확하게 작성합니다.
- 완전성(Completeness)
- 시스템 구현을 위해 필요한 모든 것을 기술합니다.
- 일관성(Consistency)
- 공통 기능들 간 상호 충돌이 발생하지 않도록 작성합니다.
- 추적성(Traceability)
- 기능에 대한 요구사항의 출저, 관련 시스템 등의 관계를 파악할 수 있도록 작성합니다.
728x90
재사용(Reuse)
재사용은 비용과 개발 시간을 절약하기 위해 이미 개발된 기능들을 파악하고 재구성하여 새로운 시스템 또는 기능 개발에 사용하기 적합하도록 최적화 시키는 작업입니다.
- 재사용을 위해서는 누구나 이해할 수 있고 사용이 가능하도록 사용법을 공개해야합니다.
- 재사용되는 대상은 외부 모듈과의 결합도는 낮고, 응집도는 높아야합니다.
재사용 규모에 따른 분류
- 함수와 객체
- 클래스나 메소드 단위의 소스 코드를 재사용합니다.
- 컴포넌트
- 컴포넌트 자체에 대한 수정 없이 인터페이스를 통해 통신하는 방식으로 재사용합니다.
- 애플리케이션
- 공통된 기능들을 제공하는 애플리케이션을 공유하는 방식으로 재사용합니다.
※ 함수 = 메소드
객체의 데이터를 처리하는 알고리즘
※ 객체
데이터와 함수를 캡슐화한 소프트웨어 모듈
※ 클래스
객체를 정의하는 틀
※ 컴포넌트
하나 이상의 클래스로 작성되는 실행코드 기반의 모듈
※ 애플리케이션
어떠한 목적을 갖고 개발된 소프트웨어
효과적인 모듈 설계 방안
- 결합도는 줄이고 응집도는 높여서 모듈의 독립성과 재사용성을 높입니다.
- 모듈의 제어 영역 안에서 그 모듈의 영향 영역을 유지시킵니다.
- 복잡도와 중복성을 줄이고 일관성을 유지시킵니다.
- 모듈의 기능은 예측이 가능해야 하며 지나치게 제한적이어서는 안 됩니다.
- 유지보수가 용이해야 합니다.
- 모듈 크기는 시스템의 전반적인 기능과 구조를 이해하기 쉬운 크기로 분해합니다.
- 하나의 입구와 하나의 출구를 갖도록 해야 합니다.
- 인덱스 번호나 기능 코드들이 전박적인 처리 논리 구조에 예기치 못한 영향을 끼치지 않도록 모듈 인터페이스를 설계해야 합니다.
- 효과적인 제어를 위해 모듈 간의 계층적 관계를 정의하는 자료가 제시되어야 합니다.
※ 결합도 / 응집도
- 결합도
- 모듈 간에 상호 의존하는 정도 또는 두 모듈 사이의 연관 관계
- 응집도
- 모듈의 내부 요소들의 서로 관련되어 있는 정도
※ 모듈의 제어 / 영향 영역
- 모듈의 제어 영역
- 프로그램의 계층 구조 내에서 어떤 특정 모듈이 제어하는 하위 모듈
- 모듈의 영향 영역
- 특정 모듈이 다른 모듈들에게 미치게 되는 영향의 범위
728x90
반응형
'정보처리산업기사' 카테고리의 다른 글
정보처리산업기사 - 데이터베이스 이해 - 자료 구조 (0) | 2024.09.04 |
---|---|
정보처리산업기사 - 프로그래램 구현 - 보안 및 API (2) | 2024.09.03 |
정보처리산업기사 - 프로그래램 구현 - 모듈 (4) | 2024.09.01 |
정보처리산업기사 - 프로그래램 구현 - 서버 개발 (0) | 2024.08.31 |
정보처리산업기사 - 프로그래램 구현 - 개발 환경 구축 (2) | 2024.08.30 |