2 minute read

image

소프트웨어 개발 단계 8가지 특징 & 방법

폭포수 , v모델, 프로토타이핑, 나선형, 단계적 개발, 일정 중심 설계, 진화적 출시, 애자일(Agile)


소프트웨어 개발 단계 모델

8가지 모델 간단한 특징 & 방법

폭포수 모델 특징과 방법


특징

소프트웨어 프로세스 중 하나로 개발의 흐름 단계가 마치 폭포수처럼 흐른다 하여 폭포수 모델이라고 하며, 선형 순차 모델 또는 고전적 소프트웨어 생명주기라고도 합니다.

수행되는 활동들이 서로 겹치지 않으며, 단계들이 병행 수행되거나 거슬러 올라가지 않습니다.

또한 매 단계에서 끝날 때마다 결과를 확인 후 다음 단계로 가야 하고

수정을 위한 재작업을 위해 앞 단계의 피드백이 필요합니다.

방법

요구사항을 기반으로 명확하고 조직화된 구조로 설계

[1]전통적(구조적) 설계 방법

[2]객체지향 설계 방법

아키텍쳐 설계 → 인터페이스 설계 → 프로그램 설계

v 모델 특징과 방법


특징

폭포수 모델의 확장 형태, 생명주기 단계별로 상응하는 테스트 단계가 존재합니다.

폭포수 모델에 비해 반복과 재처리 과정이 명확.하며 테스트 작업을 단계별로 구분하므로 책임 소재가 명확합니다.

방법

V 형태로 진행

(아래 방향으로 진행하다가 코딩 단계를 거치면서 위로 향합니다)

1. 사용자 요구 명세서 > (인수 테스트 계획) > 9. 인수테스트

2. 시스템 요구 명세서 > (시스템 테스트 계획) > 8. 시스템테스트

3. 시스템 설계 > (통합 테스트 계획) > 7. 통합 테스튼

4. 단위 설계 > (테스트 케이스) > 6. 단위 테스트

5. 코드


프로토타이핑 모델 특징과 방법

특징

사용자 경험과 관련된 이슈들을 정의하는 과정이므로 반복적으로 수행이되며,

결과물이 아닌 과정입니다.

프로토타이핑에 대한 결과는 UI/UX 디자인을 보안하고 개선할 수 있도록 실행 가능한 피드백이 이루어져야 합니다.

방법

요구분석 > Prototype 개발/개선 > 검토평가 > 상세개발 > 설치 운영


나선형 모델 특징과 방법

특징

리스크 최소화를 위해 “위험분석” 단계가 존재, 점진적으로 단계를 반복 수행해 나가는 모델이며 위험 부담이 큰 대형 시스템 구축에 적합합니다.

방법

목표설정->위험분석->구현및 테스트->고객평가 및 다음단계 수립


단계적 개발 모델 특징과 방법

특징

중요 일부터 차례대로 개발하며, 그 일부를 사용하여 범위를 늘려나갑니다.

방법

릴리스1 개발 > 릴리스1 사용/릴리스2 개발 > 릴리스2 사용/릴리스 3개발 ~


일정 중심 설계 모델 특징과 방법

특징

사용자 요구에 대하여 우선순위를 정하고, 이를 기초로 각 사이클을 계획하며,

초기 단계에 중요한 기능들을 설계하고 구현하여 시스템의 골격을 만듭니다.

방법

단계적으로 여러 차례의 반복적인 사이클을 거칩니다.

계획 ↔ 요구분석 ↔ 설계 ↔ 높은 우선순위 상세설계, 코딩, 테스트 > 중간 우선순위 상세설계, 코딩, 테스트 > 1) 출시, 2) 낮은 순위 상세설계, 코딩, 테스트


진화적 출시 모델 특징과 방법

특징

반복할 때마다 버전의 완성도 높아지며, 초기에 사용자가 요구사항을 파악하기 힘들고 구현이 어려운 경우 요구사항 분석을 한번 이상 반복합니다.

방법

분석 > 설계 > 구현/시험 > 설치/운영 → 분석2 > 설계2 > 구현/시험2 > 설치/운영2 → 분석3 > 설계3 > 구현/시험3 > 설치/운영3


애자일(Agile) 모델 특징과 방법

특징

애자일 모델은 요구에 민첩하게 대응하고 그때그때 주어지는

문제를 풀어나가는 방법론을 말합니다.

방법

애자일 개발 방법은 반복적인 개발을 통한 잦은 출시를 목표로 합니다.

프로토타입 개발 -> 사용자확인 -> 일부 기능 사용


해당 포스팅은 개인이 학습을 목적으로 작성한 글 임으로

본문 내용에 오류가 포함되어 있을 수 있으며,

하단에 댓글로 남겨 주시면 수정하도록 하겠습니다:)\*\*\*\*

Leave a comment