본문 바로가기
자격증/정보처리기사

소프트웨어 생명주기 모델

by 두두리안 2022. 6. 20.
728x90

목차

  • 1.소프트웨어 생명주기
  • 2.스크럼 모델
  • 3.XP 모델
  • 4.프로젝트 관리
  • 5.형상 관리

1.소프트웨어 생명주기

1-1. 개요

* 소프트웨어 개발 과정을 단계별로 나눈것
* 각 단계별 결과에 대한 산출물 표현

1-2. 폭포수 모델(Warterfall model)

1. 개발 이전 단계로 돌아갈수 없다
2. 한단계가 끝나야 다음단계로 넘어감
3. 매뉴얼 작성이 필요함
4. 단계별로 결과물이 명확하게 산출

1-3. 프로토타입 모델(Prototyping model)

1. 폭포수 모형의 단점을 보완한 모델
2. 사용자 요구사항 파악을위해 견본품을 만들어 결과물 예측
3. 사용자와 시스템 사이의 인터페이스 집중하여 개발

1-4. 나선형 모델(Spiral model)

1. 폭포수와 프로토 타입의 장점에 위험분석기능 추가 (보헴)
2. 점진적으로 소프트웨어 개발
3. 개발중 발생하는 결함을 관리하여 최소화하는것을 목적
4. 누락되거나 추가된 요구사항을 반영할수 있고 유지보수 과정이 필요하지 않다

1-5. 애자일 모델

1. 고객의 요구사항 변화에 유연하게 대응할수 있도록 일정주기 반복
2. 고객과 소통에 초점을 맞춘 방법론

애자일 핵심가치

* 절차보다는 상호작용
* 방대한 문서보다는 실행되는 소프트웨어
* 계약 내용보다는 고객과의 협업에 더 가치를 둔다
* 계획에 따르기보다는 변화에 대응하는것

2.스크럼 모델

2-1. 특징

* 팀을 중심으로 개발
* 제품 책임자, 스크럼 마스터, 개발팀
* 확약, 전념, 정직, 존중, 용기

2-2. 스크럼 모델의 구성

1. 제품 책임자(PO)
    * 요구사항을 책임지고 의사를 결정
    * 백로그에 스토리를 작성
    * 제품에 대한 요구사항을 작성하는 주체
2. 스크럼 마스터(SM)
    * 팀이 개발을 잘 수행하도록 가이드 역할
    * 일일 스크럼 회의를 주관하고 발생된 장애 요소를 공론화하여 처리
3. 개발팀(DT)
    * PO 와 SM을 제외한 개발자 및 디자이너, 테스터 등 참여하는 모든팀원

2-3. 개발 프로세스

1. 제품 백로그
    * UserStory를 우선순위에 따라 나열한 목록
2. 스프린트 계획 회의
    * 제품 백로그중 수행할 작업을 대상으로 짧은 일정 수립
3. 스프린트
    * 스프린트 백로그에 작성된 Task 대상으로 작성시간을 측정한후 담당 개발자에게 할당
4. 일일 스크럼 회의
    * 15분정도 짧은 시간 동안 소멸 차트를 통해 진행도 점검
5. 스프린트 검토 회의
    * 사용자포함 참석인원앞에서 부분 또는 완성 제품을 테스트
6. 스프린트 회고
    * 규칙을 준수하며 스프린트 진행되었는지? 개선점은 없었는지 확인

3.XP 모델

3-1. 특징

1. 고객참여와 개발과정의 반복을 극대화 하여 개발 생산성 향상
2. 짧고 반복적인 개발주기
3. 소규모 인원의 개발 프로젝트에 효과적

XP 가치

* (용)기
* (단)순성
* (피)드백
* (의)사소통
* (존)중

3-2. 개발 프로세스

1. 사용자 스토리
    * 고객의 요구사항을 기능 단위로 구성
2. 릴리즈 계획 수립
    * 몇가지 스토리를 합하여 부분적 기능이 완성된 제품을 제공
3. 스파이크
    * 기술문제 해결을 위한 간단한 프로그램
4. 이터레이션
    * 하나의 릴리즈를 세분화한 단위
5. 승인검사
    * 릴리즈 단위의 부분 완료 제품이 구현되는 테스트

3-3. XP 기본 원리

1. Fine scale feedback
2. Continuous process
3. Shared understanding
4. Programmer welfare

4.프로젝트 관리

4-1. 개념

* 사업의 목적에 맞게 계획된 일정과 비용범위에서 목적을 달성하기 위한 모든활동
* 정해진 시간 안에 단계적으로 진행되는 특성
* 업무마다 프로젝트 개발 방법이 다르다

4-2. 프로젝트 관리의 종류

1. 일정관리
2. 예산관리
3. 인력관리
4. 위험관리
5. 품질관리
6. 프로젝트 관리의 3P: People, Problem, Process

4-3. 프로젝트 계획 수립

1. 소프트웨어 영역 측정
    * 처리기능
    * 성능
    * 제한조건
    * 개발인원
    * 일정계획
2. 자원측정
    * 하드웨어 자원
    * 소프트웨어 자원
    * 인적 자원

4-4. 인적자원

1. 책임 프로그래머팀 (중앙 집중형)
    * 단기적인 소규모 소프트웨어 개발에 유리
    * 1인 독재 체제의 스타형 구조
2. 민주주의식 팀 (분산형)
    * 장기적인 대규모 소프트웨어 개발에 유리
    * 수평식 링형 구조

4-5. PERT 네트워크

1. PERT 개념
    * 소요기간의 예측이 어려운 경우에 적합한 프로젝트 평가 및 검토기술
2. PERT 이용한 일정 계획순서
3. PERT 일정계획
    * 예측치 측정 = (낙관치 + (4 * 기대치) + 비관치))/6
4. PERT 제공 항목
    * 개발 기간을 결정하는 임계경로를 알수 있다

4-6. CPM

1. CPM 개념
    * 소요기간이 확실한 경우 적합한 프로젝트 평가 및 검토기술
    * 작업명을 표시하는 원형 노드와 이정표, 예상 완료 시간을 표시하는 박스노드 구성
2. CPM 이용한 일정 계획순서
3. CPM 일정계획: 노드와 이정표, 간선으로 작업 구분
4. CPM 제공 항목
    * 개발 기간을 결정하는 임계경로를 알수 있다
    * 개별 작업의 가장 근접한 시간을 측정
    * 단계별로 작업간의 경계 시간을 계산 (이정표)

4-7. 위험관리

1. 예상되는 각종 상황을 대처하는 활동
2. 위험의 비중과 영향력을 측정
3. 위험 발생시 대처방안을 준비하고 문서화
4. 항상관찰하고 발생즉시 조치

5.형상 관리

5-1. 형상관리의 개념

1. 소프트웨어 개발의 전 과정에서 발생하는 산출물들의 버전

5-2. 형상 관리의 역할 및 특성

1. 동일한 프로젝트를 여러 개발자가 동시에 개발
2. 사용자들의 불필요한 수정을 제한할수 있다
3. 버전관리를 통해 배포본 관리에 유용

5-3. 형상 관리의 역할 및 특성

1. 형상 식별
    * 절차와 표준, 스키마, 문서, 파일 등 모든 산출물을 대상으로 한다
    * 각 대상을 계층구조로 구성한다
    * 수정 및 추적이 용이하도록 베이스라인의 기준을 정하는 할동
2. 변경 제어(형상통제)
    * 형상 항목의 변경 요구를 검토, 승인하는 작업
    * 변경 항목을 적절히 제어하여 현재의 베이스 라인에 잘반영되도록 조정
    * 형상통제위원회 승인을 통한 통제
3. 형상 상태보고
    * 베이스라인의 상태및 변경형상의 정상반영여부 관리
4. 형상 감사
    * 베이스라인의 무결성을 공식 승인하기위해 검증과정을 거치는 단계

참고자료: 이기적 환상콤비 정보처리기사

728x90

'자격증 > 정보처리기사' 카테고리의 다른 글

UML  (0) 2022.06.21
요구사항 정의  (0) 2022.06.21
소프트웨어 개발환경 분석  (0) 2022.06.20
소프트웨어 개발 방법론  (0) 2022.06.19
소프트웨어 분류와 특성  (0) 2022.06.18