스물두줄

정보관리기술사 · 소프트웨어 공학

소프트웨어 형상관리

형상관리는 형상항목을 식별하고 변경을 통제하며 상태를 기록하는 관리 활동이다. 관리 대상은 소스코드뿐 아니라 요구사항, 설계서, 시험 자료까지 포함한다. 무엇이 어떤 버전인지, 누가 언제 왜 바꿨는지 답할 수 있어야 한다. 형상관리는 네 가지 핵심 활동으로 나뉜다.…

주요 장면

  1. 0:02 정의
  2. 0:20 네 가지 핵심 활동
  3. 0:44 기준선과 변경통제
  4. 1:07 긴급 수정 예
  5. 1:35 중앙집중형과 분산형
  6. 1:58 헷갈리는 점
  7. 2:27 핵심 정리

대본

정의

형상관리는 형상항목을 식별하고 변경을 통제하며 상태를 기록하는 관리 활동이다.

관리 대상은 소스코드뿐 아니라 요구사항, 설계서, 시험 자료까지 포함한다.

무엇이 어떤 버전인지, 누가 언제 왜 바꿨는지 답할 수 있어야 한다.

네 가지 핵심 활동

형상관리는 네 가지 핵심 활동으로 나뉜다.

형상 식별은 무엇을 관리할지 정하고, 형상 통제는 기준선을 바꾸는 변경을 승인한다.

형상 상태 기록과 형상 감사는 두 활동의 결과가 실제로 맞는지 확인한다.

네 활동이 끊기면 기준선의 신뢰성이 떨어진다.

기준선과 변경통제

형상관리의 원리는 기준선을 고정하고 그 이후의 변경을 통제하는 데 있다.

기준선은 검토와 승인을 거친 형상항목의 공식 고정 상태다.

기준선 대상 변경요청은 형상통제위원회(CCB)가 승인하거나 반려한다.

기준선 갱신은 CCB 승인 후에만 가능하다.

긴급 수정 예

가상의 예로, 금융 앱 팀이 릴리스 기준선 R1.0을 운영 중이라고 하자.

결제 오류가 발견되면 R1.0에서 수정 브랜치를 분기하고 CCB가 영향과 위험을 분석한다.

승인 후 수정하고 회귀시험 결과를 연결한 뒤 새 기준선 R1.1을 배포한다.

변경 모듈 3개, 전체 60개이므로 변경 비율은 5%다.

중앙집중형과 분산형

형상관리는 중앙집중형과 분산형 방식으로도 나뉜다.

중앙집중형 SVN은 단일 저장소에서 기준선을 관리하기 쉽다.

분산형 Git은 개발자별 로컬 이력을 가져 병렬 작업에 유리하다.

두 방식 모두 기준선 설정과 변경통제 절차를 같이 적용해야 한다.

헷갈리는 점

버전관리와 형상관리는 같은 뜻이 아니다.

버전관리는 변경 이력을 남기는 한 기능이다.

형상관리는 식별, 변경통제, 상태 기록, 형상 감사를 모두 포함한다.

그러므로 버전관리만으로는 형상관리가 아니다.

핵심 정리

정리하자. 형상관리는 형상항목을 식별하고 변경을 통제하는 관리 활동이다.

기준선은 검토·승인된 형상항목의 공식 고정 상태이며 CCB가 변경을 승인한다.

형상관리의 목적은 변경의 추적성과 재현성 확보다.

같은 장의 영상