8.4 엔지니어링 메트릭 프로그램을 위한 성숙도 모델
개요 및 동기
이 책의 1부부터 7부까지의 모든 주제는 그 주제의 특정 메트릭 집단에 맞춰진 자체 5단계 성숙도 모델로 끝난다. 이 주제는 다른 것을 한다: 그것은 한발 물러서서 메트릭 프로그램 전체, 즉 그 모든 개별 메트릭을 함께 만들어 내고 거버넌스하고 그것에 따라 행동하는 조직적 역량에 대해 성숙도가 어떤 모습인지 묻는다. 조직은 예를 들어 훌륭한 계측은 있지만 거버넌스가 없거나(주제 1.4), 훌륭한 개별 메트릭은 있지만 각 메트릭이 얼마나 잘 설계되었는지와 무관하게 근본적인 데이터를 부패시킨 두려움 주도 롤아웃(주제 8.3)이 있다면, 개별 DORA 메트릭 성숙도에서는 4단계에 있으면서도 전체 프로그램 성숙도에서는 여전히 1단계에 있을 수 있다.
이 주제의 모델은 이 책이 다루는 모든 개별 메트릭 집단을 가로지르는 다섯 가지 차원을 중심으로 구축된다: 거버넌스와 소유권(주제 1.4), 계측 품질(주제 1.5), 결과 대 산출 균형(주제 1.3, 주제 7.4), 문화적 신뢰(주제 8.3), 지속적인 개선(이 책의 바로 시작부터 주제 1.1이 확립한 퇴역 및 수정 규율). 조직의 전체 프로그램 성숙도는 현실적으로 이 다섯 차원에 걸친 평균이 아니라 최솟값이다. 그중 어느 하나, 특히 문화적 신뢰의 심각한 약점이 다른 모든 것에서의 강점의 가치를 훼손할 수 있기 때문이며, 이는 정확히 주제 8.3이 직접 주장한 것이다.
대규모 팀에게 이 통합된 모델은 리더십에게 이 책이 내내 제공하는 주제별 성숙도 점검과는 구별되지만 상호보완적인 조직 자가 평가를 위한 단일하고 정직한 도구를 준다. 여러 사업부에 걸쳐 메트릭 성숙도를 비교하는 엔터프라이즈 조직과 감독 기구에 프로그램 성숙도를 보고하는 정부 조직은 둘 다 마흔다섯 개의 개별 주제 수준 성숙도 읽기를 스스로 일관된 전체 그림으로 종합할 필요 없이 이 단일하고 가로지르는 평가로부터 이익을 얻는다.
핵심 원칙
- 프로그램 성숙도는 그 차원에 걸친 평균이 아니라 최솟값이다. 문화적 신뢰의 심각한 약점은 다른 모든 곳의 강점을 훼손한다.
- 다섯 가지 가로지르는 차원은 거버넌스, 계측, 결과 균형, 문화적 신뢰, 지속적인 개선이다. 각 차원은 많은 개별 주제의 실을 한데 모은다.
- 이 모델은 개별 주제 수준 성숙도 모델을 대체하는 것이 아니라 보완한다. 완전한 그림을 위해 둘 다 함께 사용하라.
- 자가 평가는 열망적이 아니라 정직하고 구체적이어야 한다. 당신이 의도하는 곳이 아니라 구체적인 증거를 사용해 실제로 있는 곳을 점수 매겨라.
- 단계 사이의 이동은 단지 시간이 지나는 것이 아니라 의도적인 투자가 필요하다. 성숙도는 자동으로 축적되지 않는다.
권장 사항
구체적인 증거를 사용해 다섯 차원 각각을 독립적으로 평가하라
거버넌스에 대해서는, 모든 결과를 수반하는 메트릭이 명명된 소유자와 문서화된 헌장을 가지고 있는지 확인하라(주제 1.4). 계측에 대해서는, 메트릭이 가능한 한 자가 보고가 아니라 자동화된 소스로부터 오는지 확인하라(주제 1.5). 결과 균형에 대해서는, 당신의 주요 대시보드에서 결과 가중 대 산출 가중 메트릭의 실제 비율을 계산하라(주제 7.4). 문화적 신뢰에 대해서는, 당신의 롤아웃 역사가 메트릭의 잘못 처리되고 처벌적인 사용을 포함한 적이 있는지와 그것이 어떻게 다루어졌는지 정직하게 평가하라(주제 8.3). 지속적인 개선에 대해서는, 당신의 조직이 더 이상 제값을 하지 못하는 메트릭을 퇴역시킨 문서화된 역사를 가지고 있는지 확인하라(주제 1.1). 그것들을 결합하기 전에 각 차원을 독립적으로 점수 매겨라.
차원 전반에 걸친 최솟값을 정직한 전체 점수로 삼아라
다섯 차원 점수를 단일하고 더 보기 좋은 종합 점수로 평균하려는 유혹을 물리쳐라. 훌륭한 계측(4단계)을 가지지만 약한 문화적 신뢰(1단계)를 가진 프로그램은 어떤 의미 있는 의미에서도 2단계나 3단계 프로그램이 아니다. 약한 차원은 강한 차원의 가치를 적극적으로 훼손하는데, 두려움 주도 게임화에 의해 부패된 신뢰할 수 없는 데이터는 훌륭한 계측으로 수집되었다고 해서 구제되지 않기 때문이다. 그것이 평균보다 덜 보기 좋은 전체 그림을 만들어 내더라도 최솟값을 정직하게 보고하라.
이 모델을 주제 수준 모델 대신이 아니라 그것과 함께 사용하라
이 통합된 모델은 “우리의 전체 프로그램이 얼마나 성숙한가”에 답한다. 2부부터 8부까지의 개별 주제 수준 모델은 “이 특정 메트릭에 대한 우리의 관행이 얼마나 성숙한가”에 답한다. 둘 다 함께 사용하라: 어떤 가로지르는 차원이 가장 투자가 필요한지 우선순위를 정하는 데 통합된 모델을, 그 차원 내에서 어떤 특정 메트릭 집단이 가장 관심이 필요한지 식별하는 데 주제 수준 모델을.
위기에 의해서만 촉발되는 것이 아니라 고정된 주기로 평가를 재검토하라
이 책의 일관된 거버넌스 규율(주제 1.4)을 따라, 위기(발견된 게임화 인시던트, 신뢰성을 손상시키는 공개 보고서)가 그 질문을 강요한 후에만이 아니라 보통 매년과 같은 정기적인 주기로 프로그램 성숙도를 재평가하라. 자신의 성숙도를 반응적으로만 검토하는 프로그램은 약화되는 차원이 실제이고 비용이 드는 인시던트를 만들어 내기 전에 그것을 포착하고 다룰 기회를 놓친다.
낮은 점수를 실패 등급이 아니라 투자의 시작점으로 정직하게 취급하라
주제 1.1이 이 책 전체에 대해 확립한 진단적이고 평가적이지 않은 프레이밍을 따라, 어떤 차원에서든 낮은 성숙도 점수를 실망할 평결이 아니라 의도적인 투자 계획(주제 8.5의 채택 로드맵이 직접적인 다음 단계다)의 시작점으로 사용하라. 정직하게 평가된 대부분의 조직은 이 모델 어딘가에서 실제 약점을 발견할 것이다. 생산적인 대응은 점수에 대한 방어성이 아니라 표적화된 투자다.
트레이드오프: 장단점
| 접근법 | 장점 | 단점 |
|---|---|---|
| 다섯 차원 점수 평균하기 | 단일하고 단순하며 더 보기 좋은 숫자를 만들어 냄 | 한 차원의 중대한 약점이 나머지를 훼손하는 것을 숨김 |
| 차원 전반에 걸친 최솟값 취하기 | 정직하고 실행 가능하며 실제 제약을 올바르게 식별함 | 한 차원이 다른 것들보다 상당히 뒤처지면 낙담스럽게 느껴질 수 있음 |
| 주제 수준 모델만 사용하기 | 상세하고 메트릭 특화된 지침 | 전체 프로그램 건강에 대한 가로지르는 뷰를 놓침 |
| 이 통합된 모델만 사용하기 | 단순하고 높은 수준 | 주제 수준 모델이 제공하는 특정하고 실행 가능한 세부 사항을 놓침 |
핵심 긴장은 단순성 대 정직함이며, 거짓으로 정밀한 단일 숫자에 대한 주제 5.5의 주의를 반영한다. 평균화된 점수는 보고하기 더 단순하고 더 편안하지만, 그것은 당신 프로그램의 전체 신뢰성과 가치에 대한 실제 제약을 적극적으로 숨긴다. 정직함 쪽으로 긴장을 해결하라: 최솟값을 보고하고, 완전하고 정확하며 실행 가능한 그림을 위해 이 통합된 모델과 개별 주제 수준 모델을 함께 사용하라.
팀과 논의할 질문
정직하고 독립적으로 평가했을 때, 거버넌스, 계측, 결과 균형, 문화적 신뢰, 지속적인 개선이라는 우리의 다섯 차원 각각은 실제로 어떤 단계를 점수 매기는가? 전체 평가로 결합하기 전에 인상이 아니라 구체적인 증거를 사용해 각 차원을 명시적으로 살펴보라.
우리의 가장 약한 차원은 무엇이며, 그것은 우리 프로그램의 전체 건강에 대한 우리의 직관과 일치하는가, 아니면 우리가 이전에 직접 이름 붙이지 않았던 무언가를 드러내는가? 예를 들어 특별히 문화적 신뢰에서의 낮은 점수는 그렇지 않으면 기술적으로 훌륭해 보이는 데이터에 대한 신뢰를 훼손할 수 있다.
우리는 우리의 가장 약한 차원을 실제 제약으로 정직하게 보고하기보다 우리의 강점과 약점을 더 보기 좋은 전체 그림으로 평균해 왔는가? 당신의 조직이 자신의 메트릭 성숙도에 대해 이전에 어떻게 이야기했는지 정직하라.
우리는 마지막으로 언제 공식적으로 전체 프로그램 성숙도를 재평가했으며, 그것은 위기에 촉발되었는가 아니면 의도적이고 정기적인 주기에 촉발되었는가? 위기에 촉발된 것뿐이라면, 앞으로 정기적인 평가 주기가 어떤 모습일지 논의하라.
우리의 가장 약한 차원에 대한 표적 투자는 다음 분기에 구체적으로 어떤 모습일까? 이 주제의 진단에서 주제 8.5의 채택 로드맵으로 연결하면서, 평가에서 행동으로 직접 이동하라.
우리 조직 외부의 누군가에 의한 정직한 외부 검토와 우리의 자가 평가는 어떻게 비교될까? 이 질문은 당신의 내부 평가가 이 책이 내내 경고해 온 것과 같은 낙관적 편향의 일부에 그 자체로 영향을 받을 수 있는지 테스트하며, 진정으로 외부의 관점으로 주기적으로 확인할 가치가 있다.
분야별 관점
스타트업. 공식적인 다섯 차원 평가는 아주 작은 규모에서는 아마도 불필요할 것이다. 거기서는 비공식적인 인식이 보통 이 모델이 드러낼 대부분을 다룬다. 일찍 채택할 가치가 있는 습관은 단순히 특별히 문화적 신뢰에 대해 정직한 것이다. 젊은 회사의 초기 메트릭 문화는 조직이 상당히 성장한 후에는 바꾸기 훨씬 더 어려워지는 기초를 설정하기 때문이다.
중소기업. 공식적인 점수 매기기 없이도 1년에 한 번 다섯 차원을 단순하고 정직하며 비공식적으로 살펴보는 것은 이 규모에서 구조화된 평가 절차 없이도 이 주제의 가치 대부분을 포착한다.
엔터프라이즈. 이 통합된 모델은 여러 사업부에 걸쳐 메트릭 성숙도를 공정하게 비교하는 데 특히 가치가 있다. 수십 개 팀에 걸친 주제별 비교는 다루기 어려울 것이기 때문이다. 이것을 사용해 여러 부문에 걸쳐 가장 널리 퍼진 약점을 보이는 차원 쪽으로 조직 전체의 투자 우선순위를 정하라.
정부. 이 통합된 모델을 사용하는 문서화되고 정직한 성숙도 자가 평가는, 평가가 열망적이 아니라 정직하게 수행된다면, 감독 기구에 프로그램 엄격함을 입증하는 데 진정으로 유용한 결과물이다. 자가 평가 자체에 대한, 특히 순전히 내부적인 관점에서 정확하게 평가하기 가장 어려운 문화적 신뢰 차원에 대한 주기적인 외부 검토를 고려하라.
사례
엔터프라이즈. 한 물류 기술 회사의 초기 자가 평가는 계측 차원을 4단계(파이프라인과 시스템으로부터의 자동화되고 포괄적인 데이터 소싱)로 점수 매겼지만, 2년 전의 다루어지지 않은 메트릭 오용 인시던트(주제 8.3의 정부 사례를 직접 반영함)에 따라 문화적 신뢰 차원은 1단계였으며, 이는 결코 직접 인정되거나 복구되지 않았다. 리더십의 초기 본능은 이것들을 괜찮은 2단계나 3단계 전체 그림으로 평균하는 것이었다. 이 주제의 최솟값 기반 점수 매기기의 더 정직한 적용은 문화적 신뢰를 전체 프로그램의 가치에 대한 실제 제약으로 올바르게 식별했다. 훌륭한 계측조차 과거 인시던트를 알고 있는 엔지니어가 여전히 완전히 신뢰하거나 정직하게 보고하지 않는 데이터를 만들어 내고 있었기 때문이었다. 주제 8.3의 지침을 직접 따르는 문화적 신뢰 복구에 대한 표적 투자가 이 정직하고 최솟값 기반인 평가의 직접적인 결과로 추가 계측 투자보다 우선시되었다.
정부. 더 광범위한 기술 거버넌스 검토의 일부로 이 통합된 모델을 사용해 첫 번째 공식 성숙도 자가 평가를 수행하는 한 국가 통계 기관은 거버넌스 차원이 좋은 점수(명확한 소유권, 문서화된 헌장)를 받았지만, 결과 가중에 대한 7부의 주장이 기관의 기술 리더십 내에서 지적으로 잘 이해되었음에도 불구하고 결과 균형 차원은 추적된 메트릭의 압도적인 다수가 산출 및 활동 기반이었기 때문에 나쁜 점수를 받았다는 것을 발견했다. “우리는 결과를 더 많이 측정해야 한다”는 막연한 일반적인 느낌이 아니라 이 정직하고 구체적인 발견은 그 기관의 후속 투자 계획(주제 8.5)에 구체적이고 증거에 기반한 시작점을 주었으며, 그 기관의 감독 위원회에 대한 후속 보고는 재지향된 메트릭 투자 전략의 근거로 이 성숙도 평가를 특별히 인용했다.
비즈니스 사례: 동기, ROI, TCO
정직하고 최솟값 기반인 성숙도 자가 평가의 수익은 위의 두 사례 모두가 보여 주는 바로 그 패턴, 즉 약한 차원이 전체 프로그램의 신뢰성을 계속 훼손하는 동안 이미 강한 차원에 더 투자하는 것이 아니라, 메트릭 프로그램의 가치에 대한 실제 제약을 올바르게 식별하는 것이다. 이 표적화 효과가 모델의 주요 가치다: 그것은 투자가 마침 가장 쉽거나 가장 친숙한 곳이 아니라 진정으로 전체 프로그램의 성숙도를 움직일 곳으로 제한된 개선 투자를 지시한다.
총 소유 비용은 평가 노력 자체이며, 이는 겸손하고 주기적이다. 이것은 다루어지지 않은 약한 차원, 특히 문화적 신뢰가 프로그램이 구축한 다른 모든 것의 가치를 계속 조용히 부패시키는 동안 이미 강한 차원에 계속 투자하는 위험에 견주어진다.
안티패턴과 함정
- 차원 점수를 더 보기 좋은 종합으로 평균하기: 프로그램의 전체 가치에 대한 실제 제약을 숨긴다.
- 실제 관행이 아니라 명시된 정책에 근거해 열망적으로만 평가하기: 부정확하고 지나치게 낙관적인 그림을 만들어 낸다.
- 이 통합된 모델을 주제 수준 모델에 대한 보완이 아니라 대체로 사용하기: 그 개별 모델이 제공하는 특정하고 실행 가능한 세부 사항을 잃는다.
- 위기가 그 질문을 강요한 후에만 재평가하기: 약화되는 차원을 선제적으로 포착하고 다룰 기회를 놓친다.
- 낮은 점수를 투자의 시작점이 아니라 실패 등급으로 취급하기: 이 책이 내내 권장하는 생산적이고 진단적인 대응이 아니라 방어성을 초래한다.
- 자가 평가에 대한 정직한 외부 관점을 결코 구하지 않기: 이 책이 내내 경고하는 것과 같은 낙관적 편향이 평가 자체에 영향을 미칠 위험이 있다.
성숙도 모델
- 1단계, 시작: 공식적인 가로지르는 평가가 존재하지 않는다. 개별 메트릭 집단이 독립적으로 평가될 수 있지만 전체 프로그램 건강은 검토되지 않는다.
- 2단계, 개발: 전체 프로그램 강점과 약점에 대한 일부 비공식적 인식이 존재하지만, 구조화된 다섯 차원 평가가 수행되지 않았다.
- 3단계, 표준화: 구조화되고 정직하며 최솟값 기반인 다섯 차원 평가가 구체적인 증거를 사용해 조직 전체에서 수행된다.
- 4단계, 관리: 평가가 정기적인 주기로 반복되며, 그 발견이 직접적이고 일관되게 표적 투자 우선순위를 알린다.
- 5단계, 조율: 조직은 주기적인 외부 검토를 포함해 정직한 자가 평가의 입증되고 지속된 관행을 가지고 있으며, 평가의 발견이 직접 이끈 특정 투자 결정을 지적할 수 있다.
논의를 위한 아이디어
- 지금 다섯 차원 각각에 대한 우리의 정직하고 증거에 기반한 점수는 무엇인가?
- 어떤 차원이 우리의 실제 제약이며, 그것은 우리의 직관과 일치하는가?
- 우리는 최솟값이 보여 줄 것보다 더 보기 좋은 그림으로 점수를 평균한 적이 있는가?
- 우리는 마지막으로 언제 공식적으로 재평가했으며, 그것은 선제적이었는가 아니면 위기 주도였는가?
- 우리의 자가 평가에 대한 정직한 외부 검토는 아마도 무엇을 드러낼까?
핵심 요약
- 프로그램 성숙도는 다섯 가지 가로지르는 차원에 걸쳐 있다: 거버넌스, 계측, 결과 균형, 문화적 신뢰, 지속적인 개선.
- 전체 성숙도는 평균이 아니라 차원 전반에 걸친 최솟값이다. 문화적 신뢰의 약점은 다른 모든 곳의 강점을 훼손한다.
- 이 통합된 모델을 이 책 전체의 개별 주제 수준 성숙도 모델과 대신이 아니라 함께 사용하라.
- 위기가 그 질문을 강요할 때까지 기다리기보다 정기적인 주기로 재평가하라.
- 낮은 점수를 이 책의 진단적 프레이밍을 따라 실패 등급이 아니라 정직한 투자의 시작점으로 취급하라.
참고 문헌 및 추가 자료
- Capability Maturity Model Integration (CMMI), Software Engineering Institute.
- Accelerate: The Science of Lean Software and DevOps, by Nicole Forsgren, Jez Humble, and Gene Kim.
- Measuring and Managing Performance in Organizations, by Robert D. Austin.
- The Fifth Discipline: The Art and Practice of the Learning Organization, by Peter M. Senge.