개발이글스
[정처기 실기] 7-2 공통 모듈 구현 본문
📙재사용
🏷️재사용 개념
➡️ 재사용은 목표시스템의 개발시간 및 비용절감을 위해서 검증된 기능을 파악하고 재구성하여 시스템에 응용하기 위한 최적화 작업이다.
🏷️재사용 종류
1️⃣ 재공학: 기존 소프트웨어를 버리지 않고 기능을 개선시키거나 기능을 새로운 소프트웨어로 재활용하는 소프트웨어 재사용기법
2️⃣ 재개발: 기존 시스템 내용을 참조하여 완전히 새로운 시스템을 개발, 기존 시스템에 새로운 기능을 추가, 기존 시스템의 기능을 변경하는 기법
🏷️모듈의 개념
➡️모듈은 그 자체로 하나의 완전한 기능을 수행할 수 있는 독립된 실체이다.
🏷️모듈의 특징
- 각각의 모듈은 상대적으로 독립성을 가지고 있다.
- 모듈은 단독으로 컴파일할 수 있고, 재사용할 수 있다.
- 모듈의 독립성은 결합도와 응집도에 의해 측정되며, 독립성을 높이려면 모듈의 결합도는 약하고낮게, 응집도는 강하게높게, 모듈의 크기는 작게 만들어야한다.
🏷️응집도의 개념
➡️ 응집도는 모듈의 독립성을 나타내는 정도로, 모듈 내부 구성요소 간 연관정도이다. 하나의 모듈은 하나의 기능을 수행할수록 응집도가 높다.
🏷️응집도의 유형 [응집도는 높을 수록 좋다!] - 우논시절 통순기
1️⃣ 우연적 응집도(Coincidental Cohesion): 모듈 내부의 각 구성요소가 연관이 없을 경우의 응집도
2️⃣ 논리적 응집도(Logical Cohesion): 유사한 성격, 특정형태로 분류되는 처리요소들이 한모듈에서 처리되는 경우의 응집도
3️⃣ 시간적 응집도(Temporal Cohesion): 연관된 기능이라기보다는 특정시간에 처리되어야하는 활동들을 한모듈에서 처리할 경우의 응집도
4️⃣ 절차적 응집도(Procedural Cohesion) : 모듈이 다수의 관련기능을 가질 때 모듈안의 구성요소들이 그 기능을 순차적으로 수행할 경우의 응집도
5️⃣ 통신적 응집도(Communication Cohesion): 동일한 입출력을 사용하여 다른기능을 수행하는 활동들이 모여있을 경우의 응집도
6️⃣ 순차적 응집도(Sequential Cohesion): 모듈 내에서 한 활동으로부터 나온 출력값을 다른 활동이 사용할 경우의 응집도
7️⃣ 기능적 응집도(Functional Cohesion): 모듈내부의 모든 기능이 단일한 목적을 위해 수행되는 경우의 응집도
🏷️결합도의개념
➡️ 모듈 내부가 아닌 외부의 모듈과의 연관도 또는 모듈간의 상호의존성이다.
🏷️결합도의 유형 [결합도는 낮을수록 좋다!] - 내공외제스자
1️⃣ 내용 결합도(Content Coupling): 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도
2️⃣ 공통 결합도 (Comon Coupling ): 공유되는 공통데이터 영역을 여러모듈이 사용할 때의 결합도
3️⃣ 외부 결합도 (External Coupling ): 외부모듈에서 선언한 데이터를 외부의 다른 모듈에서 참조할 때의 결합도
4️⃣ 제어 결합도 (Control Coupling ): 어떤모듈이 다른모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어신호를 이용해서 통신하는 경우의 결합도
5️⃣ 스탬프 결합도 (Stamp Coupling ): 모듈간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
6️⃣ 자료 결합도 (Data Coupling ): 모듈간의 인터페이스로 전달되는 파라미터를 통해서만 모듈 간의 상호작용이 일어나는 경우의 결합도
🏷️ 팬인 및 팬아웃
팬인: 모듈 자신을 기준으로 모듈에 들어오면 팬인
팬아웃: 모듈 자신을 기준으로 모듈에서 나가면 팬아웃
'Others > 정보처리기사' 카테고리의 다른 글
[정처기 실기] 8-2 소프트웨어 개발 보안 구현 (2) | 2024.10.15 |
---|---|
[정처기 실기] 8-1 소프트웨어 개발 보안 설계 (6) | 2024.10.14 |
[정처기 실기] 7-1 개발환경 구축 (1) | 2024.10.13 |
[정처기 실기]6-2 응용 SQL 작성하기 (1) | 2024.10.13 |
[정처기 실기]6-1 데이터베이스 기본 (1) | 2024.10.13 |