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

나선형 모델(Spiral Model), 위험 최소화를 위한 진화적 프로토타이핑

by 별프로 2020. 12. 30.
반응형

I. 위험 최소화를 위한 진화적 프로토타이핑, 나선형 모델의 개요

가. 나선형 모델(Spiral Model) 정의

- 시스템 개발 위험을 최소화하기 위해 나선으로 돌면서 계획, 위험분석, 개발, 평가의 단계를 반복하면서 점진적으로 소프트웨어를 완성하는 모델

- 개발된 Prototype을 지속적으로 발전시켜 최종 SW에 이르게 하는 모델

- Waterfall Model Prototyping Model의 장점에 위험 분석을 추가한 모델

 

나. 나선형 모델의 특징

설 명

위험 최소화

위험식별 및 대응계획 수립을 통한 위험 최소화

점진적 구체화

반복, 진화적, 프로토타입 개선으로 시스템을 구체화

고수준 품질

고객평가(Feedback)에 따른 진화적 라이프 사이클

- 대규모 시스템 및 위험 부담이 큰 시스템 개발에 적합(위험분석 추가)

- 관리가 중요하나 매우 어렵고 개발시간이 장기화될 요지 있음

 

II. 나선형 모델의 구성도 및 구성요소

가. 나선형 모델 구성도

- 개발된 프로토타입을 지속적으로 발전시켜 최종 SW에 이르게 하는 모델

 

나. 나선형 모델 구성요소

구성요소

설 명

산출물

계획 및 정의

프로젝트 계획수립, 요구사항 분석

단계별 목표수립

프로젝트 관리 계획서

요구사항 분석서

위험분석

위험식별, 정량/정성적 분석 및 평가

위험평가 결과에 따른 근거, 개발여부 결정

위험 관리 계획서

위험 분석서

개발

구현 대상 기능에 대한 실제구현

단위 테스트 수행

소스코드

진화적 프로토타입

고객의 평가

고객에 의한 시스템 평가 및 향후 목표계획

고객의 피드백

- 나선형 모델의 구현결과는 시뮬레이션 모델, 시제품 실제 시스템 등

 

III. 나선형 모델의 비교

가. 나선형 모델 장단점

관점

장점

단점

비즈니스

위험 부담 감소

대규모 시스템에 적합

위험관리의 능력에 따라 성공여부에 영향

다수 고객 상대의 상용제품 개발에는 부적합

프로젝트

정확한 사용자 요구사항 파악

품질 확보

프로젝트 개발에 많은 시간 소요

프로젝트 관리에 어려움 (복잡함)

나. 나선형 모델과 폭포수 모델 비교

구분

나선형 모델

폭포수 모델

정의

- 폭포수 모델 및 프로토타입 모델의 장점에 위험분석(Risk Analysis)을 추가한 모델

- 점진적이고 안정적인 개발 모델

- 분석, 설계, 개발, 구현, 시험 및 유지보수과정을 순차적으로 접근하는 방법

특징

- 프로젝트의 완전성 및 위험감소와 유지보수가 용이

- 관리가 어렵고 개발기간 장기화될 가능성 존재

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

- 각 단계별 완료 후 다음 단계 진행

절차

- 계획, 위험분석, 개발, 평가 사이클 반복

- 점진적 프로토타입 개선 및 위험관리

- 분석, 설계, 개발, 구현, 시험, 운영 단계

- 순차적으로 수행

적용범위

- 대규모 시스템 및 위험 부담이 큰 시스템

- 기술적 위험이 낮고 유사프로젝트

 경험이 있는 경우

장점

- 정확한 사용자 요구사항 파악

- 위험 부담 감소, 품질 확보

- 전체 과정이 이해하기 용이

- 관리 용이 (진행과정을 세분화)

단점

- 프로젝트 개발에 많은 시간 소요

- 프로젝트 관리 복잡도 높음

- 위험관리 능력이 성공여부에 영향

- 초기 요구사항 정의 어려움

- 중요 문제점이 후반부에 구체화

- 사용자 피드백에 의한 반복 단계 불가능

다. 나선형 모델과 애자일(Agile) 비교

구분

나선형 모델

애자일

계획 수립

단계별 세부 계획 수립

다음 반복주기에 대해서만 계획 수립

베이스라인

초기 요구사항 베이스라인 설정

요구사항 베이스라인 유연하게 설정

아키텍처 정의

초기에 모델과 사양을 상세화

Working Product 통해 실현 가능성 증명

테스트 방법

단위, 통합, 시스템 테스트로 확장

개발과 테스트를 반복, 회귀테스트(CI/CD)

표준 프로세스

계획 수립 시 표준화된 프로세스 제정

개발 프로세스의 유연성 강조

 

반응형

댓글