logo

English

이곳의 프로그래밍관련 정보와 소스는 마음대로 활용하셔도 좋습니다. 다만 쓰시기 전에 통보 정도는 해주시는 것이 예의 일것 같습니다. 질문이나 오류 수정은 siseong@gmail.com 으로 주세요. 감사합니다.

CMM / CMMI 란 무엇인가?

by digipine posted Oct 28, 2017
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

 

CMM(Capability Maturity Model)은 미국 카네기 멜론 대학의 SEI(Software Engineering Institute)가 IT 개발의 프로세스 관리능력 향상을 위해 미국방성(Department of Defense)의 자금 지원을 받은 프로젝트로 1986년부터 연구하기 시작하여 1991년도에 발표한 표준 모델이다. CMM은 가장 먼저 개발된 SW-CMM을 일컫는 말이기도 하지만 현재는 소프트웨어 이외에도 적용할 수 있는 많은 분야가 있어 이런 부류의 성숙도 모델을 총칭하는 의미로 사용된다. SW품질 평가기준으로 널리 사용되고 있는 CMM의 후속 모델인 CMMI(Capability Maturity Model Integration)는 소프트웨어와 시스템 기술의 프로세스 개선을 위한 통합모델로 2001년 발표되었다. SEI는 2005년부터 CMM에 대한 지원과 업데이트를 중단하고 CMMI 확산에 주력하겠다는 방침을 밝힌바 있다.


CMMI 프로세스 능력 성숙도

CMMI는 조직의 프로세스 개선을 통한 소프트웨어 개발 과정에서의 비용, 품질, 일정 등 모든 것을 충족시키며 특정 성숙도 레벨로 진입하기 위한 최소한의 기준 제시와  반드시 수행해야할 활동들의 집합으로, 프로세스 프레임워크의 성숙도 향상을 위한 모델이다. CMMI 모델의 각 프로세스 영역(Process Areas)의 특별 목적(specific goals, SP)와 공통 목적(generic goals, GG)의 달성정도를 측정함으로써 프로세스 개선 수준을 나타낼 수 있다. CMMI는 조직의 SW 개발뿐만 아니라 시스템설계, 하드웨어, 운영 등 시스템통합(System Integration, SI) 사업 전반에 대한 프로세스를 평가하고 정의하는 방법인 SCAMPI(Standard CMMI Appraisal Method for Process Improvement)를 제공한다. 특히 제품 또는 서비스의 개발, 획득, 유지보수하기 위한 조직의 공정 및 관리 능력을 향상시키기 위한 가이드를 제공과 이를 통해 프로세스 개선 시 필요한 목표와 체계의 제공이 가능하다.  5단계로 구성되는 CMMI의 성숙도 레벨은 평가 조직의 프로세스를 개선 및 평가하기 위해 실행해야할 실행지침을 포함하며, 성숙한 조직의 각 레벨별 특징은 아래의 표에 설명하였다.

 

[소프트웨어 프로세스 성숙도 레벨 5단계]

 

레벨

특징

레벨 1

Initial

개인의 역량에 따라 프로젝트의 성공과 실패가 좌우된다. 소프트웨어 개발 프로세스는 거의 없는 상태를 의미한다.

표준화된 프로세스 없이 구행결과 예측이 곤란한 조직

레벨 2

Managed

프로세스 하에서 프로젝트가 통제되는 수준으로 조직은 프로세스에 대한 어느 정도의 훈련이 되었다고 볼 수는 있지만, 일정이나 비용과 같은 관리 프로세스 중심이다. 기존 유사 성공사례를 응용하여 반복적으로 사용한다.

기본 프로세스 구축에 의해 프로젝트가 관리되고 있는 조직

레벨 3

Defined

레벨 2에서는 프로젝트를 위한 프로세스가 존재한다면 레벨 3에서는 조직을 위한 표준 프로세스가 존재한다. 모든 프로젝트는 조직의 프로세스를 가져다 상황에 맞게 조정하여 승인받아 사용한다.

세부 표준 프로세스가 있어 프로젝트가 통제되는 조직

레벨 4

Quantitatively

Managed

소프트웨어 프로세스와 소프트웨어 품질에 대한 정량적인 측정이 가능해진다. 조직은 프로세스 데이터베이스를 구축하여 각 프로젝트에서 측정된 결과를 일괄적으로 수집하고 분석하여 품질평가를 위한 기준으로 삼는다.

프로젝트 활동이 정략적으로 관리․통제되고 성과 예측이 가능한 조직

레벨 5

Optimizing

이 레벨에서는 지속적인 개선에 치중한다. 조직적으로 최적화된 프로세스를 적용하여 다시 피드백을 받아 개선하는 상위 단계이다.

지속적인 개선활동이 정착화 되고 최적의 관리로

프로젝트가 수행되는 조직

 

 

프로세스 개선 효과

전세계 많은 기업들은 조직의 프로젝트 수행능력 향상을 위해 CMMI를 적용하고 있으며, 국내ㆍ외에서 최근 프로젝트 참여나 제품 공급을 위한 전제조건으로 제시되는 경우가 늘어나면서 IT서비스 기업은 물론 많은 제조, 금융권 기업 등이 CMMI 인증 획득을 추진하고 있는 추세이다. 흔히, CMMI 도입의 타당성을 얘기하면서 투자대비 효과를 언급한다. 아래 표는 SEI에서 CMMI를 적용한 기업의 프로세스 개선 효과에 대해 발표한 자료이다. 프로젝트 일정준수율 이나 생산성, 품질, 비용, 고객만족도 측면에서 많은 효과를 본 것으로 나타나고 있다. 물론 이런 긍정적인 효과를 본 조직이 전체적으로 많지는 않지만 충실하게 CMMI를 적용한 조직에서는 이러한 긍정적인 효과를 얻을 수 있을 것이다. 그러나 국내 기업들의 CMMI 적용의 효과는 조사 결과만큼 좋지 못한 것이 사실이다. 이러한 원인은 국내 SW개발 문화의 차이나 CMMI 적용방식의 차이 등에서 찾을 수 있을 것이다.

[프로세스 개선 효과]

 

Improvements

High

Low

Median

# of data points

Cost

83%

5%

26%

8

Schedule

90%

15%

55%

10

Productivity

75%

11%

28%

4

Quality

72%

33%

47%

6

Customer Satisfaction

55%

10%

33%

3

Return on Investment

13:1

2:1

3.8:1

4

 

* 출처 : Evidence about Impact and Value Added: One Year Later(Dennis R. Goldenson, Diane L.Gibson, 2004.11)  

TAG •

List of Articles
No. Subject Author Date Views
33 우분투 Nabi 한글 입력기 Tray(트레이) 상단 메뉴바로 옮기기 digipine 2017.11.03 1948
32 대칭키 암호화관련 개념 정리 digipine 2017.11.09 1950
31 Bitbucket에서 SSH 키 등록하고 사용하는 방법 (맥/리눅스) file lizard2019 2023.06.22 1959
30 MacOS 10.12.2 (OSX) 보안 취약점 공격 코드 2 file digipine 2017.11.02 1967
29 How to Build FFMpeg for LAVFilters file lizard2019 2019.06.05 1979
28 XOR Encryption : 단순하면서도 강력한 암호/복호화 기법 digipine 2017.11.02 2028
27 Ubuntu Server OS 한국어 모드로 설치 후 서버 콘솔에서 한글 깨짐 해결 방법 digipine 2017.10.31 2553
26 Git Http Backend Upload Size 설정 - Http 500 Error 해결 digipine 2017.11.02 2564
25 C/C++ struct 패딩(padding) 원리 이해 lizard2019 2019.03.04 2564
24 How to FFMpeg Windows Build with msys 1.0 and MinGW_64 file lizard2019 2019.06.05 2636
23 [ubuntu, 우분투] sendmail 설치 digipine 2017.11.02 2686
» CMM / CMMI 란 무엇인가? digipine 2017.10.28 2874
21 초고속망 통신사 DNS 서버 주소 모음 - DNS 설정 digipine 2017.11.03 2889
20 LibVLC 미디어 재생기 프로그래밍 방법 C++, QT 엉뚱도마뱀 2018.04.20 2927
19 Xcode 없이 맥에 '명령어 라인 도구(Command Line Tools)'를 설치하는 방법 엉뚱도마뱀 2018.12.26 3279
18 WIN CE, GPS - NMEA protocol - GPS Virtual Driver digipine 2017.10.28 3310
17 OpenAL 사용법 정리 1 digipine 2017.11.01 3733
16 [Linux, OSX] pfctl - Packet FIlter Control 사용법 digipine 2017.11.02 3767
15 [iOS] Bluetooth로 App을 백그라운드 모드로 실행는 방법 lizard2019 2020.02.11 3949
14 공짜 무료 C/C++ 컴파일러들 file digipine 2017.10.28 4666
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6