ฉันคิดว่าคำตอบของ Frank และ Encaita นั้นครอบคลุมมาก แต่มีบางสิ่งเพิ่มเติมที่ต้องพิจารณา:
ทำไมต้องใช้คะแนนเรื่องราว
จุดประสงค์ของการประเมินด้วยคะแนนเรื่องราวคือการให้ความซับซ้อนในการพัฒนาคุณสมบัติสำหรับแอปพลิเคชันของคุณ วิธีง่ายๆในการคิดเกี่ยวกับมันคือเรื่องราวที่คุณมีในการวิ่งที่กำลังจะมาถึงเช่นการเปลี่ยน URL คุณรู้ว่าสิ่งนี้เป็นเรื่องง่ายในแง่ของความซับซ้อนและมีการกำหนดเกณฑ์การยอมรับอย่างชัดเจนดังนั้นทีมทั้งหมดตกลงว่าแม้จะมีการทดสอบ 1 (โดยใช้ระดับ Fibo)
เรื่องถัดไปที่จะถูกประเมินคือการรวบรวมชุดข้อมูลผู้ใช้และการแสดงภาพที่ส่วนหน้า ในขณะนี้ในฐานะนักพัฒนาซอฟต์แวร์ที่คุณรู้ว่ามันซับซ้อนกว่าการเปลี่ยน URL คุณอภิปรายเรื่องราวและเกณฑ์การยอมรับและคุณมีคำถามมากมายและสามารถดูวิธีแก้ปัญหาที่เป็นไปได้หลายประการสำหรับการทำเช่นนี้ ผู้พัฒนารายอื่น ๆ และฝ่ายควบคุมคุณภาพก็ยอมรับว่ามันซับซ้อนมาก ดังนั้นคุณทุกคนยอมรับว่ามันเป็นเรื่องราว 34 จุด เป็นที่น่าสังเกตว่าเครื่องชั่ง Fibo ช่วยให้คุณสามารถบ่งบอกถึงความมั่นใจที่คุณมีในชีวิต - ยิ่งช่องว่างระหว่างตัวเลขยิ่งบ่งบอกถึงความมั่นใจที่คุณมีน้อยลง
เมื่อถึงจุดนี้นายการต่อสู้ของคุณควรกระโดดและพูดว่าเรื่องนี้มีขนาดใหญ่เกินไปและต้องแบ่งย่อยเป็นเรื่องเล็ก ๆ ที่มีความซับซ้อนน้อยกว่า คุณสามารถเข้าใกล้สิ่งนี้โดยทำในสิ่งที่เป็นที่รู้จักกันในชื่อ SPIKES - นี่เป็นเวลาที่กำหนดไว้เพื่อตรวจสอบบางอย่าง ดังนั้นสำหรับตัวอย่างนี้คุณและผู้พัฒนารายอื่นเห็นด้วยว่าคุณต้องการเวลา 4 ชั่วโมงในการพูดคุยและตรวจสอบการแก้ไขปัญหาทางเทคนิคที่เป็นไปได้
หากต้องการตัดเรื่องสั้นให้สั้นคุณต้องแบ่งเรื่องใหญ่นั้นออกเป็น 4 เรื่องคือ 5, 8, 8 และ 13 คะแนน จำไม่ได้ว่าการประมาณเหล่านี้เกี่ยวกับความซับซ้อนสัมพัทธ์ - พวกเขาไม่จำเป็นต้องเพิ่มค่าประมาณเดิมรวมถึงคุณมีข้อมูลเพิ่มเติมในขณะนี้เพื่อให้การประมาณการแม่นยำยิ่งขึ้น
จากนั้นคุณตกลงเป็นทีมว่าสำหรับการวิ่งครั้งนี้คุณจะตั้งเป้าหมายให้จบเรื่อง 13 จุดเรื่อง 8 จุดหนึ่งเรื่องรวมถึงการเปลี่ยน URL 1 จุดที่คุณระบุไว้แล้ว ทั้งหมด 22 คะแนน การวิ่งครั้งต่อไปคุณทำได้ 27 คะแนนการวิ่งต่อไปนี้คุณจะได้ 18 คะแนน หลังจาก 3 sprints คุณสามารถเริ่มต้นความมั่นใจในความเร็วของคุณ (ความเร็วคือปริมาณงานที่ทีมของคุณสามารถทำได้ในการวิ่งหนึ่งครั้ง) ในการรับความเร็วใช้ค่าเฉลี่ยของการวิ่งครั้งก่อน ดังนั้นในตัวอย่างนี้ค่าเฉลี่ยคือ (22 +27 + 18) / 3 = 22.3 ดังนั้นให้ปัดเศษเป็นค่าที่ใกล้ที่สุดในระดับ Fibo ซึ่งก็คือ 21
ทีนี้สำหรับการวิ่งครั้งต่อไปเพียงแค่ให้ได้ 21 แต้มเท่านั้น
อย่ามัว แต่คิดเรื่องจุดของคุณให้ถูกต้อง - ไม่ใช่วิทยาศาสตร์อย่างแน่นอน คุณรู้ว่าการเปลี่ยนแปลง URL นั้นซับซ้อนน้อยกว่าการรวบรวมข้อมูลดังนั้นเพียงให้คะแนนตามนั้น
บวกกับการพูดคุยสิ่งเหล่านี้เป็นทีมที่ดี มองย้อนกลับไปที่การประเมินของคุณในระหว่างการทบทวนการวิ่งแข่งและพูดคุยว่าคุณมีความสุขกับพวกเขาหรือไม่แล้วให้อาหารสิ่งนี้ในเซสชั่นการวางแผนการวิ่งครั้งต่อไป
ทั้งทีมประเมิน
ทีมงานทั้งหมดจะต้องเห็นด้วยกับการประมาณการเดียวสำหรับแต่ละเรื่อง คุณสมบัติจะไม่เสร็จจนกว่าจะพร้อมใช้งาน เพิ่งได้รับรหัสที่เขียนนั้นไม่ได้ทำ จากประสบการณ์ของฉันทีมการต่อสู้มีประสิทธิภาพมากขึ้นเมื่อทำงานเป็นทีม ยกตัวอย่างของทีมที่ฉันทำงานด้วยตอนนี้ เมื่อฉันเข้าร่วมพวกเขากำลังทำการประชุมวิ่งและวางแผนโป๊กเกอร์ทั้งหมด แต่ในระหว่างการวิ่งกระบวนการคือ 1 BAs / เจ้าของผลิตภัณฑ์กำหนดข้อกำหนดเป็นเรื่องราวที่มีเกณฑ์การยอมรับและการทดสอบการยอมรับ 2 พวกเขาส่งข้อกำหนดเหล่านี้ให้กับนักพัฒนาที่เขียน รหัส 3 นักพัฒนามีรหัสที่รวมเข้าไปในสาขาการพัฒนาสำหรับ QA เพื่อทดสอบ 4 การทดสอบ QA จากนั้นพวกเขาเริ่มถามคำถามและการทดสอบล้มเหลวจึงกลับไปสู่การพัฒนา
ที่นี่มีอะไรหายไป? มีการอภิปรายไม่เพียงพอและสมาชิกในทีมแต่ละคนเห็น แต่งานของตนเองเท่านั้น ตอนนี้ BA / PO, devs และ QA มารวมตัวกันก่อนที่จะเขียนรหัสใด ๆ เพื่อหารือเกี่ยวกับข้อกำหนดในรายละเอียดและถามคำถามล่วงหน้าจากนั้นทำการอภิปรายต่อไปตลอดการวิ่ง สิ่งนี้มีประสิทธิภาพมากกว่าและนำไปสู่การแก้ปัญหาที่มีคุณภาพดีขึ้น
การวางแผนโปกเกอร์ช่วยกระบวนการนี้เนื่องจากบังคับให้ทีมหารือเกี่ยวกับคุณลักษณะและเห็นด้วยว่าการส่งมอบคุณลักษณะนั้นซับซ้อนเพียงใดในฐานะที่เป็นทีม ในการพัฒนาซอฟต์แวร์แบบดั้งเดิม Project Manager รับผิดชอบการส่งมอบโครงการ แต่ใครก็ตามที่มีประสบการณ์ของวิธีการนี้รู้ว่ามันไม่ทำงานเพราะบ่อยกว่านั้นผู้คนจะไม่รับผิดชอบต่อส่วนของพวกเขาในการส่งมอบแอปพลิเคชัน ใน Agile คุณไม่จำเป็นต้องมีผู้จัดการโครงการเพราะทีมมีความรับผิดชอบในการส่งใบสมัคร
การประมาณเวลาของงาน
มุมมองของฉันต้องทำงานกับทีมที่ประเมินเวลาในการทำงานและทีมที่ทำเฉพาะจุดเรื่องราวที่คาดเดาไม่ได้เวลาประมาณการ! อันที่จริงพวกเขาแค่เสียเวลา พวกเขาไม่ถูกต้องเท่าที่คะแนนเรื่องราวเพราะพวกเขามีความเฉพาะเจาะจงกับบุคคลที่ไม่ใช่ทีมและแต่ละคนจะมีความคิดที่แตกต่างกันของการประเมินเวลา (ทำให้เกิดเปลวไฟ)
คะแนนเรื่องราวยอมรับว่าสิ่งต่าง ๆ เช่นข้อกำหนดเปลี่ยนตลอดเวลาดังนั้นคุณต้องมีตัวบ่งชี้ว่าทีมสามารถทำอะไรได้บ้างในการวิ่ง
เมื่อคุณมีความเข้าใจเกี่ยวกับความเร็วคุณสามารถวัดสิ่งที่ส่งมอบของคุณในเวลาเพราะคุณรู้ว่าสิ่งที่คุณสามารถทำได้ในแต่ละการวิ่งเช่นทุกสองสัปดาห์คุณจะรู้ว่าคุณลักษณะใดที่สามารถส่งได้ หัวหน้าการต่อสู้และเจ้าของผลิตภัณฑ์ของคุณควรจะมีช่วงการประเมินเพื่อมองไปข้างหน้าถึงการวิ่งในอนาคตจากนั้นคุณจะได้รับตัวบ่งชี้ว่าคุณจะทำงานให้เสร็จภายในไม่กี่เดือนข้างหน้า สิ่งนี้ช่วยให้เจ้าของผลิตภัณฑ์ตัดสินใจจัดลำดับความสำคัญเกี่ยวกับคุณสมบัติที่จะรวมในแอปพลิเคชันสุดท้าย
ฉันมีนักพัฒนาถามว่าเราประมาณเวลาสำหรับงานเพื่อวางแผน แต่จริง ๆ แล้วฉันไม่เห็นด้วยกับวิธีนี้ (อันที่จริงฉันไม่เห็นด้วยอย่างยิ่งกับวิธีนี้) เพราะมันไม่ถูกต้องเช่นสิ่งนี้จะใช้เวลา 4 ชั่วโมงจริง ๆ : หนึ่ง dev อาจรวมถึงเวลาเท่านั้นในงานตัวเองคนอื่นอาจเพิ่มเวลาในการทำถ้วยชา!
การประเมินเวลาจะถูกส่งมอบให้กับบุคคลอื่นเสมอเพื่อวัตถุประสงค์ในการรายงานและยังเน้นย้ำถึงองค์ประกอบของการส่งมอบคุณสมบัติเทียบกับความพยายามของทีมทั้งหมด
การประมาณไม่ใช่ปัญหาที่ใหญ่ที่สุด
การหาการประมาณค่าไม่ใช่ปัญหาที่ใหญ่ที่สุดที่ฉันคิดว่าทีมต้องแก้ สิ่งที่สำคัญที่สุดคือการทำงานร่วมกันเป็นทีมเพื่อทำสิ่งต่างๆให้สำเร็จในการวิ่งเพื่อที่คุณจะได้ไม่ต้องทดสอบทุกอย่างในวันสุดท้าย คุณต้องการเห็นลูกเล่นที่คงที่ตลอดระยะเวลา 2 สัปดาห์ พลวัตของทีมที่ฉันอธิบายข้างต้นเป็นส่วนใหญ่ การประมาณจุดเรื่องราวจะช่วยคุณวางแผนเรื่องนี้เพราะคุณจะเห็นว่าเรื่องใหญ่ที่ต้องแบ่งย่อยออกเป็นเรื่องเล็ก ๆ ที่สามารถนำไปทดสอบเป็นประจำได้