형상관리 (SCM, Software Configuration Management)

별점: ★★★★★ | 기본 필수


답안.

Ⅰ. 개요

형상관리(SCM): SW 개발 과정에서 코드·문서·데이터의 버전을 통제하고, 변경 이력을 추적하며, 여러 개발자 간 협업을 관리하는 체계. 형상 항목(CI): 코드, 문서, 빌드 스크립트, 설정 파일, 데이터베이스 스키마

Ⅱ. 핵심 구성요소

[GitFlow]
main (운영) ─── develop (개발) ─── feature/xxx
                    ↓ release/1.0
                    ↓ hotfix/001 (긴급 패치)
특징: 릴리즈 명확, 복잡한 브랜치 관리

[GitHub Flow]
main ─── feature/xxx (PR → 리뷰 → 병합)
특징: 단순, CI/CD 친화, 지속 배포

[Trunk-Based Development]
main ─── 단기 feature 브랜치 (1~2일)
특징: 지속적 통합 (feature flag 활용), 고빈도 배포
[SCM 4대 활동]
1. 형상 식별 (Identification): CI 목록 정의
2. 형상 통제 (Control): 변경 요청 → 검토 → 승인
3. 형상 감사 (Audit): 형상 항목 무결성 확인
4. 형상 상태 보고 (Status Accounting): 변경 이력 기록

도구:
- 버전 관리: Git, SVN
- 이슈 추적: Jira, GitHub Issues
- CI/CD: Jenkins, GitHub Actions
- 아티팩트: Nexus, Artifactory

해당 키워드의 기술적 구성요소와 동작 원리를 서술한다.

Ⅲ. 특징 및 비교

핵심 기술의 장단점과 유사 기술과의 차이를 분석한다.

Ⅳ. 적용 사례

실무 환경에서의 적용 사례와 기대효과를 제시한다.

Ⅴ. 전망

최신 기술 동향과 향후 발전 방향을 서술한다.