나선 모형

위키백과, 우리 모두의 백과사전.

소프트웨어 개발 프로세스
활동과 단계
요구사항 분석 · 기능 명세
구조 · 설계
구현 · 테스팅
배치 · 유지보수
개발 모형
애자일 소프트웨어 개발 · 클린룸
DSDM · 순차점증적 개발 · 반복형 개발
RAD · RUP · 나선 모형
폭포수 모델 · 익스트림 프로그래밍
스크럼 · V 모델 · TDD
지원 활동
구성 관리 · 문서화
품질보증 · 프로젝트 관리
사용자 경험 설계
도구
컴파일러 · 디버거 · 프로파일러
GUI 디자이너 · 통합 개발 환경

나선 모형은 고전적인 소프트웨어 개발 방법론 중 하나이다. 나선 모양을 그리고 반복을 한다고 해서 나선 모형이라는 이름이 붙었다. 나선 모형이론을 제일 처음 제안한 사람은 Barry W. Boehm이다.

나선 모형에서는 다음과 같은 단계로 소프트웨어를 개발한다.

  1. 요구 사항 및 위험 분석
  2. 계획 및 건축가 반복
  3. 구현
  4. 테스트 및 확인

상세 설명[편집]

중요한 점은 매번 반복을 하기전에 위험요소를 알아내고 사전에 제거하는데에 있다. 나선 모형에서는 매번 다음 단계의 반복을 진행 시킬때마다, 기능적, 성능적 측면에서 가장 위험요소가 높은 부분을 먼저 진행하고 없애나간다. 즉, 가장 위험요소가 큰 부분 혹은 버그가 발생하기 쉬운 측면을 절대로 개발의 마지막 단계까지 미루지 않는다는 것이 키워드이다.

반복적으로 개발을 하는데에서 오는 장점으로는 첫째, 클라이언트가 완성된 프로젝트는 아니지만 최소한 프로토타입을 미리 볼 수 있다는 점이다. 그리고 이를 통해서 개발와의 소통, 즉 피드백이 가능하다는 것이다. 또한 반복에서 오는 장점을 극대화 시키기 위해서는 자주 반복을 실시 해야 한다. 그 이유로, 반복적 개발단계에서 어떠한 문제가 생겼다면 그것은 가장 최근에 변경한 작업 혹은 추가된 작업일 확률이 높다. 그렇기 때문에 잦은 반복을 통해서 어디서 부터가 잘못되었는지를 쉽게 알아낼 수가 있으므로 버그로 인한 시간낭비를 줄일 수가 있다.