2. 소프트웨어 개발 프로세스 모형
2.1 소프트웨어 생명주기(Software Development Lifecycle)
1) 개념
l 각
개발 단계에서 변화해 가는
소프트웨어 형상의 가시화.
l 개발의
시작과 끝을 중요시함.
l 사용자를
위한 문제 해결 시스템에 조점
맞춤.
☞ - 소프트웨어 생명주기는 시작과 끝을 중요시 여기며 사용자 요구 중심이며
개발 위주가 아니다.
- 소프트웨어가 개발되기 위하여 타당성 조사부터 개발, 유지보수,폐기까지의 전과정을
하나의 주기로 보고 효과적으로 수행하기 위하여 방법론을 모델화 한것.
2) 역할
l 프로젝트
비용 산정과 개발 계획을
수립할 수 있는 기본 골격
l 개발자와
관리자 사이에 공동의식이 싸이며 높아짐
l 개발
진행 상황을 명확히 파악
가능
l 문서화가
충실한 프로젝트 관리 가능
3) 시스템 개발 주기 (SDLC) ☞ SW를 유기체의 Life Cycle에 빗대어 표현
l 타당성
조사와 시스템 분석: 타당성 조사 및
시스템의 정의
l 프로젝트
계획 수립: 문제
정의 및 시스템 개발 비용과
기간 예측
l 소프트웨어
요구사항 분석
l 설계
l 구현
l 검사(테스트)
l 유지보수
l 폐기
2.2 폭포수 모델 (Waterfall Model = 선형순차모형, 전형적인 생명주기 모형)
1) 개요
l 구현은
시스템을 충분히 이해한 후에
작업해야 함
l 적용
설계가 많고, 가장
오래되었으며 널리 사용되는 방법
l 개발
기간이 짧고 요구사항 변경이 없을
때 적당
l 명세화, 개발, 검증, 진화를 기본적인 활동으로
취하며, 요구사항 명세화, 소프트웨어 설계, 구현,
시험
등과 같은 개별적인 프로세스 단계로
프로세스 모델을 나타낸다.
☞ 폭포수 모델은 현재에도 가장 많이 사용되는 방법중에 하나이다.
병행이나 반복을 원칙적으로는 허용하지 않으나 현실에서는 그렇지 않다.
2) 절차: 타당성 검토 à 계획 à 요구 분석 à 설계 à 구현 à 시험 à 운용 및 유지보수
3) 문제점
l 단계적
으로 정의한 체계이며 순차적 접근방법으로 사용
☞ 높은 추상하 단계에서 낮은 추사아 단계 로 진행
l 시초에
사용자들의 모든 요구사항들을 명확히
설명하는 것이 어려움
l 설계와
코딩 및 테스트 지연 우려
☞ 이전 단계의 산출물이 나와야 다음단계로 진행이 가능하므로
(이전 단계의 산출물이 다음단계의 기초) 지연이 발생 할 수 있음 PMO 의 일정 및
진척 관리가 상당히 중요함.
l 개발 초기에 작동 가능한 프로그램 제공하지 못함.
☞ 그러므로 고객의 인내심이 필요하다.
작동가능한 프로그램을 제공 하지 못하므로 산물에 의하여 개발 진척이 파악 가능하여
개발이 실적적으로 진행이 안되고 있으나 문서에 의한 판단으로 오판단 할수 있음
l 가동
프로그램이 고려될 때까지 검출되지
않는 실수
☞ 위의 설명한 이유등으로 분석, 설계, 개발 오류 등이 프로젝트 종료 시점에서발견될 확율이 높아 손실을 초래 할수도 있다.
4) 장점
l 응용
분야가 단순하거나 내용을 잘
알고 있는 경우 적합
l 비전문가가
사용할 시스템 개발에 적합
l 작업이
표준화되어 있음
☞ 진행과정이 세분화 되어 있이 관리가 용이하다
l 단계적
작업을 공학적 점검 가능
l 단계별
정의, 산출물이 명확
☞ 단계별 산출물이 명확하므로 가시성이 좋다
- 감리사, 기술사, PMP, 소프트웨어공학,
댓글 없음:
댓글 쓰기