코딩하는 해달이

[응용소프트웨어공학] 2-1 폭포수 모델 본문

USG 공유대학

[응용소프트웨어공학] 2-1 폭포수 모델

코딩하는 해달 2023. 9. 18. 14:34

폭포수 모델의 특징

-1970년대 항공 방위 소프트웨어 개발 경험으로 습득

-가장 오래되고 널리 사용된 프로세스 모델

-각 단계는 다음 단계 시작 전에 끝나야 함

  -순서적:각 단계 사이에 중복이나 상호작용 X

  -SQA 그룹의 승인을 받아야 다음 단계로 진행될 수 있음(SQA: 소프트웨어 품질 보증)

-체계적인 문서화가 가능한 문서 중심 모델 : 각 단계마다 문서화된 산출물이 생성

-중간 산출물이 명확하여 프로젝트 가시성이 좋음

-작업이 순서대로 이루어지므로 직능 중심으로 프로젝트 조직을 구성할 수 있음

-요구사항이 이미 잘 알려져 있는 문제나 또는 변경이 적어 비교적 위험이 적은 프로젝트에 적합

 

폭포수 모델의 문제점

-많은 프로젝트가 폭포수 모델의 각 단계를 연속적인 한번의 과정으로 완성되는 경우가 드묾

  -개발 분야가 복잡하고 잘 알려져 있지 않은 경우엔 반복적인 작업이 더 적합

-애매한 부분이 남아 있거나 프로세스 진행 과정에 변경될 수 있는데 이를 수용할 수 없음

  -예) 프로젝트 초기에 요구사항이 불안정하거나 정확히 이해되지 않는 경우

-개발 초기 단계들이 지나치게 강조되어 불필요한 문서들을 작성하는데 많은 노력을 소모할 수 있음

  -구현 단계에서 요구 오류가 발견되었다면 그에 맞게 이전 문서들을 수정하는데 드는 노력이 큼

-단계별로 완벽을 기하기는 현실적으로 쉽지 않음

-테스트 작업이 프로젝트 후반에 시작

 

프로토타이핑 모델

prototype : 기능적으로 작동 가능한 모형

프로토타이핑 모델

 

프로토타이핑의 목적

-사용자의 요구 추출 : 사용자가 프로토타입을 사용하고 요구 사항에 대한 피드백 가능

-제작 가능성 타진

 

프로토타이핑에 의해 개발 비용이 절감되는 이유

-프로토타입을 통해 요구사항이 안정화되고, 이해 가능

-프로토타입의 개발 경험이 후반에 소프트웨어를 구현하는 비용을 절감시킴

 

프로토타이핑 모델의 특징

-완성된 시스템의 모습을 빠른 시점에 볼 수 있음

-프로토타입은 발주자나 개발자에게 공동의 참조 모델 역할을 함

  -발주자: 소프트웨어 개발에 참여 가능

  -개발자: 사용자의 요구 도출, 개발이 제대로 되는지 확인 가능

-개발 초기에 요구가 불투명하거나 실현 가능성을 실험해보고 싶을 때 사용하면 좋음

  -폭포수모델은 설계가 시작되려면 불안정한 요구라도 진행 but 프로토타입을 통해 분석된 요구는 더욱 안정적

 

프로토타이핑 모델의 문제점

-사용자는 종종 프로토타입이 최종 결과라고 오해하는 경향이 있음

  -발주자가 프로토타입을 완성에 가까운 제품으로 오해 → 불필요하고 과도한 요구 가능성

-개발자 입장에서 프로토타이핑 과정을 관리하기가 어려움

  -폭포수 모델과 달리 중간과정을 점검할 수 있는 일정표, 산출물 X

  -발주자는 프로토타입을 보고 승인한 후에는 개발이 곧 완료될 것으로 오해

 

반응형
Comments