20 % 시간의 주된 이유는 용량 활용률을 100 %가 아니라 80 %로 유지하는 것입니다.
소프트웨어 개발 조직은 기능 요청을 개발 된 기능으로 변환하는 시스템으로 생각할 수 있습니다. 큐잉 이론을 사용하여 동작을 모델링 할 수 있습니다 .
이론
시스템이 요청하는 것보다 빨리 요청이 도착하면 대기합니다. 도착이 느리면 대기열 크기가 줄어 듭니다. 도착 및 서비스 프로세스는 무작위이므로 큐 크기는 시간에 따라 무작위로 변경됩니다.
수학적으로 기울어 진 것은이 "무작위성"에 대해 묻을 수 있습니다. 확률 분포가 있어야하므로 큐 크기는 평균적으로 얼마입니까? 수학 (대기열 이론)은 그에 대한 해답을 가지고 있습니다 : 도착과 서비스 과정이 모두 Markov라면 N = rho ^ 2 / (1-rho).
rho는 서비스 및 도착 비율의 비율과 동일한 활용 계수입니다. 프로세스가 Markov가 아닌 경우 수학은 더 복잡하지만 결론을 변경하지는 않습니다.
이 함수를 플로팅하면 사용률이 최대 0.8 인 동안 평균 큐 길이가 낮게 유지 되고 급격히 증가하여 무한대로 이동 함을 알 수 있습니다. 컴퓨터의 CPU에 대해 생각하면 직관적으로 이해할 수 있습니다. 사용률이 100 %에 도달하면 컴퓨터가 응답하지 않게됩니다.
연습
소프트웨어 개발의 경제성은 소프트웨어 회사가 대기열이 높은 대기열 상태에있을 때 큰 비용이 발생하도록합니다. 여기에는 누락 된 시장 기회, 더 이상 사용되지 않는 제품, 늦은 프로젝트 및 수요를 예상하는 기능을 구축함으로써 발생하는 폐기물이 포함됩니다.
따라서 20 %의 시간은 경제 성과 최적화 문제에 대한 과학적 답변입니다. 본질적으로 시스템의 응답 성을 유지하는 것은 느슨합니다.
몇 가지 실용적인 결론은 즉시 따릅니다.
- 20 %의 시간을 고려하고 비용 회계 (개발자 시간은 X이지만 회사가 감당할 수없는 경우)를하고 있다면 잘못하고있는 것입니다.
- 매주 금요일에 20 %를 할당하면 잘못하고 있습니다
- 20 % 시간 프로젝트 제안서 제출 / 검토 / 승인 시스템을 설정하는 경우, 잘못하고 있습니다
- 작업 표를 작성하는 경우 잘못하고 있습니다
- 혁신을 동기 부여 자로 20 % 시간 동안 사용하고 있다면 잘못하고있는 것입니다. 신제품은 20 % 프로젝트에서 나왔지만 요점은 아닙니다. 핵심 시간 동안 회사가 혁신을 할 수 없다면 문제입니다!
- 20 % 시간은 창의성에 관한 것이 아닙니다. 20 %의 시간으로 창의력을 발휘할 것이라고 말하지 말고 핵심 시간 동안 이미 창의력이 부족한 이유를 물어보십시오.
주석의 질문에 대한 답변
Dan , 당신은 그 권리를 가지고 많은 사람들이 저지른 실수를 정확하게 묘사했습니다. 사용률은 출력 변수이므로 선택할 수 없습니다. 두 프로세스의 특성 비율이므로 프로세스가 그대로 있기 때문입니다. 조직은 두 프로세스 모두에 영향을 미칩니다. 기능과 요구를 일치시키는 것은 소프트웨어 개발 지식이 요구하는 어려운 문제 중 하나입니다. 활용은 조직에서이 문제가 얼마나 잘 해결되었는지를 나타내는 지표 중 하나입니다. 린 이니셔티브가 진행되고 가치 흐름에서 폐기물을 제거함에 따라 여유가 발생합니다. 그러나 20 %의 시간을 요구하면 사용 가능한 용량이 적은 동일한 사용률 트랩을 얻게됩니다.
김 , 그것은 여전히 부분적으로 문화적인 것입니다. 내가 생각할 수있는 가장 가까운 문화 참조는 소위 Marshall Change of Organizational 변경 의 시너지 수준입니다 . 성공적인 린 변환이 끝날 때 나타나거나 처음부터 마른 조직에 존재합니다. ( Bob Marshall 백서 (PDF)에 대한 링크는 다음과 같습니다 .)
참조
위의 논리는 소프트웨어 엔지니어링 문헌에서 잘 지원됩니다. Mary와 Tom Poppendieck 는 2006 년 Lean 소프트웨어 개발 구현 에서이를 암시했습니다 . Donald Reinertsen은 자신의 2009 년 책 "제품 개발 흐름 원칙 (3 장)"에서 공식과 그래프를 통해이 주제에 대해 철저한 치료를 제공합니다.