Monday, August 5, 2019

Product Backlog คืออะไร?

Product Backlog is a work breakdown structure (WBS) ?
Product Backlog is a tasks ?
Product Backlog is a feature ?
Product Backlog is an epic?

เราได้ยินกันบ่อยๆว่า Backlog Backlog Backlog มีใครเข้าใจหรือเปล่า มันคืออะไร? และมีกี่ประเภทบ้าง?

Product Backlog ถ้าแปลตรงตัว ก็คืองานค้างของ Product ที่ต้องทำให้เสร็จ
Product Backlog เป็น 1 ใน 3 สิ่งประดิษฐ์ (Artifacts) ของ Scrum
(อีก 2 คือ Sprint Backlog, Product Increment)

เวลาที่เราพูดถึง Product Backlog ให้นึกภาพก้อนอิฐเรียงต่อขึ้นไปเป็นแถวเดียว เวลาเราหยิบก้อนอิฐไปสร้างบ้าน ถ้าตามการตัดสินใจเบื้องต้นเราก็ควรที่จะหยิบจากบนสุดถูกต้องไหมครับ ถ้าเราหยิบก้อนล่างสุดหินที่เราตั้งไว้คงถล่มลงมา Product Backlog ก็เช่นกันครับ

เราจะเรียงลำดับความสำคัญ (Priority) จากบนสุดลงล่างสุด (Priority High-->Low) 

 Image result for ก้อนหิน

แล้วสังเกตด้วยนะครับ Backlog ด้านบนขนาดมักจะเล็กกว่าด้านล่าง ไม่ใช่เรื่องวิศวกรรมโครงสร้างนะครับ แต่เป็นเรื่องการหยิบเข้าไป Development ใน Sprint

ตอนนี้เรารู้กันแล้วว่า Product Backlog คืองานที่ต้องทำให้เสร็จเพื่อที่เราจะได้ Product ที่เราฝันไว้ออกมาเป็นรูปเป็นร่าง(ฝันที่เป็นจริง) เรามาดูกันต่อว่า Product Backlog มันมีกี่ประเภทและมีความหมายอย่างไรบ้าง

Product Backlog แบ่งออกเป็นประเภทใหญ่ๆดังนี้

1. Epic/Feature 
  • คือ Backlog ที่มีขนาดใหญ่มาก ทีมใช้เวลา Develop > 4 Sprints บางตำราให้แยกออกจากกัน แต่ส่วนตัวผมไม่ว่าจะ Epic หรือ  Feature เป็นอะไรที่ Scope of work ใหญ่มากสำหรับทีมที่จะทำให้เสร็จได้ภายใน 1 Sprint ยังไงก็ต้องทำการ Refinement
2. User Story สามารถแบ่งออกเป็น 2 สถานะด้วยกัน
  • Almost Ready คือ User story ที่ยังไม่พร้อมที่จะเข้า Sprint อาจจะเป็นเพราะ Requirement บางส่วนยังรอการยืนยันจาก PO หรือ Stakeholder โดยปกติจะมีความพร้อม < 80%
  • Ready คือ User story ที่พร้อมจะส่งเข้า Sprint และ User story ที่ดีต้องสามารถ Develop ให้เสร็จได้ภายใน Sprint
3. Bug/Defect ตรงตัวเลยนะครับ เป็น Backlog ประเภทข้อผิดพลาดของตัว Product
4. Spike คือ Backlog ประเภท Research หรือ POC (Prove of concept) ที่เราต้องทำให้รู้จัก User story มากขึ้นก่อนจะเริ่ม Develop ใน Sprint


ข้อผิดพลาดของคนส่วนใหญ่ที่เริ่มนำ Scrum มาใช้งานคือ Refine backlog ไม่ดีพอ ทำให้ผลลัพธ์ปลายทางกลับกลายไปเป็น Mini-waterfall !!! ต้องระวังนะครับ ต้องระวัง





No comments:

Post a Comment