สนทนาธรรมกับท่านพี่ปอม จนท่านเอาไปเขียน blogpom อ้างถึงทฤษฎี เยอะ-ยุ่ง-ยาก แต่อ่านแล้วรู้สึก ยังไม่จบเลย มาเขียนให้อ่านต่อซะเลย รบกวนไปอ่าน blog-post ท่านก่อนอ่าน post นี้นะครับ จะได้ต่อเนื่อง
การจะบอกว่า story-point อ้างอิงเป็นเวลา เช่น ชั่วโมง, วัน, สัปดาห์ ไม่ได้นั้นไม่ถูกต้องเสียทีเดียว แต่ต้องเข้าใจธรรมชาติของอไจล์เสียก่อนว่า อไจล์นั้นทำงานเป็นทีม เพราะฉะนั้น เวลาที่อ้างอิงได้ จึงไม่สามารถอ้างเป็นหน่วย man เช่น man-hour, man-day, man-week, หรือ man-month ได้ แต่จำเป็นต้อง มองเป็นหน่วย team เช่น team-hour, team-day, team-week หรือ team-month แทน (จะใช้เป็น team-month ไม่ได้ ถ้าหากทำงานเป็น sprint เพราะ หารไม่ลงตัว)
ตัวอย่างเช่น
ทีม A ทำได้เฉลี่ย 36 points ต่อ 2-week sprint คำนวณง่ายๆ ได้ว่า
36 / 2 = 18 points / week ; 1 sprint มี 2 สัปดาห์ , หรือ
36 / 10 = 3.6 points / day ; 1 sprint มี 10 วัน , หรือ
36 / 80 = 0.45 points / hour ; 1 sprint มี 80 ชั่วโมง
ตัวอย่างการใช้งานนี้คือ ถ้าหากเรามี story ขนาด 13 points จะ report เป็น hour ได้อย่างไร ตัวอย่าง
13 / 18 = 0.72 team-weeks ; หรือ
13 / 3.6 = 3.61 team-days ; หรือ
13 / 0.45 = 28.89 team-hours
*** คงมีหลายคนเริ่มคิดต่อแล้ว ว่า ทีมนี้มี 3 คน เพราะฉะนั้น เราก็จับหาร ไปก็ได้ man-day แล้วสิ 3.61 / 3 = 1.2 man-day ไงล่ะ ความจริงแล้ว คิดแบบนี้ ก็พอจะกล้อมแกล้มได้ แต่จะสร้างความเข้าใจผิดได้ง่ายมาก เพราะ ผู้บริหารจะคิดว่า งั้นเพิ่มคน ก็จะได้งานเสร็จเร็วขึ้น เช่น sprint นี้ 36 points ก็เท่ากับ 30 man-days ( ทีม 3 คน ทำงาน 10 วัน ที่ velocity 36 points) เพราะฉะนั้น ถ้าเพิ่ม คนอีกคน เป็น 4 คน ก็จะต้องทำงานเพิ่มได้เป็น 40 man-day หรือ คิดเป็น 48 points ***อันนี้ไม่ถูกต้อง***
Velocity นั้นได้มาจาก teamwork ของอไจล์ หมายความว่า ถ้าหากเราเปลี่ยนแปลงสมาชิกในทีมก็จะทำให้ ความเร็วอันนี้เปลี่ยนตามไปด้วย จึงไม่สามารถนำมาใช้คิดเป็นรายคนได้ อันนี้เป็นเหตุผลที่ทำให้ ตำราอไจล์ส่วนใหญ๋(หรือทั้งหมด) ไม่ยอมให้คิดว่า storypoint เทียบเป็นเวลาได้ เพราะประโยชน์เดียวที่จะใช้คือการเพิ่มลดคน ซึ่งไม่ถูกต้องในการทำงานจริงนั่นเอง