2018년 11월 22일
반복적 모델 (Iteration Model)
1. 높은 품질의 소프트웨어 개발 모델, 반복적 모델
(1) 반복적 모델 (Iterative Model)의 개념
- 사용자의 요구사항 일부분 혹은 제품의 일부분을 반복적으로 개발하여 고품질의 최종 시스템으로 완성해 가는 모델
(2) 반복적 모델의 종류
구분 | 내용 |
---|---|
증분형 (Incremental) | 사용자의 요구사항의 일부분을 반복적으로 개발하여 대상 범위를 확대해 가며 최종 제품을 완성해가는 과정 |
진화형 (Evolutional) | 시스템의 프로토타입을 개발하면서 지속적으로 개선하여 발전시켜 나가는 방법 |
2. 증분형 모델의 개념도 및 특징
(1) 증분형 모델 개념도

- 시스템의 일부분을 개발 후 단계적으로 범위를 확대해가며 개발하는 모델
(2) 증분형 모델 특징
특징 | 내용 |
---|---|
폭포수 모델 변형 | 폭포수 모델의 변형으로 증분을 따로 개발하여 통합 |
개발 기간 단축 | 개발그룹 별 증분의 병행 개발을 통해 개발 기간 단축 |
관리 어려움 | 증분의 수가 많고 병행 개발이 많으면 관리가 어려움 |
3. 진화형 모델의 개념도 및 특징
(1) 진화형 모델 개념도

- 전체 기능을 대상으로 개발하되 단계 별 기능을 더 완벽히 개발하는 형태
(2) 진화형 모델 특징
특징 | 내용 |
---|---|
Outline필요 | 다음 단계로의 진화를 위해 전체 과정에 대한 개요 필요 |
요구사항 진화 | 프로토타입을 만들고 다시 분석하여 요구사항을 진화 |
시제품 재사용 | 프로토타입의 시스템을 재사용을 전제로하여 진화 |
4. 증분형 모델과 진화형 모델의 비교
구분 | 증분형 모델 | 진화형 모델 |
---|---|---|
정의 | 제품 일부분을 반복 개발하면서 대상 범위를 확대하는 모델 | 핵심부분을 개발한 후 각 구성요소를 개선 발전해나가는 모델 |
기반 | 폭포수 모델을 기반 | 프로토타이핑 모델을 기반 |
방식 | 구조화한 각 증분 개발 후 통합 | 핵심부분 개발 후 각 요소 개선 |
장점 | 병행 개발 시 공정 단축 가능 | 요구사항 변경이 쉬움 |
단점 | 과도한 증분 시 위험 증가 | 요구사항 증가 시 일정 지연 |