All posts
Blog Article

DORA와 SPACE를 이해했더라도 실제 개발 조직에 적용하려고 하면 새로운 질문이 생깁니다.
“우리 조직에서는 무엇부터 측정해야 할까?”
처음부터 모든 DORA 지표와 SPACE 영역을 측정할 필요는 없습니다.
오히려 현재 개발 조직이 해결하려는 문제를 정의하고 → 그 문제와 관련된 지표를 선택하고 → 측정할 수 있는 환경을 만들고 → 개선 활동을 실행한 뒤 → 결과를 다시 측정하는 것이 중요합니다.
앞선 글에서는 실제 기업들이 개발 생산성 데이터를 어떻게 활용해 리드 타임과 개발 프로세스를 개선했는지 살펴봤습니다.
이번 글에서는 한 단계 더 나아가 DORA와 SPACE를 실제 개발 조직에 도입하기 위한 구체적인 방법을 8단계로 정리해 보겠습니다.
핵심부터 정리하면 다음과 같습니다.
DORA와 SPACE 도입은 모든 지표를 한꺼번에 측정하는 것에서 시작하지 않습니다. 조직의 문제와 목표를 정의하고, 필요한 지표를 선택한 뒤, 데이터를 실제 개선 활동과 연결하는 방식으로 시작하는 것이 좋습니다.
전체적인 흐름은 다음과 같습니다.
문제 정의 → 목표 설정 → 지표 선정 → 측정 환경 구축 → 구성원 합의 → 측정 → 개선 → 재측정
여기서 중요한 것은 측정 자체가 목적이 되어서는 안 된다는 것입니다.
어떤 데이터를 수집할 것인지보다 먼저 그 데이터를 통해 어떤 문제를 해결하려는지가 명확해야 합니다.
DORA와 SPACE를 도입할 때 가장 먼저 해야 할 일은 지표를 고르는 것이 아닙니다. 현재 개발 조직에서 무엇을 개선하고 싶은지 정의하는 것입니다.
예를 들어 다음과 같은 문제가 있을 수 있습니다.
기능 개발은 끝났는데 실제 배포까지 너무 오래 걸린다.
코드 리뷰 대기 시간이 길다.
배포 이후 문제가 반복적으로 발생한다.
개발자가 업무에 집중하기 어렵다.
팀 간 협업 과정에서 대기와 커뮤니케이션 비용이 크다.
개발 조직이 실제로 개선되고 있는지 경영진에게 설명하기 어렵다.
문제가 다르면 필요한 데이터도 달라집니다.
따라서 처음부터 많은 지표를 측정하기보다 현재 가장 중요한 문제 1~2개부터 시작하는 것이 좋습니다. 팀이 데이터에 익숙해지고 측정과 개선의 경험이 쌓이면 이후 필요한 영역을 점진적으로 확장할 수 있습니다.
두 번째는 개발 조직의 개선 목표를 회사의 전략적 목표와 연결하는 것입니다.
예를 들어 단순히 “리드 타임을 줄인다.” 라고 정하는 것보다, “신규 기능을 더 빠르게 사용자에게 전달하기 위해 변경 리드 타임을 줄인다.” 처럼 왜 이 지표를 개선해야 하는지가 설명되어야 합니다.
목표를 구체화할 때는 SMART 프레임워크를 사용해보는 것도 좋습니다.
Specific — 구체적인가?
Measurable — 측정할 수 있는가?
Achievable — 현실적으로 달성 가능한가?
Relevant — 조직의 목표와 관련되어 있는가?
Time-bound — 일정한 기간이 정해져 있는가?
예를 들어, “3개월 동안 코드 리뷰 대기 시간을 30% 줄여 변경 리드 타임을 개선한다.” 처럼 정의할 수 있습니다.
이렇게 하면 개발 생산성 측정이 단순한 엔지니어링팀 내부 활동에서 끝나지 않고 사업 목표를 달성하기 위한 개선 활동으로 연결됩니다.
문제와 목표를 정의했다면 이제 무엇을 측정할 것인지 결정할 차례입니다. 여기서 DORA와 SPACE의 모든 영역을 한 번에 측정할 필요는 없습니다.
예를 들어 조직의 문제가 다음과 같다면 측정할 데이터 역시 달라질 수 있습니다.
해결하려는 문제 | 먼저 살펴볼 수 있는 데이터 |
|---|---|
기능 출시가 느리다 | 변경 리드 타임, 배포 빈도 |
코드 리뷰가 병목이다 | PR 리뷰 대기 시간, 리뷰 소요 시간 |
배포 이후 문제가 많다 | 변경 실패율, 복구 관련 데이터 |
개발자가 업무에 집중하기 어렵다 | 업무 중단, Flow 관련 데이터 |
협업이 원활하지 않다 | Communication & Collaboration 관련 신호 |
팀 상태를 파악하기 어렵다 | Activity, Performance 및 팀별 추세 |
핵심은 “측정할 수 있으니까 측정한다”가 아니라 “의사결정에 필요하기 때문에 측정한다”입니다. 처음에는 소수의 핵심 지표로 시작하고, 실제로 해당 데이터가 문제 해결에 도움이 되는지 확인하면서 확장하는 편이 좋습니다.
측정할 지표가 결정됐다면 데이터를 어떤 방식으로 수집할지 결정해야 합니다. 도구를 선택할 때는 기능의 수보다 현재 목표와 필요한 데이터를 안정적으로 측정할 수 있는지를 먼저 확인해야 합니다.
대표적으로 다음 요소를 살펴볼 수 있습니다.
관련성 — 필요한 개발 생산성 데이터를 측정할 수 있는가?
연동성 — GitHub, Jira 등 현재 개발 환경과 연결할 수 있는가?
확장성 — 팀이나 프로젝트가 늘어나도 지속적으로 사용할 수 있는가?
자동화 — 데이터를 반복적으로 수작업 입력하지 않아도 되는가?
보안 및 컴플라이언스 — 조직의 보안 정책을 충족하는가?
사용성 — 개발자와 관리자가 실제 업무에서 쉽게 확인할 수 있는가?
비용 — 도입과 운영 비용이 얻을 수 있는 가치에 적절한가?
특히 중요한 것은 데이터 수집의 자동화입니다.
측정을 위해 매주 개발자가 직접 데이터를 정리해야 한다면 측정 자체가 새로운 업무 부담이 될 수 있습니다. 가능하면 기존 개발 도구에서 발생하는 데이터를 자동으로 수집하고, 지속적으로 추세를 확인할 수 있는 환경을 만드는 것이 좋습니다.
개발 생산성 측정에서 기술적인 설정만큼 중요한 것이 있습니다. 바로 구성원의 신뢰입니다. PR, 리뷰 시간, 배포, 개발 활동 등의 데이터를 수집하기 시작하면 개발자는 자연스럽게 다음과 같은 의문을 가질 수 있습니다.
“이 데이터가 개인 평가에 사용되는 것은 아닐까?”
측정 목적이 불분명하면 구성원은 데이터 자체에 방어적으로 반응할 수 있습니다. 따라서 도입 초기부터 개발자뿐 아니라 엔지니어링 매니저, 제품 조직, 경영진 등 주요 이해관계자가 참여해 다음을 합의하는 것이 중요합니다.
무엇을 측정하는가 / 왜 측정하는가 / 어떻게 활용하는가 / 무엇에는 사용하지 않는가
특히 개발 생산성 데이터가 개인을 단순 비교하기 위한 점수표가 아니라 팀의 병목과 개발 프로세스를 개선하기 위한 정보라는 점을 명확하게 공유할 필요가 있습니다.
측정을 시작했다고 바로 목표값을 설정하거나 조직을 평가할 필요는 없습니다. 먼저 현재 상태를 이해할 수 있는 기준선(Baseline)을 만드는 것이 좋습니다.
예를 들어 최근 몇 주 또는 몇 달 동안의 데이터를 살펴보면서,
평소 변경 리드 타임은 어느 정도인가?
배포 빈도는 어떻게 변화하고 있는가?
PR 리뷰에는 얼마나 시간이 걸리는가?
특정 팀이나 시기에 반복되는 병목이 있는가?
등을 확인할 수 있습니다.
여기에서 중요한 것은 한 시점의 숫자보다 시간에 따른 변화와 패턴입니다.
리드 타임이 20시간이라는 사실 하나보다, 30시간 → 26시간 → 22시간 → 20시간처럼 개선되고 있는지를 보는 것이 실제 조직의 변화를 이해하는 데 더 유용할 수 있습니다.
또한, 외부 기업의 숫자를 그대로 목표로 삼는 것도 주의할 필요가 있습니다.
제품의 구조, 팀 규모, 배포 방식, 개발 환경이 다르기 때문에 다른 조직의 절대적인 수치보다 우리 조직의 이전 상태와 비교하면서 개선 방향을 살펴보는 것이 중요합니다.
당연하지만, 대시보드에서 지표를 확인하는 것만으로 개발 생산성이 개선되지는 않습니다. 결국은 개선을 위한 실행이 필요합니다. 때문에 데이터에서 변화나 이상 징후를 발견했다면 왜 그런 변화가 발생했는지 팀이 함께 살펴봐야 합니다.
예를 들어 변경 리드 타임이 증가했다고 가정해 보겠습니다.
단순히
“리드 타임이 증가했으니 줄여야 한다.”
고 결론 내리는 대신,
코드 작성 시간이 길어진 것인가?
PR이 리뷰를 기다리는 시간이 길어진 것인가?
테스트에서 병목이 발생하는가?
승인 과정이 오래 걸리는가?
특정 개발자에게 리뷰가 집중되어 있는가?
등으로 문제를 구체화할 수 있습니다.
그리고 원인에 대한 가설을 세운 뒤 실제 개선 활동을 실행합니다. 예를 들어 리뷰어 자동 지정, PR 크기 축소, CI/CD 개선, 불필요한 승인 제거 등의 방법을 실험해 볼 수 있습니다. 그다음 동일한 데이터를 다시 측정해 실제로 개선됐는지 확인합니다.
결국 중요한 흐름은 다음과 같습니다.
측정 → 이상 발견 → 원인에 대한 가설 → 개선 → 재측정
이 과정이 반복될 때 개발 생산성 데이터가 실제 조직 개선으로 연결됩니다.
DORA와 SPACE 도입은 한 번의 프로젝트로 끝나는 활동이 아닙니다. 개발 조직과 제품, 비즈니스 환경이 변하면 중요하게 살펴봐야 할 문제와 지표 역시 달라질 수 있습니다.
따라서 일정한 주기로 데이터를 검토하고, 어떤 지표가 개선됐는지, 무엇을 변경했는지, 어떤 시도가 효과가 없었는지, 다음에는 무엇을 실험할 것인지 팀과 공유해야만 합니다.
성과가 있다면 개발 조직 밖에도 보여줄 수 있습니다.
예를 들어,
“코드 리뷰 프로세스를 변경한 이후 평균 리뷰 대기 시간이 감소했고, 그 결과 변경 리드 타임도 개선되었습니다.”
처럼 활동 → 데이터 변화 → 결과를 연결해 설명할 수 있습니다.
대시보드나 리포트를 활용해 이러한 변화를 시각적으로 공유하면 개발 조직의 개선 활동을 비개발 조직이나 경영진도 이해하기 쉬워집니다. 이는 단순한 성과 보고를 넘어 개발 조직과 다른 이해관계자가 같은 데이터를 바탕으로 대화할 수 있는 공통 언어를 만드는 데에도 도움이 됩니다.
실제 도입 과정에서는 프레임워크 자체보다 어떻게 사용하는가가 더 중요합니다. 특히 다음과 같은 접근은 주의할 필요가 있습니다.
◼︎처음부터 너무 많은 지표를 측정하는 것
데이터가 많아져도 어떤 문제를 해결해야 하는지 불분명하다면 행동으로 이어지기 어렵습니다.
◼︎외부 벤치마크를 그대로 목표로 사용하는 것
다른 기업의 개발 환경과 우리 조직의 상황이 다르기 때문에 절대적인 숫자만으로 단순 비교하는 것은 적절하지 않을 수 있습니다.
◼︎PR이나 커밋 수를 개인 생산성 점수로 사용하는 것
활동 데이터는 개발 과정의 상태를 이해하는 신호가 될 수 있지만 개인의 가치나 생산성을 그대로 나타내지는 않습니다.
◼︎측정만 하고 개선 활동을 하지 않는 것
대시보드가 만들어졌다는 것과 개발 생산성이 개선됐다는 것은 전혀 다른 이야기입니다.
따라서 DORA와 SPACE 도입의 성공 여부는 얼마나 많은 지표를 수집했는지가 아니라 데이터가 실제 의사결정과 행동의 변화로 이어졌는가를 기준으로 판단하는 것이 좋습니다.
처음 DORA와 SPACE를 도입하는 조직이라면 복잡하게 시작할 필요는 없습니다.
예를 들어 다음과 같은 작은 사이클부터 실행할 수 있습니다.
① 지금 가장 해결하고 싶은 개발 문제를 하나 선택한다.
② 문제를 보여줄 수 있는 2-3개의 지표를 선택한다.③ 기존 데이터를 활용해 현재 기준선을 확인한다.
④ 2-4주 동안 데이터를 관찰한다.
⑤ 회고에서 병목과 원인에 대한 가설을 세운다.
⑥ 개선 활동 하나를 실행한다.
⑦ 동일한 지표를 다시 측정한다.
처음부터 완벽한 측정 체계를 만드는 것보다 작은 문제 하나를 데이터로 발견하고 실제로 개선해 보는 경험을 만드는 것이 중요합니다.
첫 번째 사이클에서 의미 있는 변화를 확인했다면 다른 문제나 팀으로 범위를 점진적으로 확장할 수 있습니다.
아닙니다. 조직이 해결하려는 문제와 목표에 필요한 지표부터 선택하는 것이 좋습니다. 처음에는 소수의 핵심 지표로 시작하고 측정과 개선 경험이 쌓이면서 필요한 영역을 확장할 수 있습니다.
가장 먼저 현재 개발 조직이 해결하려는 문제를 정의해야 합니다. 그다음 문제와 관련된 지표를 선택하고 현재 상태를 측정한 뒤 개선 활동과 재측정을 반복하는 방식으로 접근할 수 있습니다.
PR 수나 커밋 수, 리뷰 시간 등의 활동 데이터를 개인의 생산성과 직접 동일시하는 것은 주의해야 합니다. 개발 생산성 데이터는 개인의 순위를 만드는 것보다 팀과 개발 프로세스의 상태를 이해하고 개선하는 데 활용하는 것이 적절합니다.
필요한 데이터를 측정할 수 있는지뿐 아니라 기존 개발 도구와의 연동, 데이터 수집 자동화, 확장성, 보안, 사용성 등을 함께 확인해야 합니다. 특히 데이터 수집을 위해 개발자의 수작업이 지속적으로 필요하지 않은지가 중요합니다.
정해진 기간이 있는 것은 아닙니다. 팀의 개발 주기와 문제의 성격에 따라 다르기 때문에 먼저 기준선을 만들고 일정 기간 추세를 관찰한 뒤 개선 전후의 변화를 비교하는 것이 좋습니다.
DORA와 SPACE를 도입한다고 하면 먼저 대시보드와 지표부터 떠올리기 쉽습니다. 하지만 데이터를 볼 수 있게 됐다는 것과 개발 조직이 개선됐다는 것은 다릅니다.
중요한 것은 데이터를 통해 문제를 발견하고, 팀이 원인을 논의하고, 실제 프로세스를 변경한 뒤 그 변화가 효과가 있었는지 다시 확인하는 것입니다.
앞선 실제 기업 사례에서도 성과를 만든 것은 단순한 측정이 아니었습니다.
문제 정의 → 측정 → 원인 파악 → 개선 → 재측정이라는 사이클을 반복했기 때문에 데이터가 실제 개발 생산성 개선으로 연결될 수 있었습니다.
따라서 DORA와 SPACE를 처음 도입한다면 완벽한 측정 시스템을 만드는 것부터 시작하지 않아도 됩니다.
지금 우리 개발 조직에서 가장 개선하고 싶은 문제 하나를 선택하는 것.
그리고 그 문제를 이해할 수 있는 데이터를 측정하는 것.
그 작은 사이클을 반복하는 것이 데이터 기반의 개발 조직을 만드는 출발점입니다.

제품 개발팀의 생산성을 파악하고 싶으세요?
지금 무료 체험 버전을 시작하세요!
무료로 시작하기