정보관리기술사&컴퓨터응용시스템기술사/SW공학과 프로젝트관리

고전적 라이프 사이클 개발 패러다임, 폭포수 모델(Waterfall Model)

별프로 2020. 11. 30. 22:15
반응형

I. 고전적 라이프 사이클 개발 패러다임, 폭포수 모델(Waterfall Model)의 개요

가. 폭포수 모델(Waterfall Model)의 정의

- 소프트웨어 개발 시 계획, 분석, 설계, 개발, 구현, 테스트, 운영 및 유지보수 등 전 과정을 순차적으로 접근하는 고전적 개발 라이프 사이클 패러다임(Classic Life-cycle Paradigm)

나. 폭포수 모델의 특징

설 명

순차적 접근

- 소프트웨어 개발을 단계적, 순차적, 하향식으로 수행

단계 별 테스트

- 각 단계 완료 시 검증 후 다음 단계로 진행

고정된 산출물

- 테스트를 통과한 산출물은 정식 변경절차에 의해서만 변경 가능

프로젝트관리 용이

- 프로젝트 진행과정을 세분화하여 관리가 용이

후반 리스크 증가

- 후반부에 구체화되어 중요 문제점 대응에 취약

 

II. 폭포수 모델의 구성도 및 구성요소

가. 폭포수 모델의 구성도

- 계획, 분석, 설계, 개발, 구현, 테스트, 운영 및 유지보수 과정을 순차적으로 접근하는 모델

나. 폭포수 모델의 구성요소

구성요소

설명

산출물

계 획

- 프로젝트 범위/일정/원가 기준선 등 필요자원에 대한 계획 수립

프로젝트관리 계획서

분 석

- What 중심의 사용자 요구사항, 주어진 문제의 분석 및 이해

요구사항 정의서

설 계

- 시스템 아키텍처, 구조, 화면 설계, DB, UI 설계

기본/상세 설계서

개 발

- 프로그램 구현, 디버깅, 단위테스트 수행

소스코드

테스트

- 발생가능한 프로그램의 오류를 발견하고 수정

테스트계획/결과서

운영 및 유지보수

- 시스템 설치 후 운영 중 발생하는 여러 변경사항에 대한 대응

유지보수 계획서

 

III. 폭포수 모델과 반복적 모델(Iteration Model) 의 비교

항목

폭포수 모델

반복적 모델

개념

단계적/순차적/하향식 접근 (Top-down)

반복적/점증적 접근 (Iteration),

설계

전체 상세화 설계

점진적 구체화 설계

개발

순차적, 통합적 개발

반복적, 소기능단위 개발

테스트

통합테스트

회귀테스트 (CI/CD)

배포

최종단계 배포

반복/지속 배포

 

IV. 폭포수 모델 및 프로토타입 모델(Prototype Model)의 비교

폭포수 모델

프로토타입 모델

개 념

단계 별 정의/산출물 명확

중요요구사항에 대한 신속한 모형 개발

고객의사소통

제한적

지속적

적용유형

요구사항이 명확한 경우

요구사항을 명세하기 어려운 경우

요구사항

초기 수집 및 엄격한 변경관리

정확하고 고품질의 요구사항명제 작성 가능

 

V. 폭포수 모델과 애자일 모델(Agile Model)의 비교

폭포수 모델

애자일 모델

개 념

단계 별 수행/계획 중심

문서최소화 및 학습중심

고객의사소통

제한적

지속적

요구사항

초기 수집 및 엄격한 변경관리

지속적 개발 및 변경 수용

설 계

상세한 사전(Up-front)설계

적시(Just-in-time)설계

문서화

경량 프로세스 및 문서화보다 코드 강조

중량 프로세스 및 상세한 문서화 강조

 

VI. 소프트웨어 개발 생명주기(Software Development Life Cycle) 유형 별 비교

폭포수 모델

프로토타입 모델

나선형 모델

반복적 모델

특 징

순차적 접근

프로토타입 개발

위험분석, 반복개발

증분을 병행개발

장 점

이해용이

관리편리

요구분석용이

개발타당성 검증가능

위험감소

변경에 유연한 대처

병행개발로 일정단축

단 점

초반 요구분석 어려움

후반 문제발생

프로토타입 폐기로

비용증가

단계 반복에 따른

공정관리 어려움

병행개발에 따른

관리비용 증가

 

 

반응형