소프트웨어 구성 관리

Software configuration management

소프트웨어 엔지니어링에서 소프트웨어 구성 관리(SCM 또는 S/W CM)는 소프트웨어 변경을 추적 및 제어하는 작업입니다.이는 [1]구성 관리의 대규모 분야 간 일부입니다.SCM 프랙티스에는 리비전 제어와 베이스라인 확립이 포함됩니다.문제가 발생했을 경우 SCM은 변경의 '무엇, 시기, 이유 및 사용자'를 판별할 수 있습니다.설정이 정상적으로 동작하고 있는 경우는, SCM 에 의해서, 많은 호스트간에 복제 방법을 결정할 수 있습니다.

소스 구성 관리 프로세스 및 소프트웨어 변경구성 관리[2]약어 "SCM"도 확장됩니다.다만, 「설정」은, 통상, 시스템 관리자가 실시하는 변경을 대상으로 하고 있습니다.

목적들

SCM의 목표는 [citation needed]일반적으로 다음과 같습니다.

  • 구성 식별 - 구성, 구성 항목 및 기준선을 식별합니다.
  • 구성 제어 - 제어된 변경 프로세스를 구현합니다.이는 보통 기본 기능에 따라 전송되는 모든 변경 요청을 승인 또는 거부하는 변경 제어 보드를 설정함으로써 이루어집니다.
  • 구성 상태 계정 - 개발 프로세스 상태에 대해 필요한 모든 정보를 기록하고 보고합니다.
  • 구성 감사 - 구성에 필요한 모든 부품이 포함되어 있고 요건, 아키텍처 사양, 사용자 매뉴얼 등 지정된 문서에 대해 건전한지 확인합니다.
  • 빌드 관리 - 빌드에 사용되는 프로세스 및 도구를 관리합니다.
  • 프로세스 관리 - 조직의 개발 프로세스를 준수합니다.
  • 환경 관리 - 시스템을 호스트하는 소프트웨어와 하드웨어를 관리합니다.
  • 팀워크 - 프로세스와 관련된 팀 간의 상호작용을 촉진합니다.
  • 결함 추적 - 모든 결함이 소스로의 추적 가능성을 가지고 있는지 확인합니다.

클라우드 컴퓨팅과 DevOps의 도입으로 SCM 툴의 용도가 통합되는 경우도 있습니다.SCM 툴 자체는 가상 머신으로 인스턴스화되어 상태 및 버전으로 저장할 수 있는 가상 어플라이언스가 되었습니다.이 툴은 가상 어플라이언스, 스토리지 유닛 및 소프트웨어 번들을 포함한 클라우드 기반 가상 리소스를 모델링하고 관리할 수 있습니다.이제 개발자들은 가상 서버 및 관련 [3]리소스를 동적으로 인스턴스화할 수 있게 되었고, 관계자의 역할과 책임도 통합되었습니다.

역사

컴퓨팅에서의 소프트웨어 구성 관리(SCM)의 역사는 하드웨어 개발과 생산 제어를 위한 CM(Configuration Management용)이 소프트웨어 개발에 적용되던 1950년대부터 거슬러 올라갈 수 있습니다.초기 소프트웨어에는 카드, 테이프 및 기타 미디어와 같은 물리적 설치 공간이 있었습니다.첫 번째 소프트웨어 구성 관리는 수동 조작이었습니다.언어와 복잡성이 발전함에 따라 구성 관리 및 기타 방법을 포함하는 소프트웨어 엔지니어링이 일정, 예산 및 품질 등의 문제로 인해 주요 관심사가 되었습니다.수년에 걸친 실천적 교훈은 절차와 도구의 정의와 확립으로 이어졌습니다.결국 툴은 소프트웨어 [4]변경을 관리하는 시스템이 되었습니다.업계 전체의 프랙티스가 오픈 또는 독자 사양(리비전 제어 시스템 등)으로 솔루션으로서 제공되었습니다.컴퓨터의 사용이 증가함에 따라 요구사항 관리, 설계 대안, 품질 관리 등을 포함한 광범위한 범위를 다루는 시스템이 등장했으며, 이후 도구는 소프트웨어 엔지니어링 연구소의 능력 성숙도 모델 등의 조직의 지침을 따랐습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Roger S. Pressman (2009). Software Engineering: A Practitioner's Approach (7th International ed.). New York: McGraw-Hill.
  2. ^ 가트너와 포레스터 리서치
  3. ^ Amies, A; Peddle S; Pan T M; Zou P X (June 5, 2012). "Develop cloud applications with Rational tools". IBM DeveloperWorks. IBM.
  4. ^ "1988 "신뢰할 수 있는 시스템의 구성 관리를 이해하기 위한 가이드" 전국 컴퓨터 보안 시스템(Google 사용)

추가 정보

  • 828-2012 IEEE Standard for Configuration Management in Systems and Software Engineering. 2012. doi:10.1109/IEEESTD.2012.6170935. ISBN 978-0-7381-7232-3.
  • 아이엘로, R. (2010년)구성 관리의 베스트 프랙티스: 실제 환경에서 사용할 수 있는 실용적인 방법(1차호).애디슨 웨슬리.ISBN 0-321-68586-5.
  • 바비치, W.A.(1986년)소프트웨어 구성 관리, 생산성을 위한 조정.초판보스턴:애디슨 웨슬리
  • 버추크, 애플턴; (2003년).소프트웨어 구성 관리 패턴: 효과적인 팀워크, 실용적인 통합(1차호).애디슨 웨슬리.ISBN 0-201-74117-2.
  • 버소프, E.H. (1997년)소프트웨어 구성 관리의 요소.IEEE Computer Society Press, 캘리포니아 로스앨러미토스, 1-32
  • Dennis, A., Wixom, B.H. & Tegarden, D. (2002)시스템 분석 및 설계: UML. Hoboken(뉴욕): John Wiley & Sons, Inc.의 객체 지향 접근법
  • 미국 국방부(2001년).군사 핸드북: 구성관리 가이드라인(rev. A)(MIL-HDBK-61A).2010년 1월 5일 http://www.everyspec.com/MIL-HDBK/MIL-HDBK-0001-0099/MIL-HDBK-61_11531/에서 취득
  • Futrell, R.T. 등(2002).Quality Software Project Management(품질 소프트웨어 프로젝트 관리). 초판.프렌티스 홀.
  • 국제표준화기구(2003).ISO 10007: 품질관리시스템– 구성관리 가이드라인
  • 사에키 M. (2003)정보 시스템 개발 방법에 메트릭스 포함:방법 공학 기술의 응용CAiSE 2003, 374-389.
  • 스콧, J.A. & Nisse, D. (2001)소프트웨어 구성 관리.인: 소프트웨어 엔지니어링 지식 체계 가이드.2010년 1월 5일 http://www.computer.org/portal/web/swebok/htmlformat에서 취득
  • Paul M. Duvall, Steve Matyas, Andrew Glover(2007).지속적인 통합: 소프트웨어 품질 향상 및 리스크 감소(1차 개정).애디슨-웨슬리 프로페셔널입니다ISBN 0-321-33638-0

외부 링크