2018.03.20

개발 프로세스 최적화 모델, 'CMMI' 따라잡기

Sarah K. Whit | CIO

업무 능력 및 성숙도 평가 기준(CMM)의 후속 모델인 CMMI(Capability Maturity Model Integration)는 프로세스 개선을 간소화하고 생산적이고 효율적인 개발 문화를 증진하는데 유효하다.



CMMI란?
CCMI란 소프트웨어, 제품 및 서비스 개발의 획득, 유지, 보수를 위한 조직의 공정 및 관리 능력을 향상시키고, 소프트웨어, 제품, 서비스 개발 측면에서 위험도를 경감시킴으로써 생산성과 효율적 행동을 장려할 수 있도록 고안된 프로세스이자 행동 모델이다.

CCMI는 카네기 멜론 대학의 소프트웨어 공학 연구소(Software Engineering Institute)에서 프로젝트, 부서 및 기관들을 위한 프로세스 개선 툴로써 처음 개발됐다. CMMI 개발 과정에는 미 국방성(Department of Defense, DoD)과 미 정부도 참여했다으며 이에 따라 국방성과 미 정부의 소프트웨어 개발 계약에 항상 포함되는 조건 중 하나이다. CMMI는 현재 CMMI 인스티튜트에서 관리하고 있으며, 2016년 ISACA가 CMMI 인스티튜트를 인수했다.

CMMI 모델
CMMI는 우선 ‘프로세스 및 서비스 개발’, ‘서비스 확립 및 관리’, 그리고 ‘제품 및 서비스 획득’이라는 3가지 항목에 대한 평가를 내리는 것으로 개시된다. CMMI의 목적은 더 나은 제품 및 서비스를 지속적으로 개발하기 위해 필요한 모든 것을 제공함으로써 기업의 성과를 개선하는 데에 있다.

그렇지만 CMMI가 단순한 프로세스 모델은 아니다. CMMI는 행동 모델이기도 하다. 예컨대 CMMI를 통해 측정 가능한 기준들을 정립하여 성과를 개선시킬 수도 있지만, 생산적이고 효율적인 행위 패턴이 기관 전반에 자리잡을 수 있도록 장려하는 구조를 정립하는 것도 가능하다.

CMMI의 진화
CMI는 다수의 비즈니스 성숙도 모델을 하나의 프레임워크로 통합하기 위해 개발됐다. CMMI의 전신은 1987년에서 1997년 사이 개발되었던 소프트웨어 CMM 모델이었다. CMMI 버전 1.1은 2002년에 릴리즈 되었으며, 버전 1.2는 2006년에, 버전 1.3은 2010년에 릴리즈 되었다. 그리고 2018년 3월 V2.0이 릴리즈 되면서 V1.3을 완전히 대체할 전망이다.

소프트웨어 CMM의 후속작이라 할 수 있는 CMMI는 소프트웨어 엔지니어링에 최적화된 모델이다. 최신 버전은 이전 버전들보다 더 추상화, 일반화되어 있다. 따라서 모든 산업의 하드웨어, 소프트웨어 및 소프트웨어 개발에 적용될 수 있다.

CMMI의 각 버전은 모두 기업들이 새로운 버전을 더 쉽게 이해하고 사용할 수 있도록 하는 것을 목표로 하고 있으며, 또한 보다 비용 효율적이고, 통합 및 배치가 쉽도록 설계되어 있다. CMMI는 벤더 및 공급업체 평가를 위한 기준을 제시하고, 프로세스 관련 문제를 파악, 해결하며, 리스크를 최소화하고 CMMI 모델을 지원할 수 있는 기업 문화를 제공함으로써 기업들이 양보다 질에 초점을 맞추도록 장려한다.

프로세스 개선을 위한 표준 CMMI 평가 방법론(SCAMPI)
SCAMPI(Standard CMMI Appraisal Method for Process Improvement)는 CMMI 인스티튜트에서 사용하는 공식 평가 방법이다. SCAMPI 방법론 정의 문서에 자세히 설명돼 있다. 이 문서는 CMMI 평가 레퍼런스 문서에 포함 되어 있다. 평가는 A, B, C의 3개 클래스로 나뉜다.

- SCAMPI A: 가장 강력한 평가 방식이라 할 수 있는 SCAMPI A는 다수의 프로세스를 실행하고 난 뒤 가장 유용하다. SCAMPI A는 비즈니스를 위한 평가 기준을 제공하며, 공식적 평가를 내릴 수 있는 유일한 평가 방법론이다. 현장 평가 팀에 소속된 공인된 전문 평가사가 평가를 진행하여야 한다.

- SCAMPI B: SCAMPI A보다 비공식적인 평가 방식이다. B 방식은 CMMI 성숙도 수준 목표를 설정할 수 있게 도와주며, 성공 가능성을 예측하고, 이러한 성숙도 프로세스 내에서 현재 기업이 위치해 있는 지점을 알려주는 역할을 한다.

- SCAMPI C: SCAMPI C 평가 방식은 다른 것들보다 더 짧고, 유연성을 허용하며, 비용도 적게 든다. C 방식은 기업의 확립된 관행들을 평가하고, 어떻게 하면 이들이 CMMI와 통합, 병행될 수 있을 것인지 진단을 내린다. C 방식은 기업 전반을 대상으로도, 프로세스나 부서 단위에서도 사용될 수 있다. A나 B 방식보다 리스크도 크지만, 훨씬 비용 효율적이다.

CMMI 성숙도
CMMI 모델은 기관의 성숙도를 5개 레벨로 나눈다. CMMI를 수용하는 기업들은 최종적으로 5단계인 ‘최적화' 단계를 지향하게 된다. 이 단계에 도달한 기업이라 해도 CMMI가 더 이상 필요 없는 것은 아니다. 이들 기업에게는 이러한 성숙도의 유지, 관리 및 정기적 개선이라는 과업이 주어진다.

CMMI의 5가지 성숙도 레벨
- 초기(Initial): 예측 불가능하고 반응적인 프로세스 단계이다. 이 단계는 “프로세스를 완수하기는 하나 데드라인을 맞추지 못하거나, 예산을 초과하는 경우가 빈번한 단계”이다. 기업으로써는 가장 최악의 평가인 셈이다. 리스크와 비효율성을 초래하는 예측 불가능한 환경이라는 평가이기 때문이다.

- 관리(Managed): 어느 정도의 프로젝트 매니지먼트가 이루어지고 있는 단계이다. 프로젝트의 “계획, 수행, 평가 및 통제”가 이뤄지고 있으나 아직까지 해결해야 할 문제가 많은 단계라 할 수 있다.

- 정의(Defined): 이 단계의 기관들은 단순히 사건에 반응하기 보다는 선제적으로 대응하는 프로세스를 갖추고 있다. “각종 프로젝트, 프로그램 및 포트폴리오에 대한 가이드라인을 제시하는, 기업 전반을 아우르는 표준”이 갖추어져 있는 상태다. 이 단계의 기업들은 자신의 단점을 파악하고, 이를 해결하기 위한 방법을 알고 있으며, 개선을 위한 목표 설정도 되어 있는 상태다.

- 양적 관리(Quantitatively managed): 이 단계는 보다 프로세스에 대한 측정 및 통제가 이루어지는 단계다. 이 단계의 기업은 양적 데이터를 활용하여 이해 관계자들의 니즈에 부합하는 예측 가능한 프로세스를 결정할 수 있다.

- 최적화(Optimizing): 적화 단계의 기업의 프로세스는 안정성과 유연성을 동시에 갖추고 있다. 최적화 단계의 기업은 지속적인 프로세스 개선을 추구하며 동시에 변화와 새로운 기회들에 적극적으로 대응한다. 이 단계의 기업은 보다 큰 ‘민첩성 및 혁신’을 가능케 하는 안정성을 갖추었으며, 예측 가능한 환경을 정립하고 있다고 평가된다.

4단계 또는 5단계 평가를 받은 기관들은 고도의 성숙도를 갖춘 것에 해당한다. 이들은 “지속적으로 발전하며 이해 관계자 및 고객들의 니즈를 충족시키기 위해 성장, 발전 중”인 기업들이다. 그리고 이는 CMMI의 목표이기도 하다. 제품, 서비스 및 각 부서들이 보다 선제적이고 효율적이며 생산적인 프로세스를 갖추어 보다 안정적인 업무 환경을 구축하는 것이다.

CMMI V2.0의 미래.
CMMI의 최신 버전인 Version 2.0은 아직 릴리스 초기 단계로, 온라인 플랫폼 및 PDF 다운로드를 통해 릴리즈 될 예정이다. V2.0에 대한 더 많은 정보가 궁금하다면 CMMI 인스티튜트 웹사이트에 가입하면 된다.

CMMI 인스티튜트에 의하면, 새로운 버전은 다음의 4가지 영역에서 변화가 있을 예정이다.

- 퍼포먼스 강조: V2.0은 퍼포먼스가 기업에 어떤 영향을 미치고, 또한 기관의 퍼포먼스 니즈를 파악하는 것에 대한 더 구체적인 정보를 제공한다. 퍼포먼스 목표를 어떻게 설정할 것인지에 대한 정보를 제공하고, 이러한 목표를 끝까지 주시하여 모든 단계의 비즈니스 성숙도에 있어 목표를 달성되는가를 확인한다.

- 애자일과 스크럼, 안전, 그리고 보안의 통합: V2.0은 다른 방법론들과의 궁합도 아주 좋을 것이라는 전망이다. 이미 애자일 방법론을 채택하고 있던 기업들이라면 CMMI V2.0은 이미 기업에 적합하다는 것이 증명된 확립된 프로세스를 개선 또는 병행할 수 있도록 해 줄 것이다.




2018.03.20

개발 프로세스 최적화 모델, 'CMMI' 따라잡기

Sarah K. Whit | CIO

업무 능력 및 성숙도 평가 기준(CMM)의 후속 모델인 CMMI(Capability Maturity Model Integration)는 프로세스 개선을 간소화하고 생산적이고 효율적인 개발 문화를 증진하는데 유효하다.



CMMI란?
CCMI란 소프트웨어, 제품 및 서비스 개발의 획득, 유지, 보수를 위한 조직의 공정 및 관리 능력을 향상시키고, 소프트웨어, 제품, 서비스 개발 측면에서 위험도를 경감시킴으로써 생산성과 효율적 행동을 장려할 수 있도록 고안된 프로세스이자 행동 모델이다.

CCMI는 카네기 멜론 대학의 소프트웨어 공학 연구소(Software Engineering Institute)에서 프로젝트, 부서 및 기관들을 위한 프로세스 개선 툴로써 처음 개발됐다. CMMI 개발 과정에는 미 국방성(Department of Defense, DoD)과 미 정부도 참여했다으며 이에 따라 국방성과 미 정부의 소프트웨어 개발 계약에 항상 포함되는 조건 중 하나이다. CMMI는 현재 CMMI 인스티튜트에서 관리하고 있으며, 2016년 ISACA가 CMMI 인스티튜트를 인수했다.

CMMI 모델
CMMI는 우선 ‘프로세스 및 서비스 개발’, ‘서비스 확립 및 관리’, 그리고 ‘제품 및 서비스 획득’이라는 3가지 항목에 대한 평가를 내리는 것으로 개시된다. CMMI의 목적은 더 나은 제품 및 서비스를 지속적으로 개발하기 위해 필요한 모든 것을 제공함으로써 기업의 성과를 개선하는 데에 있다.

그렇지만 CMMI가 단순한 프로세스 모델은 아니다. CMMI는 행동 모델이기도 하다. 예컨대 CMMI를 통해 측정 가능한 기준들을 정립하여 성과를 개선시킬 수도 있지만, 생산적이고 효율적인 행위 패턴이 기관 전반에 자리잡을 수 있도록 장려하는 구조를 정립하는 것도 가능하다.

CMMI의 진화
CMI는 다수의 비즈니스 성숙도 모델을 하나의 프레임워크로 통합하기 위해 개발됐다. CMMI의 전신은 1987년에서 1997년 사이 개발되었던 소프트웨어 CMM 모델이었다. CMMI 버전 1.1은 2002년에 릴리즈 되었으며, 버전 1.2는 2006년에, 버전 1.3은 2010년에 릴리즈 되었다. 그리고 2018년 3월 V2.0이 릴리즈 되면서 V1.3을 완전히 대체할 전망이다.

소프트웨어 CMM의 후속작이라 할 수 있는 CMMI는 소프트웨어 엔지니어링에 최적화된 모델이다. 최신 버전은 이전 버전들보다 더 추상화, 일반화되어 있다. 따라서 모든 산업의 하드웨어, 소프트웨어 및 소프트웨어 개발에 적용될 수 있다.

CMMI의 각 버전은 모두 기업들이 새로운 버전을 더 쉽게 이해하고 사용할 수 있도록 하는 것을 목표로 하고 있으며, 또한 보다 비용 효율적이고, 통합 및 배치가 쉽도록 설계되어 있다. CMMI는 벤더 및 공급업체 평가를 위한 기준을 제시하고, 프로세스 관련 문제를 파악, 해결하며, 리스크를 최소화하고 CMMI 모델을 지원할 수 있는 기업 문화를 제공함으로써 기업들이 양보다 질에 초점을 맞추도록 장려한다.

프로세스 개선을 위한 표준 CMMI 평가 방법론(SCAMPI)
SCAMPI(Standard CMMI Appraisal Method for Process Improvement)는 CMMI 인스티튜트에서 사용하는 공식 평가 방법이다. SCAMPI 방법론 정의 문서에 자세히 설명돼 있다. 이 문서는 CMMI 평가 레퍼런스 문서에 포함 되어 있다. 평가는 A, B, C의 3개 클래스로 나뉜다.

- SCAMPI A: 가장 강력한 평가 방식이라 할 수 있는 SCAMPI A는 다수의 프로세스를 실행하고 난 뒤 가장 유용하다. SCAMPI A는 비즈니스를 위한 평가 기준을 제공하며, 공식적 평가를 내릴 수 있는 유일한 평가 방법론이다. 현장 평가 팀에 소속된 공인된 전문 평가사가 평가를 진행하여야 한다.

- SCAMPI B: SCAMPI A보다 비공식적인 평가 방식이다. B 방식은 CMMI 성숙도 수준 목표를 설정할 수 있게 도와주며, 성공 가능성을 예측하고, 이러한 성숙도 프로세스 내에서 현재 기업이 위치해 있는 지점을 알려주는 역할을 한다.

- SCAMPI C: SCAMPI C 평가 방식은 다른 것들보다 더 짧고, 유연성을 허용하며, 비용도 적게 든다. C 방식은 기업의 확립된 관행들을 평가하고, 어떻게 하면 이들이 CMMI와 통합, 병행될 수 있을 것인지 진단을 내린다. C 방식은 기업 전반을 대상으로도, 프로세스나 부서 단위에서도 사용될 수 있다. A나 B 방식보다 리스크도 크지만, 훨씬 비용 효율적이다.

CMMI 성숙도
CMMI 모델은 기관의 성숙도를 5개 레벨로 나눈다. CMMI를 수용하는 기업들은 최종적으로 5단계인 ‘최적화' 단계를 지향하게 된다. 이 단계에 도달한 기업이라 해도 CMMI가 더 이상 필요 없는 것은 아니다. 이들 기업에게는 이러한 성숙도의 유지, 관리 및 정기적 개선이라는 과업이 주어진다.

CMMI의 5가지 성숙도 레벨
- 초기(Initial): 예측 불가능하고 반응적인 프로세스 단계이다. 이 단계는 “프로세스를 완수하기는 하나 데드라인을 맞추지 못하거나, 예산을 초과하는 경우가 빈번한 단계”이다. 기업으로써는 가장 최악의 평가인 셈이다. 리스크와 비효율성을 초래하는 예측 불가능한 환경이라는 평가이기 때문이다.

- 관리(Managed): 어느 정도의 프로젝트 매니지먼트가 이루어지고 있는 단계이다. 프로젝트의 “계획, 수행, 평가 및 통제”가 이뤄지고 있으나 아직까지 해결해야 할 문제가 많은 단계라 할 수 있다.

- 정의(Defined): 이 단계의 기관들은 단순히 사건에 반응하기 보다는 선제적으로 대응하는 프로세스를 갖추고 있다. “각종 프로젝트, 프로그램 및 포트폴리오에 대한 가이드라인을 제시하는, 기업 전반을 아우르는 표준”이 갖추어져 있는 상태다. 이 단계의 기업들은 자신의 단점을 파악하고, 이를 해결하기 위한 방법을 알고 있으며, 개선을 위한 목표 설정도 되어 있는 상태다.

- 양적 관리(Quantitatively managed): 이 단계는 보다 프로세스에 대한 측정 및 통제가 이루어지는 단계다. 이 단계의 기업은 양적 데이터를 활용하여 이해 관계자들의 니즈에 부합하는 예측 가능한 프로세스를 결정할 수 있다.

- 최적화(Optimizing): 적화 단계의 기업의 프로세스는 안정성과 유연성을 동시에 갖추고 있다. 최적화 단계의 기업은 지속적인 프로세스 개선을 추구하며 동시에 변화와 새로운 기회들에 적극적으로 대응한다. 이 단계의 기업은 보다 큰 ‘민첩성 및 혁신’을 가능케 하는 안정성을 갖추었으며, 예측 가능한 환경을 정립하고 있다고 평가된다.

4단계 또는 5단계 평가를 받은 기관들은 고도의 성숙도를 갖춘 것에 해당한다. 이들은 “지속적으로 발전하며 이해 관계자 및 고객들의 니즈를 충족시키기 위해 성장, 발전 중”인 기업들이다. 그리고 이는 CMMI의 목표이기도 하다. 제품, 서비스 및 각 부서들이 보다 선제적이고 효율적이며 생산적인 프로세스를 갖추어 보다 안정적인 업무 환경을 구축하는 것이다.

CMMI V2.0의 미래.
CMMI의 최신 버전인 Version 2.0은 아직 릴리스 초기 단계로, 온라인 플랫폼 및 PDF 다운로드를 통해 릴리즈 될 예정이다. V2.0에 대한 더 많은 정보가 궁금하다면 CMMI 인스티튜트 웹사이트에 가입하면 된다.

CMMI 인스티튜트에 의하면, 새로운 버전은 다음의 4가지 영역에서 변화가 있을 예정이다.

- 퍼포먼스 강조: V2.0은 퍼포먼스가 기업에 어떤 영향을 미치고, 또한 기관의 퍼포먼스 니즈를 파악하는 것에 대한 더 구체적인 정보를 제공한다. 퍼포먼스 목표를 어떻게 설정할 것인지에 대한 정보를 제공하고, 이러한 목표를 끝까지 주시하여 모든 단계의 비즈니스 성숙도에 있어 목표를 달성되는가를 확인한다.

- 애자일과 스크럼, 안전, 그리고 보안의 통합: V2.0은 다른 방법론들과의 궁합도 아주 좋을 것이라는 전망이다. 이미 애자일 방법론을 채택하고 있던 기업들이라면 CMMI V2.0은 이미 기업에 적합하다는 것이 증명된 확립된 프로세스를 개선 또는 병행할 수 있도록 해 줄 것이다.


X