2022-12-24 소프트웨어공학_12

2022. 12. 24. 21:14학부 강의/소프트웨어공학

0. 형상

 

형상이란 소프트웨어 개발 과정의 산출물(소스코드, 문서 등)이 배치된 모습을 뜻한다.

 


1. 형상 관리 (configuration management)

 

형상관리는 …

  • 형상 항목을 식별하여 그 기능적 물리적 특성을 문서화하고,
  • 그러한 특성에 변경을 제어하고,
  • 변경에 관하여 기록 및 보고하고,
  • 명시된 요구사항에 부합하는지 확인하는 기술적이고 관리적인 감독, 감시 활동이다.

 

프로젝트의 생명주기 동안 제품의 무결성과 변경에 대한 추적성을 확보하는 것이 목적이다.

 


가. 필요성

 

프로젝트를 진행하면 요구사항의 변동이 있는 경우가 많다.

 

이때 형상 관리를 수행하지 않는다면 요구사항 변동에 따른 산출물의 수정 결과가 관련자들에게 제대로 전달되지 않는다.

 

관련자들의 작업내용이 중복될 수도 있고, 중심이 되는 소스코드 없이 저마다 다른 소스코드로 작업하는 문제가 발생한다.

 

소프트웨어의 비가시성, 변경 추적의 어려움, 관리와 통제의 어려움, 요구사항 변경으로 인한 잦은 변경 발생 등의 특성으로 인해 발생할 수 있는 위험을 최소화할 필요가 있다.

 


나. 활동

 

현상 관리는 아래와 같은 활동으로 구성된다.

  • 형상 식별 : 형상 관리를 할 항목을 식별한다.
  • 형상 제어 : 변경을 통제한다.
  • 형상 상태 보고 : 변경 사항에 대하여 기록하고 보고한다.
  • 형상 감사 : 요구사항에 맞게 변경 되었는지 확인한다.

 


다. 역할 및 책임

 

현상 관리 활동을 담당한는 형상 담당자를 둔다.

 

또한 형상에 대한 변경은 형상 통제 위원회(CCB)의 허락을 받아야 한다.

 


2. 형상 식별 (configuration identification)

 

형상 관리의 대상을 식별하고 베이스라인의 기준을 정하는 활동.

 

형상 항목 선정 → 형상 식별자 선정 → 베이스라인 기준 선정

 

변경이 필요한 부분과 그렇지 않은 항목을 구분하고 이 중 통제가 필요한 항목을 선정한다.

 

형상 식별자를 이용하여 버전을 부여한다.

 

베이스라인을 설정할 때 필요한 기준을 정한다.

 

베이스라인 : 소프트웨어 개발의 특정 시점에서 형상 항목이 소프트웨어 개발에 하나의 완전한 산출물로 쓰일 수 있는 상태의 집합. (예시 : ver.1.0) (게임할 때 리스폰 구역이라고 생각하면 된다. 안전하게 부활할 수 있음.)

 

베이스라인은 형상 통제 위원회의 평가와 승인을 걸쳐서 변경된다. (보스몹을 잡으면 세이브 포인트를 갱신할 수 있다.)

 


3. 형상 제어 (configuration control)

 

고객의 요구사항 변경을 수용할 것인지 평가하고 결정하는 절차.

 

가. 절차

 

형상을 변경하기 위해서는 형상 관리 위원회(CCB)의 허락이 필요하다.

 

변경을 하기 위해 형상 저장소에서 해당 항목을 체크아웃한다.

 

변경이 이루어지면 CCB는 변경 사항을 확인하고 변경된 베이스라인은 형상 저장소에 체크인한다.

 

변경 항목은 다시 베이스라인으로 수립된다.

 


4. 형상 상태 보고 (configuration status accounting)

 

베이스라인의 현재 상태 및 변경 항목들이 잘 반영되고 있는지 보고하는 절차.

 

형상 관리 계획서에 정한 주기대로 형상 상태 보고서 작성, 제출 및 보고한다.

 


5. 형상 감사 (configuration audit)

 

형상 담당자는 사전에 준비한 체크리스트를 통해 감사를 실시하며 형상 관리 계획서대로 형상 관리가 수행되고 있는지 확인한다.