본문 바로가기
전공 공부/소프트웨어공학

[소프트웨어공학] CMMI (능력 성숙도 모델)

by Yujin Chang 2024. 10. 17.

정의

조직의 프로세스 성숙도를 평가하고 개선하기 위한 프로세스 개선 프레임워크. 주로 소프트웨어 개발 및 시스템 엔지니어링 조직에서 효율성과 품질을 높이기 위한 체계적인 방법으로 사용됨.

특징

조직의 프로세스를 성숙도 단계로 평가하며, 이를 통해 조직이 현재 어느 수준에 있는지를 파악하고, 더 높은 수준으로 도약하기 위한 개선 방안을 제시함. 조직의 성숙도를 5단계로 나누어 관리함.

5단계 성숙도 모델

1. 초기 단계 (Initial Level)

  • 조직의 프로세스가 거의 체계화되어 있지 않고, 프로젝트가 예측 불가능하며 종종 문제가 발생함
  • 프로세스가 일관되지 않거나 자주 변경됨
  • 동일한 결과를 일관되게 재현하기 어렵고, 위기 상황에 대한 대응이 즉흥적임

2. 관리 단계 (Managed Level)

  • 기본적인 프로젝트 관리 프로세스가 수립되어 있으며, 비용과 일정, 요구사항이 관리됨
  • 프로세스가 경험에 의해 어느 정도 정형화되며, 각 프로젝트의 성공 가능성이 어느 정도 예측 가능함
  • 성공적인 프로젝트의 특성을 반영하여 비슷한 프로젝트를 반복할 수 있음

3. 정의된 단계 (Defined Level)

  • 조직 전반에서 표준화된 프로세스가 정의되어 있고, 이러한 프로세스가 모든 프로젝트에서 일관되게 적용됨
  • 모든 프로젝트에서 일관된 방식으로 업무가 수행되며, 표준 프로세스가 개선과 학습의 기반이 됨
  • 프로젝트 성공과 실패에 대한 체계적인 분석과 학습이 이루어져 조직 전체의 프로세스 개선을 촉진함

4. 정량적 관리 단계 (Quantitatively Managed Level)

  • 프로젝트와 프로세스를 정량적으로 측정하고 관리함. 데이터를 기반으로 프로젝트의 성과와 프로세스의 효율성을 분석하고 예측함
  • 데이터와 통계를 통해 프로젝트의 성과와 위험을 보다 정확하게 예측할 수 있고 문제를 미리 예측하고 대응함

5. 최적화 단계 (Optimizing Level)

  • 프로세스를 지속적으로 개선하는 것이 핵심. 데이터를 기반으로 새로운 개선 사항을 찾아내고, 이를 조직 전체에 반영하여 최적의 성과를 도출함
  • 새로운 기술과 프로세스를 도입하여 조직의 성과를 최적화하고, 변화하는 환경에 빠르게 대응할 수 있음
  • 프로세스는 변화하는 요구사항이나 환경에 맞추어 유연하게 대응하고, 지속적으로 최적의 상태로 유지됨