형상관리(Software Configuration Management, SCM) 또는 소프트웨어 구성 관리는 더 범위가 큰 구성 관리의 학문간 분야의 일부인, 소프트웨어의 변경사항을 추적하고 통제하는 작업이다.
개요
형상관리는 소프트웨어 변경사항을 체계적으로 추적, 통제하는 것으로, 어떤 문서나 파일이 변경되었을 경우 변경된 내역을 기록하였다가 나중에 이를 찾아 보아야 할 경우, 변경 원인과 변경 사항을 확인해야 할 경우에 대한 관리를 말한다. 소프트웨어 형상은 사용자, 소프트웨어의 환경에 따라 소프트웨어 생명주기 어느 단계에서나 변경이 발생한다. 새로운 요구사항이 발생되면, 요구사항 관련 형상 항목뿐 아니라, 관련된 설계 형상 항목, 구현, 테스트 형상 항목 및 최종 소프트웨어 제품의 형상 역시 변하게 된다. 이러한 변경 요인은 제품이 개발된 이후, 개발 중 할 것 없이 어디서든 변경이 될 수 있기 때문에 어떤 이유로 변경이 발생했는지, 그 결과로 어떤 형상 항목이 변경되거나, 새로 생성되었는지 관린하는 것이 형상관리이다.
목적
프로젝트의 생명주기 동안 제품의 무결성과 변경에 대한 추적성을 확보하고, 프로젝트에서 변경이 발생되었을 때, 처리하는 메커니즘을 제공하기 위함이다. (제공되는 메커니즘으로는 형상 관리 대상 파악, 베이스라인 지정, 버전관리, 접근제어 등)
필요성
특징
형상관리 시스템은 프로젝트 자원의 'Undo' 기능으로, 프로젝트 수행 도중 변경한 여러 형상 항목에 결함이 발견될 경우, 언제든지 형상 항목을 변경 이전의 상태로 되돌릴 수 있다. 여기서 변경 이전의 상태라 함은 형상 관리를 통해 변경 이력을 잘 저장하고, 뒤에서 설명할 베이스라인을 잘 설정하였다는 것이 전제 조건이 된다. 하나의 형상을 여러 명이 동시에 작업을 해야 할 때도, 형상 관리 시스템을 이용하면 사전에 작업 순서를 조정하거나, 병행해서 작업한 후 발생하는 충돌을 간단하게 해결할 수 있다. 또한, 과거 특정 시점의 작업 내역을 조회할 수도 있다. 형상관리는 형상 식별, 형상 통제, 버전관리, 배포관리 등 다양한 활동을 포함한다. 다양한 형상관리 활동 중에서도 버전관리, 배포관리(빌드 자동화), 변경관리는 SW 개발을 위한 기초적인 활동이다. 버전관리에서는 형상항목의 변경 이력 관리, 동시에 다양한 버전의 형상항목 관리, 형상 항목 충돌 방지 등을 할 수 있다. 배포관리에서는 배포된 형상 항목 추적성을 관리하고, 버전관리 시스템에 등록된 소스 파일을 연계하여 배포 자동화를 수행한다. 변경관리에서는 형상항목 변경요인 등록, 변경요인에 대한 변경된 형상항목 추적관리, 형상 이력의 분석을 통한 SW 상태 모닌터링을 하게 된다.
기능
용어
각주
참고 자료
같이보기
이 형상관리 문서는 소프트웨어에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.
|
개발 : 프로그래밍, 소프트웨어 □■⊕, 데이터, 솔루션, 보안, 하드웨어, 컴퓨터, 사무자동화, 인터넷, 모바일, 사물인터넷, 게임, 메타버스, 디자인
|
|
운영체제(OS)
|
데비안 • 도스(DOS) • 레드햇 리눅스(RHEL) • 리눅스 • 맥OS • 붉은별 • 비에스디(BSD) • 센트오에스(CentOS) • 솔라리스 • 아이오에스(iOS) • 안드로이드 • 에이아이엑스(AIX) • 엑스윈도우 • 엠에스도스(MS-DOS) • 오에스투(OS/2) • 우분투 • 운영체제(OS) • 윈도우 • 유닉스 • 유오에스(UOS) • 지엔유(GNU) • 타이젠 • 티맥스오에스 • 페도라 • 프리비에스디(FreeBSD)
|
|
웹서버
|
구글 웹서버 • 아이아이에스(IIS) • 아이플래닛 • 아파치 웹서버 • 엔진엑스 • 웹투비 • 웹티어
|
|
와스(WAS)
|
글래스피시 • 레진 • 와스서버 • 와일드플라이(제이보스) • 웹로직 • 웹스피어 • 제우스 • 톰캣
|
|
소프트웨어 개발 도구
|
JDK • SDK • 나모 웹에디터 • 넷빈즈 • 델파이 • 드림위버 • 메이븐 • 비주얼 스튜디오 • 안드로이드 스튜디오 • 알스튜디오 • 앱타나 스튜디오 • 엑스코드 • 이알윈(ERWin) • 이클립스 • 인텔리제이 아이디어 • 코드블럭스 • 통합개발환경(IDE) • 파워빌더 • 파이참
|
|
버전관리 도구
|
깃 • 깃허브 • 버전 • 버전관리 • 분산버전관리 • 서브버전(SVN) • 서브클립스 • 젠킨스 • 토터스SVN • 형상관리(구성관리)
|
|
성능관리 솔루션
|
로드러너 • 밸리데이터 • 스트로버스 • 시스마스터 • 엔그라인더 • 제니퍼 • 제이미터 • 지티메트릭스 • 쿨체크
|
|
소프트웨어
|
BaaS • CaaS • DaaS • FaaS • IaaS • NaaS • OaaS • PaaS • QaaS • RaaS • SaaS • SECaaS • UaaS • XaaS • 가상머신 • 개발 툴 • 내그웨어 • 다운그레이드 • 도네이션웨어 • 도커 • 레거시 시스템 • 레지스트리 • 로컬호스트 • 리팩토링 • 미들웨어 • 상용 소프트웨어 • 서버 • 셰어웨어 • 셸 • 소프트웨어 • 소프트웨어 개발 • 소프트웨어 툴 • 시스템 • 시스템 소프트웨어 • 실서버 • 업그레이드 • 업데이트 • 에뮬레이션 • 에뮬레이터 • 오픈소스 • 응용 소프트웨어 • 자바 가상머신 • 자유 소프트웨어 • 커널 • 컴퓨터과학 • 크로스 플랫폼 • 크리플웨어 • 테스트 툴 • 툴 • 툴킷 • 트라이얼웨어 • 패치 • 패키지 소프트웨어 • 프로세스 • 플랫폼 • 플러그인 • 프리웨어
|
|
위키 : 자동차, 교통, 지역, 지도, 산업, 기업, 단체, 업무, 생활, 쇼핑, 블록체인, 암호화폐, 인공지능, 개발, 인물, 행사, 일반
|
|