Agile - คู่มือฉบับย่อ
Agile เป็นวิธีการพัฒนาซอฟต์แวร์เพื่อสร้างซอฟต์แวร์ทีละน้อยโดยใช้การวนซ้ำสั้น ๆ 1 ถึง 4 สัปดาห์เพื่อให้กระบวนการพัฒนาสอดคล้องกับความต้องการทางธุรกิจที่เปลี่ยนแปลงไป แทนที่จะใช้การพัฒนาแบบ single-pass เป็นเวลา 6 ถึง 18 เดือนโดยที่ความต้องการและความเสี่ยงทั้งหมดได้รับการคาดการณ์ล่วงหน้า Agile ใช้กระบวนการของข้อเสนอแนะที่พบบ่อยซึ่งผลิตภัณฑ์ที่สามารถใช้งานได้จะถูกส่งมอบหลังจากการทำซ้ำ 1 ถึง 4 สัปดาห์
บทบาทใน Agile
ต่อสู้มาสเตอร์
Scrum Master เป็นหัวหน้าทีมและผู้อำนวยความสะดวกที่ช่วยให้สมาชิกในทีมปฏิบัติตามแนวทางปฏิบัติที่คล่องตัวเพื่อให้พวกเขาสามารถปฏิบัติตามพันธะสัญญาได้ ความรับผิดชอบของผู้เชี่ยวชาญด้านการต่อสู้มีดังนี้ -
เพื่อเปิดใช้งานการทำงานร่วมกันอย่างใกล้ชิดระหว่างบทบาทและหน้าที่ทั้งหมด
เพื่อลบบล็อกใด ๆ
เพื่อป้องกันทีมจากการรบกวนใด ๆ
เพื่อทำงานร่วมกับองค์กรเพื่อติดตามความคืบหน้าและกระบวนการของ บริษัท
เพื่อให้แน่ใจว่ากระบวนการ Agile Inspect & Adapt ได้รับการใช้ประโยชน์อย่างเหมาะสมซึ่งรวมถึง
- ยืนอัพทุกวัน
- การประชุมตามแผน
- Demo,
- Review,
- การประชุมย้อนหลังและ
- เพื่ออำนวยความสะดวกในการประชุมทีมและกระบวนการตัดสินใจ
เจ้าของผลิตภัณฑ์
เจ้าของผลิตภัณฑ์คือผู้ที่ขับเคลื่อนผลิตภัณฑ์จากมุมมองทางธุรกิจ ความรับผิดชอบหรือเจ้าของผลิตภัณฑ์มีดังนี้ -
- เพื่อกำหนดข้อกำหนดและจัดลำดับความสำคัญของคุณค่า
- เพื่อกำหนดวันที่วางจำหน่ายและเนื้อหา
- เพื่อมีบทบาทอย่างแข็งขันในการวางแผนการทำซ้ำและการประชุมการวางแผนเผยแพร่
- เพื่อให้แน่ใจว่าทีมทำงานตามข้อกำหนดที่มีมูลค่าสูงสุด
- เพื่อเป็นตัวแทนของเสียงของลูกค้า
- เพื่อยอมรับเรื่องราวของผู้ใช้ที่ตรงตามความหมายของเกณฑ์การยอมรับที่ทำและที่กำหนดไว้
ทีมข้ามสายงาน
ทีมที่คล่องตัวทุกทีมควรเป็นทีมที่พึ่งพาตนเองได้โดยมีสมาชิกในทีม 5 ถึง 9 คนและมีประสบการณ์โดยเฉลี่ยตั้งแต่ 6 ถึง 10 ปี โดยปกติทีม Agile ประกอบด้วยนักพัฒนา 3 ถึง 4 คนผู้ทดสอบ 1 คนหัวหน้าฝ่ายเทคนิค 1 คนเจ้าของผลิตภัณฑ์ 1 คนและผู้เชี่ยวชาญด้านการต่อสู้ 1 คน
Product Owner และ Scrum master ถือเป็นส่วนหนึ่งของ Team Interface ในขณะที่สมาชิกคนอื่น ๆ เป็นส่วนหนึ่งของ Technical Interface
ทีม Agile วางแผนการทำงานอย่างไร?
ทีม Agile ทำงานในการทำซ้ำเพื่อส่งมอบเรื่องราวของผู้ใช้โดยการวนซ้ำแต่ละครั้งใช้เวลา 10 ถึง 15 วัน เรื่องราวของผู้ใช้แต่ละคนได้รับการวางแผนตามลำดับความสำคัญและขนาดของงานในมือ ทีมใช้ขีดความสามารถ - จำนวนชั่วโมงที่มีให้กับทีมในการทำงานเพื่อตัดสินใจว่าจะต้องวางแผนขอบเขตเท่าใด
จุด
คะแนนเป็นตัวกำหนดจำนวนทีมที่สามารถกระทำได้ จุดมักจะหมายถึง 8 ชั่วโมง แต่ละเรื่องจะประมาณเป็นจุด ๆ
ความจุ
ความจุกำหนดว่าแต่ละคนสามารถกระทำได้มากเพียงใด ความจุประมาณเป็นชั่วโมง
User Story คืออะไร?
เรื่องราวของผู้ใช้เป็นข้อกำหนดที่กำหนดสิ่งที่ผู้ใช้ต้องการเป็นฟังก์ชันการทำงาน เรื่องราวของผู้ใช้สามารถอยู่ในสองรูปแบบ -
- ในฐานะ <User Role> ฉันต้องการ <Functionality> เพื่อให้ <Business Value>
- ในการ <Business value> เป็น <User Role> ฉันต้องการ <Functionality>
ในระหว่างการวางแผนการวางจำหน่ายจะมีการประมาณค่าคร่าวๆให้กับเรื่องราวของผู้ใช้โดยใช้มาตราส่วนสัมพัทธ์เป็นจุด ในระหว่างการวางแผนการทำซ้ำเรื่องราวจะแบ่งออกเป็นงาน
ความสัมพันธ์ของเรื่องราวของผู้ใช้และงาน
- เรื่องราวของผู้ใช้พูดถึงสิ่งที่ต้องทำ เป็นการกำหนดสิ่งที่ผู้ใช้ต้องการ
- Task พูดถึงวิธีการทำ กำหนดวิธีการนำฟังก์ชันไปใช้งาน
- เรื่องราวดำเนินการโดยงาน แต่ละเรื่องเป็นการรวบรวมงาน
- เรื่องราวของผู้ใช้จะแบ่งออกเป็นงานเมื่อมีการวางแผนในการทำซ้ำปัจจุบัน
- งานจะประมาณเป็นชั่วโมงโดยทั่วไปคือ 2 ถึง 12 ชั่วโมง
- เรื่องราวได้รับการตรวจสอบโดยใช้การทดสอบการยอมรับ
เมื่อเรื่องราวเสร็จสิ้น
ทีมงานจะตัดสินใจอะไร doneหมายถึง. เกณฑ์อาจเป็น -
- งานทั้งหมด (การพัฒนาการทดสอบ) เสร็จสมบูรณ์
- การทดสอบการยอมรับทั้งหมดกำลังดำเนินอยู่และจะผ่านไป
- ไม่มีข้อบกพร่องเปิดอยู่
- เจ้าของสินค้ารับเรื่องแล้ว
- ส่งมอบให้กับผู้ใช้ปลายทาง
เกณฑ์การยอมรับคืออะไร?
เกณฑ์กำหนดฟังก์ชันการทำงานลักษณะการทำงานและประสิทธิภาพที่จำเป็นสำหรับคุณลักษณะเพื่อให้เจ้าของผลิตภัณฑ์ยอมรับได้ เป็นการกำหนดสิ่งที่ต้องทำเพื่อให้นักพัฒนารู้ว่าเรื่องราวของผู้ใช้เสร็จสมบูรณ์เมื่อใด
ข้อกำหนดกำหนดไว้อย่างไร?
ข้อกำหนดกำหนดเป็น
- เรื่องราวของผู้ใช้
- ด้วยเกณฑ์การยอมรับและ
- ภารกิจในการดำเนินเรื่องราว
ในเดือนกุมภาพันธ์ 2544 ที่รีสอร์ท Snowbird ในยูทาห์นักพัฒนาซอฟต์แวร์ 17 คนได้พบกันเพื่อหารือเกี่ยวกับวิธีการพัฒนาที่มีน้ำหนักเบา ผลการประชุมของพวกเขาคือ Agile Manifesto สำหรับการพัฒนาซอฟต์แวร์ดังต่อไปนี้ -
เรากำลังเปิดเผยวิธีที่ดีกว่าในการพัฒนาซอฟต์แวร์โดยการทำและช่วยเหลือผู้อื่น ผ่านงานนี้เราได้มาถึงคุณค่า -
- บุคคลและปฏิสัมพันธ์ในกระบวนการและเครื่องมือ
- ซอฟต์แวร์ที่ใช้งานได้ผ่านเอกสารที่ครอบคลุม
- การทำงานร่วมกันของลูกค้าในการเจรจาสัญญา
- การตอบสนองต่อการเปลี่ยนแปลงตามแผน
นั่นคือในขณะที่มีค่าในรายการทางด้านขวาเราให้ความสำคัญกับรายการทางด้านซ้ายมากขึ้น
หลักการแสดงความว่องไวสิบสองประการ
Customer Satisfaction - ให้ความสำคัญสูงสุดเพื่อตอบสนองความต้องการของลูกค้าผ่านการส่งมอบซอฟต์แวร์ที่มีคุณค่าในช่วงต้นและต่อเนื่อง
Welcome Change- การเปลี่ยนแปลงเป็นสิ่งที่หลีกเลี่ยงไม่ได้ในระหว่างการพัฒนาซอฟต์แวร์ ควรยินดีต้อนรับข้อกำหนดที่เปลี่ยนแปลงตลอดเวลาแม้จะล่าช้าในช่วงการพัฒนาก็ตาม กระบวนการที่คล่องตัวควรทำงานเพื่อเพิ่มความได้เปรียบในการแข่งขันของลูกค้า
Deliver a Working Software - ส่งมอบซอฟต์แวร์ที่ใช้งานได้บ่อยตั้งแต่สองสามสัปดาห์ถึงสองสามเดือนโดยพิจารณาจากระยะเวลาที่สั้นลง
Collaboration - นักธุรกิจและนักพัฒนาต้องทำงานร่วมกันตลอดชีวิตของโครงการ
Motivation- โครงการควรสร้างขึ้นจากบุคคลที่มีแรงจูงใจ จัดสภาพแวดล้อมเพื่อสนับสนุนสมาชิกในทีมแต่ละคนและไว้วางใจพวกเขาเพื่อให้พวกเขารู้สึกรับผิดชอบในการทำงานให้สำเร็จ
Face-to-face Conversation - การสนทนาแบบเห็นหน้าเป็นวิธีการที่มีประสิทธิภาพและประสิทธิผลสูงสุดในการถ่ายทอดข้อมูลไปยังและภายในทีมพัฒนา
Measure the Progress as per the Working Software - ซอฟต์แวร์ที่ใช้งานได้คือกุญแจสำคัญและควรเป็นตัวชี้วัดความก้าวหน้าขั้นต้น
Maintain Constant Pace- กระบวนการ Agile มุ่งสู่การพัฒนาที่ยั่งยืน ธุรกิจนักพัฒนาและผู้ใช้ควรสามารถรักษาความก้าวหน้าของโครงการได้อย่างต่อเนื่อง
Monitoring - ใส่ใจกับความเป็นเลิศทางเทคนิคและการออกแบบที่ดีเป็นประจำเพื่อเพิ่มความคล่องตัว
Simplicity - ทำให้สิ่งต่างๆเรียบง่ายและใช้คำศัพท์ง่ายๆในการวัดผลงานที่ยังไม่เสร็จสมบูรณ์
Self-organized Teams - ทีมที่มีความคล่องตัวควรจัดระบบด้วยตนเองและไม่ควรพึ่งพาทีมอื่นมากนักเนื่องจากสถาปัตยกรรมข้อกำหนดและการออกแบบที่ดีที่สุดเกิดจากทีมที่จัดขึ้นเอง
Review the Work Regularly - ทบทวนงานที่ทำในช่วงเวลาปกติเพื่อให้ทีมสามารถไตร่ตรองว่าจะมีประสิทธิภาพมากขึ้นและปรับพฤติกรรมให้เหมาะสมได้อย่างไร
วนซ้ำ / เพิ่มขึ้นและพร้อมที่จะพัฒนา
วิธีการพัฒนาแบบ Agile ส่วนใหญ่แบ่งปัญหาออกเป็นงานเล็ก ๆ ไม่มีการวางแผนระยะยาวโดยตรงสำหรับข้อกำหนดใด ๆ โดยปกติจะมีการวางแผนการทำซ้ำซึ่งมีระยะเวลาสั้นแตกต่างกันไปเช่น 1 ถึง 4 สัปดาห์ ทีมงานข้ามสายงานถูกสร้างขึ้นสำหรับการทำซ้ำแต่ละครั้งที่ทำงานในทุกฟังก์ชันของการพัฒนาซอฟต์แวร์เช่นการวางแผนการวิเคราะห์ความต้องการการออกแบบการเข้ารหัสการทดสอบหน่วยและการทดสอบการยอมรับ ผลลัพธ์ที่ได้ในตอนท้ายของการทำซ้ำเป็นผลิตภัณฑ์ที่ใช้งานได้และแสดงให้ผู้มีส่วนได้ส่วนเสียทราบเมื่อสิ้นสุดการทำซ้ำ
หลังจากสาธิตแล้วจะมีการตรวจสอบความคิดเห็นและมีการวางแผนที่จะรวมไว้ในซอฟต์แวร์ที่ใช้งานได้ตามความจำเป็น
การสื่อสารแบบตัวต่อตัว
ทีม Agile แต่ละทีมควรมีตัวแทนลูกค้าเช่นเจ้าของผลิตภัณฑ์ในวิธีการต่อสู้ ตัวแทนนี้ได้รับอนุญาตให้ดำเนินการในนามของผู้มีส่วนได้ส่วนเสียและเขาสามารถตอบคำถามของนักพัฒนาในระหว่างการทำซ้ำได้
หม้อน้ำข้อมูล (จอแสดงผลทางกายภาพ) โดยปกติจะตั้งอยู่อย่างเด่นชัดในสำนักงานซึ่งผู้สัญจรไปมาสามารถเห็นความคืบหน้าของทีมงานที่คล่องตัว หม้อน้ำข้อมูลนี้แสดงสรุปสถานะของโครงการที่เป็นปัจจุบัน
ลูปข้อเสนอแนะ
การยืนประจำวันเป็นวัฒนธรรมร่วมของการพัฒนาที่คล่องตัว เป็นที่รู้จักกันในชื่อdaily scrum. เป็นช่วงสั้น ๆ ที่สมาชิกในทีมแต่ละคนรายงานซึ่งกันและกันเกี่ยวกับสถานะของสิ่งที่พวกเขาทำสิ่งที่ต้องทำต่อไปและปัญหาที่พวกเขากำลังเผชิญอยู่
การยืนประจำวันตามชื่อที่แนะนำคือการประชุมสถานะประจำวันของสมาชิกทั้งหมดในทีมที่คล่องตัว ไม่เพียง แต่จัดให้มีฟอรัมสำหรับการอัปเดตเป็นประจำ แต่ยังนำปัญหาของสมาชิกในทีมมาเป็นประเด็นสำคัญเพื่อให้สามารถแก้ไขได้อย่างรวดเร็ว การยืนประจำวันเป็นสิ่งที่ต้องทำไม่ว่าจะจัดตั้งทีมแบบ Agile โดยไม่คำนึงถึงที่ตั้งสำนักงาน
Daily Stand-up คืออะไร?
การยืนประจำวันคือการประชุมสถานะประจำวันของสมาชิกในทีมทั้งหมดและจะจัดขึ้นประมาณ 15 นาที
สมาชิกทุกคนต้องตอบคำถามสำคัญสามข้อ -
- เมื่อวานฉันทำอะไร?
- วันนี้ฉันจะทำอะไร
- อุปสรรคใด ๆ ที่ฉันกำลังเผชิญ ... / ฉันถูกปิดกั้นเนื่องจาก ...
การยืนประจำวันมีไว้สำหรับการอัปเดตสถานะไม่ใช่เพื่อการสนทนาใด ๆ สำหรับการสนทนาสมาชิกในทีมควรกำหนดเวลาการประชุมอื่นในเวลาอื่น
โดยปกติผู้เข้าร่วมจะยืนแทนที่จะนั่งเพื่อให้การประชุมจบลงอย่างรวดเร็ว
เหตุใดการยืนขึ้นจึงมีความสำคัญ?
ประโยชน์ของการยืนขึ้นทุกวันอย่างคล่องตัวมีดังนี้ -
- ทีมสามารถประเมินความคืบหน้าในแต่ละวันและดูว่าพวกเขาสามารถส่งมอบตามแผนการทำซ้ำได้หรือไม่
- สมาชิกในทีมแต่ละคนแจ้งข้อมูลเกี่ยวกับภาระผูกพันของตนในแต่ละวัน
- ช่วยให้ทีมสามารถมองเห็นได้ถึงความล่าช้าหรืออุปสรรคใด ๆ
ใครเข้าร่วม Stand-up?
ผู้เชี่ยวชาญด้านการต่อสู้เจ้าของผลิตภัณฑ์และทีมจัดส่งควรเข้าร่วมการยืนหยัดเป็นประจำทุกวัน
ผู้มีส่วนได้ส่วนเสียและลูกค้าได้รับการสนับสนุนให้เข้าร่วมการประชุมและพวกเขาสามารถทำหน้าที่เป็นผู้สังเกตการณ์ได้ แต่พวกเขาไม่ควรมีส่วนร่วมในการยืนหยัด
เป็นความรับผิดชอบของผู้เชี่ยวชาญในการต่อสู้ที่จะต้องจดบันทึกคำถามของสมาชิกในทีมแต่ละคนและปัญหาที่พวกเขากำลังเผชิญอยู่
ทีมที่กระจัดกระจายทางภูมิศาสตร์
การสแตนด์อัพสามารถทำได้หลายวิธีในกรณีที่สมาชิกในทีมเปรียวทำงานจากเขตเวลาที่แตกต่างกัน -
เลือกสมาชิกแบบหมุนเวียนซึ่งสามารถเข้าร่วมการประชุมสแตนด์อัพของทีมที่อยู่ในเขตเวลาที่ต่างกัน
มีสแตนด์อัพแยกกันต่อทีมอัปเดตสถานะของการสแตนด์อัพในเครื่องมือเช่น Rally, SharePoint, Wikis เป็นต้น
เตรียมเครื่องมือสื่อสารที่หลากหลายไว้ให้พร้อมเช่นการประชุมทางโทรศัพท์การประชุมทางวิดีโอผู้ส่งข้อความด่วนหรือเครื่องมือแบ่งปันความรู้ของบุคคลที่สามอื่น ๆ
ความหมายของ done สำหรับเรื่องราวของผู้ใช้การทำซ้ำและการเผยแพร่มีให้ด้านล่าง
เรื่องราวของผู้ใช้
เรื่องราวของผู้ใช้เป็นข้อกำหนดที่กำหนดขึ้นในไม่กี่ประโยคในภาษาประจำวันของผู้ใช้และควรดำเนินการให้เสร็จสิ้นภายในการวนซ้ำ เรื่องราวของผู้ใช้จะเสร็จสิ้นเมื่อ
- เช็คอินรหัสที่เกี่ยวข้องทั้งหมดแล้ว
- ทุกกรณีทดสอบหน่วยได้ผ่านไปแล้ว
- ผ่านกรณีทดสอบการยอมรับทั้งหมดแล้ว
- มีการเขียนข้อความช่วยเหลือ
- เจ้าของผลิตภัณฑ์ยอมรับเรื่องราวแล้ว
การทำซ้ำ
การทำซ้ำคือการรวบรวมเรื่องราว / ข้อบกพร่องของผู้ใช้แบบบรรจุกล่องเพื่อดำเนินการและยอมรับภายในการเปิดตัวผลิตภัณฑ์ มีการกำหนดการทำซ้ำในระหว่างการประชุมการวางแผนการทำซ้ำและเสร็จสิ้นด้วยการสาธิตการทำซ้ำและการประชุมทบทวน การวนซ้ำเรียกอีกอย่างว่าไฟล์sprint. การทำซ้ำจะเสร็จสิ้นเมื่อ
- การสำรองข้อมูลผลิตภัณฑ์เสร็จสมบูรณ์
- ได้รับการทดสอบประสิทธิภาพแล้ว
- เรื่องราวของผู้ใช้ได้รับการยอมรับหรือย้ายไปยังการทำซ้ำครั้งถัดไป
- ข้อบกพร่องได้รับการแก้ไขหรือเลื่อนไปเป็นการทำซ้ำครั้งถัดไป
ปล่อย
การเปิดตัวถือเป็นก้าวสำคัญที่แสดงถึงการส่งมอบผลิตภัณฑ์ / ระบบที่ใช้งานได้ทั้งภายในและภายนอก การเปิดตัวจะเสร็จสิ้นเมื่อ
- ระบบได้รับการทดสอบความเครียด
- ปรับประสิทธิภาพแล้ว
- ดำเนินการตรวจสอบความปลอดภัย
- มีการทดสอบแผนการกู้คืนจากภัยพิบัติ
วัตถุประสงค์ของการวางแผนการวางจำหน่ายคือการสร้างแผนเพื่อส่งมอบส่วนเพิ่มให้กับผลิตภัณฑ์ จะทำทุก ๆ 2 ถึง 3 เดือน
ใครเกี่ยวข้อง?
Scrum Master - ผู้เชี่ยวชาญด้านการต่อสู้ทำหน้าที่เป็นผู้อำนวยความสะดวกสำหรับทีมจัดส่งที่คล่องตัว
Product Owner - เจ้าของผลิตภัณฑ์แสดงถึงมุมมองทั่วไปของสินค้าค้างส่ง
Agile Team - ทีมจัดส่งแบบ Agile ให้ข้อมูลเชิงลึกเกี่ยวกับความเป็นไปได้ทางเทคนิคหรือการอ้างอิงใด ๆ
Stakeholders - ผู้มีส่วนได้ส่วนเสียเช่นลูกค้าผู้จัดการโปรแกรมผู้เชี่ยวชาญเฉพาะเรื่องทำหน้าที่เป็นที่ปรึกษาในการตัดสินใจเกี่ยวกับการวางแผนการเปิดตัว
ข้อกำหนดเบื้องต้นของการวางแผน
ข้อกำหนดเบื้องต้นของการวางแผนการวางจำหน่ายมีดังนี้ -
สินค้าค้างส่งที่ได้รับการจัดอันดับซึ่งจัดการโดยเจ้าของผลิตภัณฑ์ โดยทั่วไปจะมีการใช้คุณลักษณะห้าถึงสิบรายการซึ่งเจ้าของผลิตภัณฑ์รู้สึกว่าสามารถรวมไว้ในรุ่นได้
ข้อมูลของทีมเกี่ยวกับความสามารถความเร็วที่ทราบหรือเกี่ยวกับความท้าทายทางเทคนิคใด ๆ
วิสัยทัศน์ระดับสูง
วัตถุประสงค์ทางการตลาดและธุรกิจ
รับทราบว่าจำเป็นต้องมีรายการค้างของผลิตภัณฑ์ใหม่หรือไม่
วัสดุที่จำเป็น
รายการวัสดุที่จำเป็นสำหรับการวางแผนการปล่อยมีดังนี้ -
- โพสต์วาระการประชุมวัตถุประสงค์
- ฟลิปชาร์ตกระดานไวท์บอร์ดเครื่องหมาย
- โปรเจคเตอร์วิธีแชร์คอมพิวเตอร์ที่มีข้อมูล / เครื่องมือที่จำเป็นในระหว่างการประชุมวางแผน
- ข้อมูลการวางแผน
ข้อมูลการวางแผน
รายการข้อมูลที่ต้องใช้ในการวางแผนการเผยแพร่มีดังนี้ -
- การทำซ้ำก่อนหน้าหรือผลการวางแผนการเผยแพร่
- ข้อเสนอแนะจากผู้มีส่วนได้ส่วนเสียต่างๆเกี่ยวกับผลิตภัณฑ์สภาวะตลาดและกำหนดเวลา
- แผนปฏิบัติการของรุ่นก่อนหน้า / การทำซ้ำ
- คุณสมบัติหรือข้อบกพร่องที่ต้องพิจารณา
- ความเร็วจากรุ่นก่อนหน้า / ประมาณการ
- ปฏิทินขององค์กรและส่วนบุคคล
- ข้อมูลจากทีมอื่น ๆ และผู้เชี่ยวชาญเรื่องเพื่อจัดการการอ้างอิงใด ๆ
เอาต์พุต
ผลลัพธ์ของการวางแผนการวางจำหน่ายมีดังต่อไปนี้ -
- แผนการวางจำหน่าย
- Commitment
- ประเด็นปัญหาข้อกังวลการอ้างอิงและสมมติฐานที่ต้องติดตาม
- ข้อเสนอแนะเพื่อปรับปรุงแผนการวางจำหน่ายในอนาคต
ระเบียบวาระ
กำหนดการของการวางแผนการวางจำหน่ายสามารถ -
Opening ceremony - ข้อความต้อนรับทบทวนวัตถุประสงค์และวาระการประชุมเครื่องมือจัดระเบียบและแนะนำผู้สนับสนุนทางธุรกิจ
Product Vision, Roadmap - แสดงภาพขนาดใหญ่ของผลิตภัณฑ์
Review previous releases - การอภิปรายเกี่ยวกับรายการใด ๆ ที่อาจส่งผลกระทบต่อแผน
Release name / theme - ตรวจสอบสถานะปัจจุบันของธีมแผนงานและทำการปรับเปลี่ยนที่จำเป็นหากมี
Velocity - นำเสนอความเร็วสำหรับรุ่นปัจจุบันและรุ่นก่อนหน้า
Release schedule - ตรวจสอบเหตุการณ์สำคัญและการตัดสินใจเกี่ยวกับกล่องเวลาสำหรับการเปิดตัวและการทำซ้ำภายในรุ่น
Issues and concerns - ตรวจสอบข้อกังวลหรือปัญหาใด ๆ และบันทึกไว้
Review and Update the Definition of Done - ทบทวนคำจำกัดความของ done และทำการเปลี่ยนแปลงที่เหมาะสมตามเทคโนโลยีทักษะหรือการเปลี่ยนแปลงของสมาชิกในทีมตั้งแต่การทำซ้ำ / การเปิดตัวครั้งล่าสุด
Stories and items to be considered - นำเสนอเรื่องราวของผู้ใช้และคุณลักษณะจากสินค้าค้างส่งเพื่อนำมาพิจารณากำหนดเวลาในรุ่นปัจจุบัน
Determine sizing values - หากไม่ทราบความเร็วให้วางแผนค่าขนาดที่จะใช้ในการวางแผนการปล่อย
Coarse the size of stories- ทีมจัดส่งจะกำหนดขนาดที่เหมาะสมของเรื่องราวภายใต้การพิจารณาและแยกเรื่องราวออกเป็นหลาย ๆ ครั้งหากเรื่องราวมีขนาดใหญ่เกินไป เจ้าของผลิตภัณฑ์และผู้เชี่ยวชาญของหัวข้อจะชี้แจงข้อสงสัยอธิบายเกณฑ์การยอมรับอย่างละเอียดและแยกเรื่องราวที่เหมาะสม ผู้เชี่ยวชาญด้านการต่อสู้ช่วยอำนวยความสะดวกในการทำงานร่วมกัน
Map stories to iterations- ทีมจัดส่งและเจ้าของผลิตภัณฑ์ย้ายเรื่องราว / ข้อบกพร่องในการทำซ้ำตามขนาดและความเร็ว ผู้เชี่ยวชาญด้านการต่อสู้ช่วยอำนวยความสะดวกในการทำงานร่วมกัน
New concerns or issues - ตรวจสอบปัญหาใหม่ ๆ จากประสบการณ์เดิมและบันทึกเรื่องเดียวกัน
Dependencies and assumptions - ตรวจสอบการอ้างอิง / สมมติฐานที่วางแผนไว้ในระหว่างการวางแผนการเปิดตัว
Commit- ผู้เชี่ยวชาญด้านการต่อสู้เรียกร้องให้มีการวางแผน ทีมจัดส่งและเจ้าของผลิตภัณฑ์ส่งสัญญาณว่าเป็นแผนการที่ดีที่สุดจากนั้นมุ่งมั่นที่จะก้าวไปสู่การวางแผนระดับถัดไปนั่นคือการวางแผนการทำซ้ำ
Communication and logistics planning - ทบทวน / อัปเดตการวางแผนการสื่อสารและโลจิสติกส์สำหรับการเปิดตัว
Parking lot - ที่จอดรถกระบวนการหมายถึงรายการทั้งหมดควรได้รับการแก้ไขหรือตั้งเป็นรายการดำเนินการ
Distribute Action items and action plans - แจกจ่ายรายการการดำเนินการระหว่างเจ้าของดำเนินการตามแผนปฏิบัติการ
Retrospect - ขอความคิดเห็นจากผู้เข้าร่วมเพื่อให้การประชุมประสบความสำเร็จ
Close - ฉลองความสำเร็จ
จุดประสงค์ของการวางแผนการทำซ้ำคือเพื่อให้ทีมทำชุดรายการสินค้าค้างส่งที่ติดอันดับสูงสุด ความมุ่งมั่นนี้กำหนดเวลาตามความยาวของการวนซ้ำและความเร็วของทีม
ใครเกี่ยวข้อง?
Scrum Master - ผู้เชี่ยวชาญด้านการต่อสู้ทำหน้าที่เป็นผู้อำนวยความสะดวกสำหรับทีมจัดส่งที่คล่องตัว
Product Owner - เจ้าของผลิตภัณฑ์เกี่ยวข้องกับการดูรายละเอียดของสินค้าค้างส่งและเกณฑ์การยอมรับของพวกเขา
Agile Team - การจัดส่งแบบ Agile กำหนดงานของพวกเขาและกำหนดค่าประมาณความพยายามที่จำเป็นเพื่อให้บรรลุข้อผูกพัน
ข้อกำหนดเบื้องต้นของการวางแผน
- รายการในสินค้าค้างส่งมีขนาดและมีการกำหนดจุดเรื่องราวที่สัมพันธ์กัน
- เจ้าของผลิตภัณฑ์ได้รับการจัดอันดับรายการพอร์ตโฟลิโอ
- เกณฑ์การยอมรับได้ระบุไว้อย่างชัดเจนสำหรับผลงานแต่ละรายการ
กระบวนการวางแผน
ต่อไปนี้เป็นขั้นตอนที่เกี่ยวข้องในการวางแผนการวนซ้ำ -
- พิจารณาว่ามีเรื่องราวที่สามารถทำซ้ำได้กี่เรื่อง
- แบ่งเรื่องราวเหล่านี้ออกเป็นงานและมอบหมายงานให้กับเจ้าของ
- แต่ละงานจะได้รับการประเมินเป็นชั่วโมง
- ค่าประมาณเหล่านี้ช่วยให้สมาชิกในทีมตรวจสอบจำนวนชั่วโมงงานที่สมาชิกแต่ละคนมีสำหรับการทำซ้ำ
- สมาชิกในทีมได้รับมอบหมายงานโดยพิจารณาจากความเร็วหรือความสามารถเพื่อไม่ให้ทำงานหนักเกินไป
การคำนวณความเร็ว
ทีมที่คล่องตัวจะคำนวณความเร็วตามการทำซ้ำที่ผ่านมา Velocity คือจำนวนหน่วยโดยเฉลี่ยที่ต้องใช้เพื่อจบเรื่องราวของผู้ใช้ในการวนซ้ำ ตัวอย่างเช่นหากทีมได้คะแนนเรื่องราว 12, 14, 10 คะแนนในการวนซ้ำแต่ละครั้งสำหรับการวนซ้ำสามครั้งล่าสุดทีมอาจใช้ความเร็ว 12 เท่าสำหรับการวนซ้ำครั้งถัดไป
ความเร็วตามแผนจะบอกให้ทีมทราบว่าเรื่องราวของผู้ใช้สามารถดำเนินการได้อย่างไรในการทำซ้ำปัจจุบัน หากทีมทำงานที่ได้รับมอบหมายเสร็จอย่างรวดเร็วก็จะสามารถดึงเรื่องราวของผู้ใช้เข้ามาได้มากขึ้นมิฉะนั้นเรื่องราวจะถูกย้ายออกไปเช่นกันในการทำซ้ำครั้งถัดไป
ความจุงาน
ความสามารถของทีมมาจากข้อเท็จจริงสามประการต่อไปนี้ -
- จำนวนชั่วโมงการทำงานที่เหมาะสมในหนึ่งวัน
- วันว่างของบุคคลในการทำซ้ำ
- เปอร์เซ็นต์ของเวลาที่สมาชิกมีให้เฉพาะสำหรับทีม
สมมติว่าทีมมีสมาชิก 5 คนมุ่งมั่นที่จะทำงานเต็มเวลา (8 ชั่วโมงต่อวัน) ในโปรเจ็กต์และไม่มีใครลางานในระหว่างการทำซ้ำความสามารถของงานสำหรับการทำซ้ำสองสัปดาห์จะเป็น -
5 × 8 × 10 = 400 ชั่วโมง
ขั้นตอนการวางแผน
- Product Owner อธิบายรายการสินค้าค้างส่งที่มีอันดับสูงสุด
- ทีมอธิบายงานที่จำเป็นในการทำรายการ
- สมาชิกในทีมเป็นเจ้าของงาน
- สมาชิกในทีมประมาณเวลาในการทำงานแต่ละอย่างให้เสร็จ
- ขั้นตอนเหล่านี้จะทำซ้ำสำหรับรายการทั้งหมดในการวนซ้ำ
- หากบุคคลใดมีภาระงานมากเกินไปงานของเขา / เธอจะถูกแจกจ่ายให้กับสมาชิกในทีมคนอื่น ๆ
สินค้าค้างส่งคือรายการสินค้าที่ต้องทำ รายการถูกจัดอันดับพร้อมคำอธิบายคุณสมบัติ ในสถานการณ์ที่ดีควรแยกรายการออกเป็นเรื่องราวของผู้ใช้
ทำไม Backlog ของผลิตภัณฑ์จึงมีความสำคัญ?
- จัดทำขึ้นเพื่อให้สามารถกำหนดค่าประมาณสำหรับแต่ละคุณลักษณะได้
- ช่วยในการวางแผนแผนงานสำหรับผลิตภัณฑ์
- ช่วยในการจัดอันดับคุณสมบัติใหม่เพื่อเพิ่มมูลค่าให้กับผลิตภัณฑ์ได้มากขึ้น
- ช่วยในการกำหนดสิ่งที่ต้องจัดลำดับความสำคัญก่อน ทีมจัดอันดับไอเท็มแล้วสร้างมูลค่า
ลักษณะของสินค้าค้างส่ง
ผลิตภัณฑ์แต่ละชิ้นควรมีสินค้าค้างส่ง 1 รายการซึ่งอาจมีชุดคุณสมบัติขนาดใหญ่ถึงใหญ่มาก
หลายทีมสามารถทำงานกับสินค้าค้างส่งเดียวได้
การจัดอันดับคุณสมบัติจะขึ้นอยู่กับมูลค่าทางธุรกิจมูลค่าทางเทคนิคการจัดการความเสี่ยงหรือความเหมาะสมเชิงกลยุทธ์
รายการที่มีอันดับสูงสุดจะถูกย่อยสลายเป็นเรื่องราวขนาดเล็กในระหว่างการวางแผนการวางจำหน่ายเพื่อให้สามารถทำซ้ำได้ในอนาคต
เกณฑ์การยอมรับ
เป็นเงื่อนไขที่กำหนดโดยเจ้าของผลิตภัณฑ์หรือลูกค้าเพื่อที่จะยอมรับคุณลักษณะที่ถูกต้องและเป็นไปตามข้อกำหนดของพวกเขา
Backlog Grooming
เป็นกระบวนการต่อเนื่องที่ผู้จัดการผลิตภัณฑ์หรือลูกค้าจะจัดการสินค้าค้างส่งโดยการรับคำติชมจากทีมงานที่คล่องตัว กระบวนการนี้เกี่ยวข้องกับการจัดลำดับความสำคัญของรายการในพอร์ตโฟลิโอการแบ่งเป็นรายการย่อย ๆ การวางแผนสำหรับการทำซ้ำในอนาคตการสร้างเรื่องราวใหม่การอัปเดตเกณฑ์การยอมรับหรือการอธิบายรายละเอียดเกณฑ์การยอมรับอย่างละเอียด
ความจุ
เป็นจำนวนงานที่ทีมสามารถทำได้ในการทำซ้ำครั้งเดียว
ลักษณะเฉพาะ
การปรับปรุงผลิตภัณฑ์หรือขีดความสามารถที่มีคุณค่าต่อผู้มีส่วนได้ส่วนเสียซึ่งสามารถพัฒนาได้ในรุ่น
การทำซ้ำ
ไอเท็มงานตามธีมที่สามารถทำเสร็จภายในไทม์บ็อกซ์และได้รับการยอมรับภายในการเปิดตัวผลิตภัณฑ์ มีการกำหนดงานการทำซ้ำในระหว่างการวางแผนการทำซ้ำและจะเสร็จสิ้นด้วยการสาธิตและการประชุมทบทวน เรียกอีกอย่างว่า Sprint
เพิ่มขึ้น
การเพิ่มขึ้นคือสถานะการเปลี่ยนแปลงของผลิตภัณฑ์เนื่องจากผ่านการพัฒนาทีละน้อย โดยปกติจะแสดงด้วยเหตุการณ์สำคัญหรือจำนวนการวนซ้ำที่ตายตัว
เจ้าของผลิตภัณฑ์
เจ้าของผลิตภัณฑ์เป็นสมาชิกของทีมจัดส่งแบบ Agile ซึ่งรับผิดชอบในการรวบรวมและจัดลำดับความต้องการทางธุรกิจในสินค้าค้างส่ง เจ้าของผลิตภัณฑ์สื่อสารสิ่งที่ต้องทำในการเปิดตัว / การทำซ้ำ เขา / เธอกำหนดคำมั่นสัญญาและรับผิดชอบในการปกป้องทีมจากการเปลี่ยนแปลงข้อกำหนดใด ๆ ในระหว่างการทำซ้ำ
สินค้าค้างส่ง
ชุดข้อกำหนดของผลิตภัณฑ์ที่ใช้งานได้และไม่ใช้งานได้
รายการสินค้าค้างส่ง
อาจเป็นเรื่องราวของผู้ใช้ข้อบกพร่องคุณลักษณะที่ต้องพัฒนาโดยทีมงาน Agile
คะแนน
หน่วยทั่วไปที่ใช้เพื่อกำหนดขนาดที่สัมพันธ์กันของเรื่องราวของผู้ใช้คุณลักษณะหรือรายการพอร์ตโฟลิโออื่น ๆ
ปล่อย
กล่องเวลาที่ทำงานเพื่อรองรับการส่งมอบส่วนเพิ่มที่ทดสอบได้ไปยังซอฟต์แวร์ ในการต่อสู้รุ่นหนึ่งประกอบด้วยการทำซ้ำหลายครั้ง
ความต้องการ
ข้อกำหนดของผลิตภัณฑ์ซอฟต์แวร์เพื่อให้เป็นไปตามสัญญาหรือฟังก์ชันการทำงานที่ระบุไว้ เรื่องราวของผู้ใช้และรายการผลงานเป็นประเภทของข้อกำหนด
ประเด็นเรื่อง
หน่วยที่ทีม Agile ใช้ในการประมาณขนาดที่สัมพันธ์กันของเรื่องราวและคุณสมบัติของผู้ใช้
วิ่ง
เหมือนกับการวนซ้ำ
Timebox
ระยะเวลาคงที่ในการพัฒนาสิ่งที่ส่งมอบได้ โดยปกติพร้อมกับการแก้ไขวันที่เริ่มต้นและวันที่สิ้นสุดของกล่องเวลาจำนวนทรัพยากรจะได้รับการแก้ไขด้วย
งาน
เป็นหน่วยงานที่มีส่วนช่วยในการทำให้เรื่องราวของผู้ใช้เสร็จสมบูรณ์ภายในการวนซ้ำ เรื่องราวของผู้ใช้จะถูกย่อยสลายออกเป็นหลายงานและแต่ละงานสามารถแบ่งระหว่างสมาชิกในทีมที่ทำเครื่องหมายว่าเป็นเจ้าของงาน สมาชิกในทีมสามารถรับผิดชอบงานแต่ละอย่างอัปเดตประมาณการบันทึกงานที่ทำหรือสิ่งที่ต้องทำตามต้องการ
เรื่องราวของผู้ใช้
เกณฑ์การยอมรับที่ระบุไว้เพื่อตอบสนองความต้องการบางประการของผู้ใช้ โดยปกติจะเขียนจากมุมมองของผู้ใช้ปลายทาง
ความเร็ว
การวัดน้ำหนักงานที่ยอมรับในการทำซ้ำหรือไทม์บ็อกซ์ โดยปกติจะเป็นผลรวมของคะแนนเรื่องราวที่ยอมรับในการทำซ้ำ