반복적 모델 (Iteration Model) 

I. 높은 품질의 소프트웨어 개발 모델반복적 모델

가. 반복적 모델 (Iterative Model)의 개념

사용자의 요구사항 일부분 혹은 제품의 일부분을 반복적으로 개발하여 고품질의 최종 시스템으로 완성해 가는 모델

나. 반복적 모델의 종류

구분

내용

증분형

(Incremental)

사용자의 요구사항의 일부분을 반복적으로 개발하여 대상 범위를 확대해 가며 최종 제품을 완성해가는 과정

진화형

(Evolutional)

시스템의 프로토타입을 개발하면서 지속적으로 개선하여 발전시켜 나가는 방법


II. 증분형 모델의 개념도 및 특징

가.증분형 모델 개념도

  • 시스템의 일부분을 개발 후 단계적으로 범위를 확대해가며 개발하는 모델

나. 증분형 모델 특징

특징

내용

폭포수 모델 변형

폭포수 모델의 변형으로 증분을 따로 개발하여 통합

개발 기간 단축

개발그룹 별 증분의 병행 개발을 통해 개발 기간 단축

관리 어려움

증분의 수가 많고 병행 개발이 많으면 관리가 어려움

 

III. 진화형 모델의 개념도 및 특징

가. 진화형 모델 개념도

전체 기능을 대상으로 개발하되 단계 별 기능을 더 완벽히 개발하는 형태

나. 진화형 모델 특징

특징

내용

Outline필요

다음 단계로의 진화를 위해 전체 과정에 대한 개요 필요

요구사항 진화

프로토타입을 만들고 다시 분석하여 요구사항을 진화

시제품 재사용

프로토타입의 시스템을 재사용을 전제로하여 진화

 

IV. 증분형 모델과 진화형 모델의 비교

구분

증분형 모델

진화형 모델

정의

제품 일부분을 반복 개발하면서 대상 범위를 확대하는 모델

핵심부분을 개발한 후 각 구성요소를 개선 발전해나가는 모델

기반

폭포수 모델을 기반

프로토타이핑 모델을 기반

방식

구조화한 각 증분 개발 후 통합

핵심부분 개발 후 각 요소 개선

장점

병행 개발 시 공정 단축 가능

요구사항 변경이 쉬움

단점

과도한 증분 시 위험 증가

요구사항 증가 시 일정 지연

 

 

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^