정처기; 정보처리기사 필기 공부
프로토타입 모형은 소프트웨어 개발 초기에 사용자의 요구사항을 명확하게 파악하기 위해 실제 개발될 소프트웨어에 대한 견본(시제품)을 먼저 만들어 사용자에게 보여주고, 피드백을 받아 수정해나가는 개발 방법론입니다.
주요 특징:
요구사항 파악 목적:
사용자의 요구사항이 불명확하거나 변경 가능성이 높을 때, 이를 정확히 확인하기 위한 목적으로 사용됩니다.
시제품(Prototype) 제작:
최종 결과물을 예측할 수 있는 시제품을 먼저 만들어 사용자와 개발자 모두가 공동으로 참고할 수 있는 모델로 활용합니다.
점진적 개발:
시스템의 일부 또는 핵심 기능을 담은 시제품을 만들고, 이를 통해 요구사항을 구체화한 후 실제 소프트웨어를 구현해 나갑니다. 이 시제품은 나중에 추후 구현 단계에서 사용될 골격 코드(Backbone Code)가 될 수 있습니다.
반복적인 피드백:
새로운 요구사항이 도출될 때마다 이를 반영하여 프로토타입을 새롭게 만들고, 사용자의 평가를 받아 계속해서 수정하는 과정을 반복합니다.
신속한 개발:
단기간에 시제품을 제작하여 빠르게 사용자에게 보여주는 것이 중요하므로, 때로는 효율성보다는 신속성을 위해 비효율적인 언어나 알고리즘이 사용될 수도 있습니다.
개발 단계:
요구 수집: 초기 단계에서 사용자의 요구사항을 대략적으로 수집합니다.
빠른 설계: 수집된 요구사항을 바탕으로 빠르게 시제품을 만들기 위한 설계를 진행합니다.
프로토타입 구축: 시제품을 실제로 만듭니다.
고객 평가: 만들어진 시제품을 고객에게 보여주고 평가를 받습니다.
프로토타입 조정: 고객의 피드백을 바탕으로 시제품을 수정하거나 보완합니다.
구현: 고객이 최종적으로 만족한 프로토타입을 바탕으로 실제 소프트웨어 시스템을 구현합니다.
장점과 단점:
장점:
- 사용자의 요구사항을 정확히 반영하여 만족도를 높일 수 있습니다.
- 개발 초기에 요구사항 오류를 발견하고 수정할 수 있어 비용을 절감할 수 있습니다.
- 개발자와 사용자 간의 원활한 의사소통이 가능해집니다.
단점:
- 시제품을 만드는 과정 자체가 추가적인 시간과 비용을 발생시킬 수 있습니다.
- 빠른 제작을 위해 비효율적인 기술을 사용하면 나중에 실제 구현 단계에서 문제가 발생할 수 있습니다.
- 고객이 시제품을 최종 제품으로 오해하여 불필요한 기능 추가를 요구할 수 있습니다.
프로토타입 모형은 특히 새로운 기술을 도입하거나,
고객의 요구사항이 불명확한 혁신적인 프로젝트에 효과적인 방법론입니다.