소프트웨어 형상관리(Software Configuration Management)의 정의
- 소프트웨어 생명주기 및 유지보수 과정에서 만들어지는 각 단계별 산출물을 체계적으로 관리하여 소프트웨어에 가시성, 추적성을 부여하여 품질보증활동을 향상시키는 기법
- 소스관리, 버전관리, 빌드구조, 개발환경, 문서 등을 전반적으로 관리
- 형상관리의 포괄적 개념
- 통상적으로 버전관리, 소스관리등으로 불린다
- 즉, 정보를 여러버전으로 관리하는 것
소프트웨어 형상관리의 필요성
- 개발 유지 보수의 문제점
- 통제의 어려움
- 추적의 어려움
- 가시성 결핍
- 감시의 미비
- 무절제한 변경
- 형상관리
- 형상식별 - 형상관리 대상 구분, 관리목록에 대한 번호 부여
- 형상통제 - SW 형상 변경 제안을 검토, 현재 SW 기준선에 반영하도록 통제
- 형상감사 - SW 베이스라인의 무결성 평가 수단
- 형상기록 - SW 형상 및 변경 관리에 대한 각종 수행 결과 기록
- 형상관리 목표
- 관리 효율성 제고
- 가시성 및 통합 정보 제공
- 재사용성 향상
- 유지보수성 향상
- 생산성 제고 및 품질 향상
형상 통제
형상통제의 정의
- 형상에 대한 변경 요청이 있을 경우, 변경 여부와 변경 활동을 통제하는 활동
형상통제의 절차
- 변경요청
- 고객, 개발자에 의해 미리 지정된 양식으로 담당자에게 제출(CR, Change Request)
- 변경심사
- 형상 담당자는 CCB의 등급을 결정하고 소집
- 변경 승인/기각 결정(기간, 예산, 인력 등 검토)
- 승인 시 다음 단계 진행/기각 시 요청자에게 통보
- 변경실시
- 변경대상식별 : 변경에 관련한 모든 식별된 산출물이 변경 대상
- 형상 담당자는 Repository에서 산출물 체크아웃
- 변경확인
- CCB는 변경을 확인
- Repository에 체크인, 새로운 기준선 수립
소프트웨어 생명주기 단계별 베이스 라인
단계 | 기준선 | 형상관리 목록 | 산출물 |
계획 | 기능적 기준선 | 사용자 요구 기능이 정의되는 시스템 | 개발, 형상관리 계획서 |
요구분석 | 분배적 기준선 | 요구 기능이 서브시스템으로 분할되는 시점 | 요구사항 정의서 |
설계 | 설계 기준선 | 개발 전 설계 사양이 완성되는 시점 | 각종 설계서 |
구현 | 시험 기준선 | 시험을 위한 준비 수립 시점 | 원시, 목적, 실행코드 |
시험 | 제품 기준선 | 통합, 기능, 성능 등의 시험완료 시점 | 시험보고서 |
설치/운영 | 운영 기준선 | 개발이 완료되어 운영으로 이관되는 시점 | 메뉴얼 |