덜 틀리게 하는 방법
"추정은 항상 틀린다"는 말이 있습니다.
맞습니다. 하지만 덜 틀리게 할 수는 있습니다.
수백 개 프로젝트를 분석해서 찾은, 추정 정확도를 높이는 실전 팁을 공유합니다.
모든 작업이 같은 불확실성을 갖지 않습니다. 신규 개발은 30% 버퍼, 버그 수정은 50% 버퍼, 리팩토링은 40% 버퍼, 외부 API 연동은 100% 버퍼(2배), 성능 최적화는 80% 버퍼, 문서 작성은 20% 버퍼가 필요합니다.
핵심: 외부 의존성이 클수록 버퍼를 늘리세요.
시간 단위를 표준화하면 착각이 줄어듭니다. XS는 2시간(커피 한 잔), S는 4시간(반나절), M은 8시간(하루), L은 16시간(이틀), XL은 40시간(일주일), XXL은 80시간(2주)입니다. "3.5일" 같은 애매한 추정 대신 "L"처럼 명확하게 표시하세요.
빠뜨리기 쉬운 작업들을 체크리스트로 관리합니다. API 개발의 경우 설계 검토 2시간, 스키마 정의 1시간, 구현 4시간, 단위 테스트 2시간, 통합 테스트 2시간, 문서 작성 1시간, 코드 리뷰 1시간, 배포 준비 1시간으로 총 14시간입니다. 처음 추정은 6시간이었지만 체크리스트를 통해 40%의 누락 작업을 발견했습니다.
팀의 실제 생산성을 추적합니다. 매 스프린트마다 추정과 실제를 비교하여 정확도를 기록합니다. 최근 10개 스프린트의 평균 정확도를 계산하여 조정 계수를 도출합니다. 데이터가 부족하면 기본 50% 버퍼를 사용하고, 데이터가 충분하면 실제 정확도를 반영합니다. 신뢰도는 표준편차에 따라 높음, 중간, 낮음으로 분류합니다.
매 스프린트 후 추정 정확도를 분석합니다. 정확했던 추정은 이유를 기록하고, 부정확했던 추정은 원인을 분석하여 교훈을 도출합니다. 예를 들어 UI 컴포넌트는 추정 8시간, 실제 7시간으로 정확했는데 이유는 비슷한 작업 경험이 많았기 때문입니다. 결제 연동은 추정 8시간, 실제 20시간으로 부정확했는데 원인은 PG사 문서가 부실했고, 교훈은 외부 API는 2배 버퍼가 필수라는 것입니다.
개선 액션으로 외부 연동 작업은 무조건 2배 추정, 신규 기술 사용 시 학습 시간 별도 계상, 테스트 작업은 개발 시간의 40% 이상 할당을 정합니다.
불확실성을 시각적으로 표현합니다. 각 작업의 확실도를 10점 만점으로 평가하여 바 차트로 표시합니다. 예를 들어 로그인 UI는 확실도 9점으로 4시간, OAuth 연동은 확실도 5점으로 8시간, 보안 감사는 확실도 3점으로 12시간입니다.
불확실성이 높은 작업부터 먼저 착수하세요.
혼자 추정하지 마세요. 두 명이 함께 추정하면 더 정확합니다. 두 추정의 차이가 50% 이상이면 토론이 필요하고, 그렇지 않으면 가중 평균을 사용합니다. 경험 많은 개발자에게 더 높은 가중치를 부여합니다.
요일과 시간대에 따라 생산성이 다릅니다. 월요일 오전은 70% 효율, 월요일 오후는 90%, 화요일부터 목요일 오전은 100% 효율, 화요일부터 목요일 오후는 90%, 금요일 오전은 80%, 금요일 오후는 60% 효율입니다. 실제 생산성을 반영한 일정을 계산하면 더 현실적인 일정이 나옵니다.
추정 전 확인사항으로 비슷한 과거 작업 데이터 확인, 작업을 8시간 이하로 쪼개기, 외부 의존성 파악, 테스트와 문서와 배포 시간 포함, 팀원과 교차 검증, 불확실성 레벨 표시, 요일과 시간대별 생산성 고려가 있습니다.
추정은 예측이지 약속이 아닙니다.
중요한 건 지속적으로 개선하는 것입니다.
매번 추정하고, 기록하고, 분석하고, 개선하세요. 그러면 "항상 2배 걸린다"에서 "대체로 맞는다"로 발전할 수 있습니다.
기억하세요: 추정은 범위입니다(단일 값이 아닙니다). 불확실성을 인정하고, 데이터를 축적하며, 팀과 함께 추정하세요.
정확한 일정 추정과 프로젝트 관리가 필요하신가요? Plexo를 확인해보세요.