개념: 프로토타입
프로토타입은 시스템 솔루션의 초기 버전이나 짧은 시간에 생성된 시스템 솔루션 일부로 축소되고 몇 번의 반복으로 개선되어 특정 문제점을 해결하는 데 사용되는 전체 디자인의 효율성을 테스트 및 평가합니다.
관계
기본 설명

사용 방법

프로토타입은 위험성을 줄이기 위해 지시된 방법으로 사용됩니다. 프로토타입은 다음과 관련된 불확실성을 줄일 수 있습니다.

  • 개발하는 제품의 비즈니스 실현 가능성
  • 주요 기술의 안정성 및 성능
  • 프로젝트 확약 또는 자금 조달: 소규모의 개념 검증 프로토타입 빌드
  • 요구사항 이해
  • 제품에 대한 룩앤필 및 사용성

프로토타입은 사용자, 고객 및 관리자에게 구체적이고 실행 가능한 어떤 것을 표시하여 제품에 대한 지원을 빌드하는 데 도움을 줄 수 있습니다.

프로토타입의 속성 및 목적은 수명 전체에 걸쳐 명백하게 유지되어야 합니다. 프로토타입을 실제 제품으로 전개할 목적이 없으면 프로토타입이 작동하므로 갑자기 최종 제품이 되어야 한다고 가정하지 마십시오. 사용자 인터페이스를 아주 빠르게 처리하기 위한 탐색, 작동 프로토타입은 탄력 있는 강한 제품으로 전개됩니다.

프로토타입 유형

두 가지 방법으로 프로토타입을 볼 수 있습니다. 즉, 프로토타입이 탐색하는 것이 무엇인지, 그리고 프로토타입이 발전하는 방법과 결과물이 무엇인지를 통해 볼 수 있습니다.

첫 번째 보기(탐색할 대상) 컨텍스트에는 두 유형의 기본 프로토타입이 있습니다.

  • 시스템의 특정 동작 탐색에 초점을 맞춘 작동 프로토타입
  • 일부 아키텍처 또는 기술 관심사항을 탐색하는 구조적 프로토타입

두 번째 보기(결과물) 컨텍스트에도 두 유형의 프로토타입이 있습니다.

  • 완료될 때 버려지는 탐색 프로토타입(일회성(throw-away) 프로토타입이라고도 함)
  • 점차적으로 실제 시스템으로 발전하는 발전적 프로토타입

탐색 프로토타입

탐색 프로토타입은 프로젝트에 대한 주요 가정(기능성 또는 기술 또는 둘 다)을 테스트하기 위한 소규모 "실험"과 비슷하게 디자인됩니다. 주요 소프트웨어 또는 하드웨어 컴포넌트의 성능을 테스트하기 위해 작성되는 수백 줄의 코드와 같이 작은 것이 될 수도 있습니다. 또는 요구사항을 분류하는 방법이 될 수도 있습니다(개발자가 특정의 동작 또는 기술 요구사항을 이해하는지 보기 위해 개발되는 소규모 프로토타입).

탐색 프로토타입은 의도적으로 "일회성(throw-away)"인 경향이 있고 테스트는 비형식적인 경향이 있습니다. 탐색 프로토타입 디자인은 매우 비형식적이며 한두 명의 개발자 작업인 경우가 많습니다.

발전적 프로토타입

이름에서 의미하듯이, 발전적 프로토타입은 하나의 반복에서 다음 반복으로 전개합니다. 초기에는 프로덕션 품질이 좋지 않지만 제품이 전개됨에 따라 코드가 재작업되는 경향이 있습니다. 재작업을 관리 가능하게 유지하기 위해 더 형식적으로 디자인되고 초기 단계에서도 어느 정도 형식적으로 테스트되는 경향이 있습니다. 제품이 전개됨에 따라, 테스트는 보통 디자인과 마찬가지로 형식을 갖추게 됩니다.

작동 프로토타입

작동 프로토타입은 탐색 프로토타입이 되기 쉽습니다. 이 프로토타입은 개발되는 시스템의 아키텍처를 재생하려고 하지 않으며, 대신 사용자에게 표시되는 대로 시스템이 수행할 내용에 초점을 맞춥니다("스킨"). 종종, 이 유형의 프로토타입은 "임시(quick and dirty)" 특징을 가지고 있으므로 프로젝트 표준에는 빌드되지 않습니다. 예를 들어, 개발 프로젝트에 대해 C++이 선호되지만 Visual Basic을 프로토타입 언어로 사용할 수 있습니다. 탐색 프로토타입은 임시 프로토타입이며 최소한의 노력으로 수행되고 목적을 이루고 나면 버려집니다.

구조적 프로토타입

아키텍처 프로토타입은 발전적 프로토타입이 되는 경향이 있습니다. 이 프로토타입은 궁극적 시스템의 하부 구조("뼈대")를 더 사용하고 더 발전하여 실제 시스템이 됩니다. 프로토타입이 "프로덕션" 언어 및 도구 세트를 사용하여 수행될 경우, 개발 환경을 테스트할 수 있고 일부 인원이 새로운 도구 및 프로시저를 숙지하게 되는 장점을 얻게 됩니다.