'나선형모델'에 해당되는 글 2건

1. 나선형 모델(Spiral)의 개요

 1-1. 나선형 모델(Spiral)의 정의

    - 시스템을 개발하면서 생기는 위험을 최소화하기 위해 나선을 돌면서 점진적으로 완벽한 시스템으로 개발하는 모델 (위험최소화가 목적)
    - 개발된 Prototype을 지속적으로 발전시켜 최종 SW에 이르게 하는 모델

 1-2. 나선형 모델(Spiral)의 특징

   1) 위험중심 접근 : 개발 단계별 위험분석으로 투자 위험 분산
   2) 고수준 품질보증 : 고객 평가(Feedback)에 따른 진화적 개발 사이클
   3) 대규모 장기간 사업 : 계획-위험분석-개발-평가의 Long Term 개발 주기  
   4) 프로토타입 장점수용 : Feedback, 반복, 의사소통 및 이해, 타당성 검토

  

2. 나선형 모델(Spiral)의 구성도, 단계

 2-1. 나선형 모델(Spiral)의 구성도

 2-2. 나선형 모델(Spiral)의 단계

   1) 계획 및 정의
    - 성능, 기능을 비롯한 시스템의 목표 규명
    - 시스템의 목표와 제약 조건에 대한 차선책 평가, 고객평가 반영 위험 분석

   2) 위험분석
    - 개발하려는 시스템의 기술적 위험도, 정보의 빈약함을 예측하고 시장조사나 여러 위험 제거 기법을 통해 위험을 방지
    - 위험 요소들의 분석과 관리기술을 통한 해석 개발

   3) 개발
    - 나선의 각 타원에서 프로토타입 개발
    - 여러 개의 모델을 혼합하여 개발도 가능 고객 평가

   4) 고객평가
    - 개발된 프로토타입의 평가

 

3. 나선형 모델(Spiral)의 이점/한계

 1) 나선형 모델(Spiral)의 이점:

    - 비용이 많이 들고 장기간이 걸리는 큰 시스템을 구축해 나가는데 가장 현실적인 접근방법.
    - 성과를 보면서 조금씩 투자하여 위험부담을 줄일 수 있는 이상적인 방법
    - 위험 중심의 접근은 어려움을 피하게 함.

 2) 나선형 모델(Spiral)의 한계:

    - 모델 자체가 복잡하여 프로젝트 관리 자체를 어렵게 만들 가능성이 많음.
    - 많은 고객을 상대로 하는 상업용 제품에 부적합

    - 상대적으로 새로운 접근방법이며 많이 사용되지 않아 충분한 검증을 거치지 못함.

블로그 이미지

운명을바꾸는자

IT와 함께 살아가는 삶

,

SDLC (Software Development Life Cycle)


1. SDLC (소프트웨어 개발 프로세스의 가이드라인)

 1-1. 정의

  - 소프트웨어 타당정조사로 부터 개발, 유지보수, 폐기까지의 전과정을 모형화하여 SW 개발 및 관리에 기본적 틀을 제공하는 모델 (SWBOK의 10개 지식영역)

  - 타당성 검토 -> 요구사항 분석 -> 설계 -> 개발 -> 테스트 -> 설치 / 이행 -> 유지보수 -> 페기


2. SDLC 모델간의 관계도, 모델별 정의 및 특징

 2-1. SDLC 모델간의 관계도


 2-2. SDLC 모델별 정의 및 특징

  1) 폭포수 모델(Waterfall) 

    - 정의: 고전적 라이프 사이클 페러다임, 분석,설계, 구현, 시험 및 유지보수과정을 순차적으로 접근하는 방법

    - 특징: 순차적접근, 하향식 접근, 단계별접근, 프로젝트 관리 용이, 문제점 발견 지연

    - 장점: 가장 오래되고 폭넓게 사용 (사례풍부), 전체과정의 이해하기 용이

    - 단점: 초기에 요구사항 정의가 어려움 -> 중요 문제점의 발견이 늦어짐, 사용자 피드백에 의한 반복 불가능, 코딩 및 테스트 지연 발생


  2) 프로토타이핑 모델(Prototyping)

    - 정의: 사용자의 기본적인 요구사항에 따른 모형시스템을 신손ㄱ히 개발하여 제공한 후, 사용자들의 의견을 바탕으로 시스템을 개선하고 보완해가는 프로세스 모델

   - 특징: 사용자 참여유도, 개발 타당성 검토, 순차 모델의 단점 보완

   - 장점: 사용자 요구사항 도출용이, 개발자와 사용자간 의사소통 원활, 시스템의 이해와 품질 향상, 시스템 이해도 낮은 관리자 유효

   - 단점: 사용자 과도한 요구사항 발생 가능, 폐기시 비경제적, 문서작성 미흡, 개발속도 지연 우려


 3) 나선형 모델 (Spiral)

   - 정의: 시스템을 개발하면서 생기는 위험을 최소화하기 위해 난선을 돌면서 점진적으로 완벽한 시스템으로 개발하는 모델 (위험최소화가 목적)

   - 특징: 위험중심 접근, 고수준 품질보증, 대규모 장기간 사업, 프로토타입 장접수용

   - 장점: 비용이 많이 들고 장기간을 걸리는 큰 시스템을 구축해 나가는데 가장 현실적인 접근 방법, 위험 중심의 접근은 어려움을 피하게 됨

   - 단점: 모델 자체가 복잡하여 프로젝트 관리자체를 어렵게 만들 가능성이 많음, 많은 고객을 상태로 하는 상업용 제품에 부적합


 4) 반복적 모델 (Iterative)

   - 정의: 사용자 요구사항의 일부분 혹은 제품의 일부분을 반복적으로 개발하여 최종 시스템으로 완성하는 모델 (증분형/진화형 모델 존재)

   - 특징: 폭포수 모델과 프로토타이핑 모델, 나선형 모델의 혼합, 재사용성, 객체지향, RAD의 기반 제공

   - 장점: (증분형) 새로운 시스템에 대한 사용자 충격완화, (진화형) 불완전한 요구사항에 유현한 대응

   - 단점: (증분형) 다수의 빌드 관리 부담, 초기에 완벽한 요구사항 분석 필요, (진화형) 다수의 버전관리, 프로젝트 비용 및 일정증가 가능성


 5) 클린룸 모델

   - 정의: 사용자의 피드백을 거쳐 새로운 요구를 반영하는 새로운 개발 계획을 소프트웨어 개발에 추가하여 점증적으로 시스템을 완성해 나가는 모델

   - 특징: 반복적 개발 프로세스모델, 중요도, 이용빈도, 사용자의 피드백 평가 등으로 Increment 개발 순서가 결정, 3 Box (블랙, 상태, 클리어 박스)

   - 장점: 다양한 검증을 통하여 결함에 대한 엄격한 관리, 모델 이름처럼 클린한 완전 무결을 지향함

   - 단점: 숙련된 엔지니어와 오랜시간의 투자가 기반되어야함으로 기술력이 낮은 조직에서 수행시 오히려 역효과 발생


블로그 이미지

운명을바꾸는자

IT와 함께 살아가는 삶

,