CMMI(Capability Maturity Model Integration) 설명하시오
1. CMMI 개념
CMMI(Capability Maturity Model Integration, 능력 성숙도 모델 통합)는 조직의 프로세스 개선을 위한 체계적인 접근 방법을 제공하는 프레임워크입니다.
- 미국 카네기멜론대학교의 소프트웨어 공학 연구소(SEI, Software Engineering Institute)에서 개발
- 기존의 CMM(Capability Maturity Model)을 확장하고 통합한 모델
- 소프트웨어 개발, 시스템 엔지니어링, 제품 및 서비스 획득 등 다양한 분야에 적용 가능
2. CMMI의 역할 및 목적
- 조직의 프로세스 개선 활동의 지침 제공
- 프로젝트 관리 및 엔지니어링 활동의 품질 향상
- 조직의 프로세스 성숙도 수준 평가 및 인증
- 지속적인 프로세스 개선 문화 정착
- 소프트웨어 개발 조직의 경쟁력 강화
3. CMMI의 구조
3.1 표현 방식(Representation)
-
단계적 표현(Staged Representation)
- 조직 전체의 프로세스 개선에 중점
- 5단계의 성숙도 레벨로 구성
- 각 레벨에서 정해진 프로세스 영역을 동시에 개선
-
연속적 표현(Continuous Representation)
- 개별 프로세스 영역별 개선에 중점
- 각 프로세스 영역별로 역량 수준 정의
- 조직에 필요한 특정 프로세스 영역 선택적 개선 가능
4. CMMI 구성요소
4.1 프로세스 영역(Process Areas, PA)
- 관련된 실천 활동들의 집합으로, 특정 영역의 목표를 달성하기 위한 요구사항 모음
- CMMI v2.0 기준 총 18개의 프로세스 영역으로 구성
4.2 목표(Goals)
- 특정 목표(Specific Goals, SG): 특정 프로세스 영역에만 적용되는 고유 목표
- 일반 목표(Generic Goals, GG): 여러 프로세스 영역에 공통적으로 적용되는 목표
4.3 실천 항목(Practices)
- 특정 실천 항목(Specific Practices, SP): 특정 목표 달성을 위한 구체적 활동
- 일반 실천 항목(Generic Practices, GP): 일반 목표 달성을 위한 구체적 활동
5. CMMI 성숙도 레벨
5.1 단계적 표현의 성숙도 레벨
| 레벨 | 명칭 | 특징 |
|---|
| 1 | 초기(Initial) | - 프로세스가 체계화되지 않고 임시방편적(ad-hoc) - 성공은 개인의 능력과 노력에 의존 - 예측 불가능한 결과 |
| 2 | 관리(Managed) | - 프로젝트 단위의 기본적인 프로세스 관리 - 요구사항, 계획, 비용, 일정 등 관리 - 이전 유사 프로젝트의 경험 활용 |
| 3 | 정의(Defined) | - 조직 표준 프로세스 수립 및 활용 - 프로젝트별 맞춤화된 프로세스 사용 - 프로세스가 체계적으로 문서화 |
| 4 | 정량적 관리(Quantitatively Managed) | - 통계적/정량적 기법을 활용한 프로세스 관리 - 프로세스 성과 예측 가능 - 품질 및 성능에 대한 정량적 목표 설정 및 관리 |
| 5 | 최적화(Optimizing) | - 지속적인 프로세스 개선 활동 - 혁신적인 개선 아이디어 발굴 및 적용 - 정량적 피드백을 통한 최적화 |
6. CMMI 프로세스 영역 (v2.0 기준)
6.1 역량 영역별 분류
-
프로젝트 및 작업 관리(Project and Work Management)
- 프로젝트 계획(PP), 프로젝트 모니터링 및 통제(PMC), 위험 관리(RSKM) 등
-
엔지니어링 및 개발(Engineering and Development)
- 요구사항 개발(RD), 기술 솔루션(TS), 제품 통합(PI), 검증(VER), 확인(VAL) 등
-
지원(Supporting)
- 형상 관리(CM), 품질 보증(PPQA), 측정 및 분석(MA), 의사결정 분석 및 해결(DAR) 등
-
프로세스 관리(Process Management)
- 조직 프로세스 정의(OPD), 조직 프로세스 성과(OPP), 조직 훈련(OT) 등
7. CMMI 핵심 용어
| 용어 | 설명 |
|---|
| 프로세스 영역(Process Area) | 관련된 실천 활동들의 집합 |
| 성숙도 레벨(Maturity Level) | 조직 전체의 프로세스 성숙 정도를 단계별로 표현 |
| 역량 수준(Capability Level) | 개별 프로세스 영역의 성숙 정도를 단계별로 표현 |
| 작업 산출물(Work Product) | 프로세스 수행 결과로 만들어진 결과물 |
| 공식 평가 방법(SCAMPI) | CMMI 인증을 위한 공식 평가 방법 |
| 제도화(Institutionalization) | 프로세스가 조직 문화에 통합되어 일상적으로 수행됨 |
8. CMMI 특징
- 프로세스 중심 접근 방식
- 단계적 개선을 통한 점진적 성숙도 향상
- 다양한 산업 분야에 적용 가능한 유연성
- 국제적으로 인정받는 프로세스 개선 및 평가 프레임워크
- 지속적인 버전 업데이트를 통한 현대화 (최신 버전: CMMI v2.0)
9. CMMI와 다른 표준/모델과의 비교
| 구분 | CMMI | ISO 9001 | SPICE(ISO/IEC 15504) |
|---|
| 목적 | 프로세스 개선 | 품질 관리 시스템 | 프로세스 평가 |
| 범위 | 개발, 서비스, 획득 등 | 모든 산업 분야 | 소프트웨어 프로세스 |
| 구조 | 단계적/연속적 표현 | 요구사항 기반 | 프로세스 차원과 역량 차원 |
| 평가 | SCAMPI | 인증 심사 | 프로세스 역량 평가 |
| 특징 | 성숙도 레벨 부여 | 인증서 발급 | 프로세스 역량 프로파일 |
10. CMMI의 장단점
장점
- 체계적인 프로세스 개선 프레임워크 제공
- 국제적으로 인정받는 인증 체계
- 조직의 프로세스 성숙도 객관적 평가 가능
- 프로젝트 성공률 향상
- 품질 향상 및 비용 절감 효과
단점
- 도입 및 유지 비용이 높음
- 소규모 조직에는 과도한 문서화 요구
- 형식적 준수 위주로 변질 가능성
- 인증 획득에 상당한 시간 소요
- 조직 문화와의 통합 어려움
11. 어린이 버전 요약
CMMI는 회사가 더 좋은 방법으로 일하는 방법을 가르쳐주는 가이드북이에요. 마치 학교에서 1학년부터 시작해서 점점 높은 학년으로 올라가듯이, CMMI도 1단계부터 5단계까지 있어요. 1단계는 아직 체계가 없이 일하는 단계이고, 5단계는 최고의 방법으로 일하며 계속 더 좋은 방법을 찾아내는 단계예요. 회사가 이 단계를 올라갈수록 더 좋은 제품을 더 효율적으로 만들 수 있게 된답니다!