어려운 길을 배운 사람의 어두운면에서 몇 가지 조언.
요구 사항이 명확하지 않습니다. 모든 영향을 심층 분석 한 사람은 없습니다.
이 시점에서 추정하지 마십시오. 적의 수에 대한 실마리가없는 전투에서이기려면 얼마나 많은 군인이 필요한지 추정하지 않습니다. 정찰 후 정찰이 이루어집니다. 당신이 이미이 적과 싸운 경우가 아닙니다.
새로운 기능은 아마도 코드에서 가정 한 일부 내용을 어 기고 리팩토링해야 할 모든 것을 즉시 생각하기 시작합니다.
다른 사람이이 분야에 대한 전문 지식을 갖기를 기대하지 않는 한이를 고려해야합니다.
과거의 과제에서해야 할 다른 일이 있으며, 다른 일을 고려한 견적을 내야합니다.
거의 존재하지 않는 테스트 절차를 사용하여 옆에있는 슬롭 팀 동료가 만든 예기치 않은 작업의 경우에도 위와 동일하게 사전에 완벽하게 예측할 수없는 코드가 고장 나게됩니다. 일기 예보입니다.
'완료'정의는 불분명 할 수 있습니다. 언제 수행됩니까? 코딩을 마친 것처럼 '완료'또는 "사용자가 사용하고있는"것과 같이 "완료"?
여기서 사용자 엔드 요구 사항을 이해하고 사용자처럼 생각하십시오. 사용자가 용납 할 수없는 기본 워크 플로가있는 일부 기본 기능이 "완료"된 것으로 간주되기 때문에 동료가 "완료"된 것으로 추정하는 경우 동료가하는 일을 수행하지 마십시오 . 사용자 관점에서 생각하십시오. 일반적으로 고객이 추정하는 모든 클라이언트가 이해하기 때문입니다. 기본 기술 요구 사항이 아닌 완전한 사용자 엔드 요구 사항을 예측하십시오. 그리고 고객이 견적을 요구하는 것은 고객이 어떻게 말을하고 어떻게 말하는지의 기술적 측면을 이해하는 데있어 정확하지 않을 것입니다.
당신이이 모든 것들에 대해 얼마나 의식적이든간에, 때때로 "프로그래머의 자존심"은 당신이 원래 생각했던 것보다 더 짧은 시간을주고 받도록 만듭니다. 특히 마감 시간과 관리 기대에 대한 압박감을 느낄 때.
이러지 마! 당신은 자발적인 열심히 일하는 사람, 아마도 강압에 쉽게 굴복하는 사람처럼 들립니다.
여기서 문제는 이것입니다. 당신과 Joe가 같은 작업에 대한 시간 추정을했다고 가정 해 봅시다 (그러나 한 번에 두 추정값을 모른 채 두 명의 개별 직원 사이에서). 용감하게 "일주일"을 추정 합니다. 일주일에 100 시간 이상, 무급 초과 근무를하게 될 것입니다. 이제 3 일 늦었 어.
한편 Joe는 5 개월로 추정됩니다. 당신은 이것이 말도 안된다고 생각합니다. 일주일 안에 이것을 풀 수 있다고 생각합니다. Joe는 얼마를 일합니까? 일주일에 10 시간? ... 정확하게 5 개월 만에 제 시간에 끝나는 것을 제외하고.
누가 멍청이로 인식 될까요? 맞습니다. 조는 훌륭한 일꾼 인 것 같아요 Joe가 소요 한 시간의 ~ 7 %에서 더 나은 결과를 얻었을 수도 있습니다. 중요한 것은 당신이 일주일 추정에서 3 일 쉬었다는 것입니다.
더 엄격한 추정치에 실수하지 마십시오. 더 느슨한 추정치의 측면에서 오류가 발생했습니다. 회사에는 명성이 있으며, 추정의 정확도만큼 추정의 길이를 기준으로하지는 않을 것입니다. 예상 시간이 너무 길면 정확하기가 쉽고 문제에 대해 더 많은 시간을 할애하여 더 잘 해결할 수 있습니다. 너무 짧은 추정치는 호흡 실을 전혀 남기지 않습니다. 필사적으로 만났거나 망쳤습니다.