프로토타입 모델(Prototyping)
I. 프로토타입 모델(Prototyping) 개요
가. 프로토타입 모델 정의
고객은 자신이 진정으로 원하는 시스템이 무엇인지 구체적으로 모르거나 요구사항이 어떻게 변할지 모르는 경우가 있다. 또한, 개발자는 시스템을 개발할 때 고객의 요구사항을 불완전하게 파악한채로 프로젝트를 진행하는 경우도 있다. 이러한 경우에 유용하게 사용되는 프로세스 모델의 원형(프로토타입)모델이다.
실제 개발 이전에 사용자나 고객이 시제품을 보고 평가하여 요구사항을 검증하는데 목적이 있다.
II. 프로토타입 모델 순서
가. 프로토타입 모델 단계
프로토타입 모델은 폭포수 모델의 단점을 보완하기 위해 점진적으로 시스템을 개발해 나가는 접근방법으로 한다.
가. 프로토타입 단계별 설명
1) 프로토타입 정제
프로토타입이 어떻게 수정되어야 하는지 결정한다.
2) 요구사항 수집
고객의 원하는 소프트웨어의 요구사항으 수집한다. 소프트웨어의 목적을 정의하고, 요구사항은 무엇이며, 가장 핵심적인 기능과 구체적으로 정의해야할 영역을 설정한다.
3) 프로토타입 설계
시스템의 사용자 인터페이스에 초점을 맞춰 설계를 한다. 프로토타입에 포함할 기능과 포함하지 않을 기능을 선별한다.
4) 프로토타입 개발
실제적으로 구현하는 단계로 고객이 요구하는 기능을 구현하는데 필요한 요소를 파악하는데 중점을 둔다. 성능이나 시스템간의 연동 , 오류 관리 및 데이터 검증 등은 최소화하거나 무시할 수 있다.
5) 고객 평가
가장 중요한 단계로 평가는 고객과, 개발자가 함께 평가해서 개발될 소프트웨어의 요구사항을 정제하는데 중요한 정보로 활용한다.
III. 프로토타입 모델의 장점, 단점
가. 장점
요구사항이 모호하거나 명세화 하기 힘든 경우나 실현가능성이 모호한 경우 사용한다.
실제 제품이 만들어져 사용자에게 보급되기 전에 미리 사용자에게 보여주는데 사용한다.
나. 단점
고객이 프로토타입을 완제품으로 오해하여 약간의 수정으로 완제품이 될 것이라고 기대할 수 있다.
적절하지 않은 시스템의 구조를 포함할 가능성이 존재한다.
시스템의 극한상황의 고려가 힘들고 성능을 평가가 쉽지 않거나 타 시스템과의 연동, 통합에 대한 결과를 쉽게 얻기 힘들수 있다.
이 글은 스프링노트에서 작성되었습니다.