본문 바로가기
공부 및 교육/정보처리기사 실기 이론

소프트웨어 버전 등록, 소프트웨어 형상관리(SCM)

by whooops 2023. 3. 5.
반응형

소프트웨어 패키징의 형상 관리(SCM; Software Configuration Management)

- 형상 관리(SCM)는 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동이다.

- 형상 관리는 소프트웨어 개발의 전 단계에 적용되는 활동이며, 유지보수 단계에서도 수행된다.

- 형상 관리는 소프트웨어 개발의 전체 비용을 줄이고, 개발 과정의 여러 방해 요인이 최소화되도록 보증하는 것을 목적으로 한다.

- 형상관리는 오류 수정이나 제품의 지속적인 기능 향상을 위해서 소프트웨어의 변경내역을 개발 단계에서부터 지속적으로 관리하는 것을 의미한다.

 

*형상 : 소프트웨어 개발 단계의 각 과정에서 만들어지는 프로그램, 프로그램을 설명하는 문서, 데이터 등을 통칭하는 말입니다.

소프트웨어 버전 등록, 소프트웨어 형상관리(SCM)
소프트웨어 버전 등록, 소프트웨어 형상관리(SCM)

 

 

 

- 형상 관리 기능

▷형상 식별

형상 관리 대상에 이름과 관리 번호를 부여하고, 계층(Tree) 구조로 구분하여 수정 및 추적이 용이하도록 하는 작업

 

▷버전 제어

소프트웨어 업그레이드나 유지 보수 과정에서 생성된 다른 버전의 형상 항목을 관리하고, 이를 위해 특정 절차와 도구(Tool)를 결합시키는 작업

 

▷형상 통제

식별된 형상 항목에 대한 변경 요구를 검토하여 현재의 기준선(Baseline)이 잘 반영될 수 있도록 조정하는 작업

▷형상 감사

기준선의 무결성을 평가하기 위해 확인, 검증, 검열 괒정을 통해 공식적으로 승인하는 작업

 

▷형상 기록

형상의 식별, 통제, 감사 작업의 결과를 기록하고 관리하고 보고서를 작성하는 작업

 

*기준선 Base Line (변경 통제 시점) : 기준선은 정식으로 검토되고 합의된 명세서나 제품으로, 소프트웨어 개발 시 소프트웨어 변경을 적절히 제어할 수 있도록 도와줍니다.

*무결성 : 무결성은 결점이 없다는 것으로, 정해진 기준에 어긋나지 않고 조건을 충실히 만족하는 정도라고 이해할 수 있습니다.

 

 

 

 

 

◆소프트웨어의 버전 등록 관련 주요 기능

◇저장소 Repository

최신 버전의 파일들과 변경 내역에 대한 정보들이 저장되어 있는 곳

 

◇가져오기 Import

버전관리가 되고 있지 않은 아무것도 없는 저장소(Repsitory)에 처음으로 파일을 복사

◇체크아웃 Check-Out

프로그램을 수정하기 위해 저장소에서 파일을 받아

소스 파일과 함께 버전 관리를 위한 파일들도 받아옴

 

◇체크인 Check-In

체크아웃 한 파일의 수정을 완료한 후 저장소의 파일을 새로운 버전으로 갱신

 

◇커밋 Commit

체크인을 수행할 때 이전에 갱신된 내용이 있는 경우에는 충돌(Conflict)을 알리고, diff 도구를 이용해 수정한 후 갱신을 완료함

 

◇동기화 Update

저장소에 있는 최신 버전으로 자신의 작업 공간을 동기화

 

*diff 도구 : diff 도구는 비교 대상이 되는 파일들의 내용(소스 코드)을 비교하며 서로 다른 부분을 찾아 표시해 주는 도구

 

 

 

 

◆소프트웨어 버전 등록 과정

가져오기(Import) → 인출(Check-Out) → 예치(Commit) → 동기화(Update) → 차이(Diff)

 

1. 가져오기 Import

개발자가 저장소에 신규로 파일을 추가

 

2. 인출 Check-Out

수정 작업을 진행할 개발자가 저장소에 추가된 파일을 자신의 작업 공간으로 인출

3. 예치 Commit

인출한 파일을 수정한 후 설명을 붙여 저장소에 예치

 

4. 동기화 Update

커밋(Commit) 후 새로운 개발자가 자신의 작업 공간을 동기화(Update)함. 이때 기존 개발자가 추가했던 파일을 전달

 

5. 차이 Diff

새로운 개발자가 추가된 파일의 수정 기록(Change Log)을 확인하면서 이전 개발자가 처음 추가한 파일과 이후 변경된 파일의 차이를 확인함

 

*이전 개발자들의 수정 내역을 확인하고 싶을 때 diff 명령을 사용합니다.

 

 

 

 

 

소프트웨어 개발 방법론 테일러링

소프트웨어 개발 방법론 테일러링 - 소프트웨어 개발 방법론 테일러링은 프로젝트 상황 및 특성에 맞도록 정의된 소프트웨어 개발 방법론의 절차, 사용기법 등을 수정하고 보완하는 작업입니다

whooops.tistory.com

 

 

관계형 데이터베이스의 구조/ 관계형 데이터 모델

관계형 데이터베이스 - 관계형 데이터베이스는 2차원적인 표(Table)를 이용해서 데이터 상호 관계를 정의하는 데이터베이스이다. - 1970년 IBM에 근무하던 코드(E.F. Codd)에 의해 제안 - 개체(Entity)와

whooops.tistory.com

 

 

기능모델링 - 유스케이스(USE CASE)다이어그램, 활동(ACTIVITY) 다이어그램

기능 모델링 - 기능 모델링은 사용자의 요구사항을 분석한 뒤 개발될 시스템이 갖춰야 할 기능을 정리한 후 사용자와 함께 정리된 내용을 공유하기 위해 그림으로 표현하는 것 - 사용자가 요구

whooops.tistory.com

 

 

동적 모델링 - 시퀀스 다이어그램, 커뮤니케이션 다이어그램, 상태 다이어그램

동적 모델링 - 동적 모델링은 시스템의 내부 구성 요소들의 상태 변화 과정과 과정에서 발생하는 상호 작용을 표현한 것이다. - 시스템 내부 구성 요소들 간에 이루어지는 동작이라는 관점(View)

whooops.tistory.com

 

반응형

댓글