Feature Estimation
Treat It Like You Want To Have A Child
The Way It Is
บทสนทนาระหว่าง Product Owner และทีมงาน
Product Owner: “ไอ้ Feature เปลี่ยนรูป Profile ของ User นี่ต้องใช้เวลา Implement กี่วันครับ”
Team: “น่าจะประมาณห้าวันครับ เขียนไม่ค่อยยากมาก เดี๋ยวไปหาตัวอย่างโค๊ดใน Google เอาก็ได้”
Product Owner: “หรอครับ … อืม ห้าก็ห้าครับ ทำเลย ขอบคุณครับ”
The Way It Should Be
ในหัวของ Product Owner ทั่วไปจะคิดเรื่อง Product Enhancement เป็นหลักซึ่งก็ไม่ใช่เรื่องผิดถ้าเค้าเข้าใจว่าการทำงานมันไม่ได้จบแค่การสร้าง Feature ใหม่ๆแต่มันหมายรวมถึงความยากลำบากที่จะตามมาแบบนี้ด้วย
- การ Deploy จะยากมั้ย? ต้องใช้เวลาแก้หรือเพิ่มอะไรอีกรึเปล่า?
- ถ้าเขียนโค๊ดที่มันซับซ้อนมากๆ ถึงเวลาจะแก้หรือจะ Enhance ต้องใช้เวลาเท่าไร? ไหนจะ Regression Test ที่ต้องทำทุกรอบอีก
- ถ้าลูกค้าเจอบั๊กต้องแก้ จะใช้เวลาแก้เท่าไร?
- ถ้าการใช้งานยุ่งยาก ต้องใช้เวลาเท่าไรในการอธิบาย Feature นี้ให้ทีม Call Center หรือ Support เข้าใจเพื่อตอบคำถามลูกค้าให้ถูกต้อง
- ต้องมี User Manual หรือ What’s New มั้ย?
- อื่นๆ
มันมีงานที่ต้องตามมาอีกมากมายหลังจากการเพิ่ม Feature เข้าไป ที่น่าสนใจคืองานพวกนี้ไม่ได้จบแค่ใน Project ของเราด้วย แต่มันคือภาระที่ทั้งคนในทีมและนอกทีมต้องแบกรับไปอีกนานจนกว่า Product นี้หรือ Feature นี้จะตายไป
การเพิ่ม Feature เปรียบเหมือนการมีลูก…ระยะเวลาที่ทำบวกตั้งท้องมันเทียบไม่ได้กับระยะเวลาที่ต้องเลี้ยงดูเค้าตลอดชีวิต
รู้แบบนี้แล้วเวลาจะ Estimate ว่า Feature นี้ใช้เวลาเท่าไรในการ Implement วันนี้ คิดไกลๆด้วยว่าเราต้องใช้เวลาและ Effort ในการ Support & Maintenance อีกเท่าไรในอนาคต ไม่แน่นะสุดท้ายแล้วมันอาจจะไม่คุ้มที่จะทำก็ได้
Email me when The Way It Should Be publishes stories
