Agile Data Science - แนวคิดระเบียบวิธี

ในบทนี้เราจะมุ่งเน้นไปที่แนวคิดของวงจรชีวิตของการพัฒนาซอฟต์แวร์ที่เรียกว่า“ agile” วิธีการพัฒนาซอฟต์แวร์ Agile ช่วยในการสร้างซอฟต์แวร์ผ่านการเพิ่มเซสชันในการทำซ้ำสั้น ๆ 1 ถึง 4 สัปดาห์เพื่อให้การพัฒนาสอดคล้องกับความต้องการทางธุรกิจที่เปลี่ยนแปลงไป

มีหลักการ 12 ประการที่อธิบายถึงวิธีการแบบ Agile โดยละเอียด -

ความพึงพอใจของลูกค้า

ลำดับความสำคัญสูงสุดจะมอบให้กับลูกค้าโดยมุ่งเน้นไปที่ข้อกำหนดผ่านการส่งมอบซอฟต์แวร์ที่มีคุณค่าอย่างต่อเนื่องและรวดเร็ว

ต้อนรับการเปลี่ยนแปลงใหม่

การเปลี่ยนแปลงเป็นสิ่งที่ยอมรับได้ในระหว่างการพัฒนาซอฟต์แวร์ กระบวนการ Agile ได้รับการออกแบบมาเพื่อทำงานเพื่อให้ตรงกับความได้เปรียบในการแข่งขันของลูกค้า

จัดส่ง

การส่งมอบซอฟต์แวร์ที่ใช้งานได้จะมอบให้กับลูกค้าภายในช่วงหนึ่งถึงสี่สัปดาห์

การทำงานร่วมกัน

นักวิเคราะห์ธุรกิจนักวิเคราะห์คุณภาพและนักพัฒนาต้องทำงานร่วมกันตลอดวงจรชีวิตของโครงการ

แรงจูงใจ

โครงการควรได้รับการออกแบบโดยกลุ่มบุคคลที่มีแรงจูงใจ จัดเตรียมสภาพแวดล้อมเพื่อสนับสนุนสมาชิกในทีมแต่ละคน

การสนทนาส่วนตัว

การสนทนาแบบเห็นหน้าเป็นวิธีการส่งข้อมูลไปยังและภายในทีมพัฒนาที่มีประสิทธิภาพและประสิทธิผลสูงสุด

การวัดความคืบหน้า

การวัดความคืบหน้าเป็นกุญแจสำคัญที่ช่วยในการกำหนดความคืบหน้าของโครงการและการพัฒนาซอฟต์แวร์

การรักษาก้าวอย่างต่อเนื่อง

กระบวนการที่คล่องตัวมุ่งเน้นไปที่การพัฒนาที่ยั่งยืน ธุรกิจนักพัฒนาและผู้ใช้งานควรสามารถรักษาความก้าวหน้าของโครงการได้อย่างต่อเนื่อง

การตรวจสอบ

จำเป็นต้องรักษาความเอาใจใส่อย่างสม่ำเสมอต่อความเป็นเลิศทางเทคนิคและการออกแบบที่ดีเพื่อเพิ่มฟังก์ชันการทำงานที่คล่องตัว

ความเรียบง่าย

กระบวนการ Agile ทำให้ทุกอย่างเรียบง่ายและใช้คำศัพท์ง่ายๆในการวัดผลงานที่ยังไม่เสร็จสมบูรณ์

เงื่อนไขที่จัดขึ้นเอง

ทีมที่มีความคล่องตัวควรมีการจัดระเบียบตนเองและควรเป็นอิสระด้วยสถาปัตยกรรมที่ดีที่สุด ข้อกำหนดและการออกแบบเกิดจากทีมที่จัดขึ้นเอง

ตรวจทานงาน

สิ่งสำคัญคือต้องทบทวนงานในช่วงเวลาปกติเพื่อให้ทีมสามารถไตร่ตรองว่างานกำลังดำเนินไปอย่างไร การตรวจสอบโมดูลตามเวลาที่เหมาะสมจะช่วยเพิ่มประสิทธิภาพ

ยืนขึ้นทุกวัน

การยืนประจำวันหมายถึงการประชุมสถานะประจำวันระหว่างสมาชิกในทีม มีการอัปเดตที่เกี่ยวข้องกับการพัฒนาซอฟต์แวร์ นอกจากนี้ยังหมายถึงการแก้ไขปัญหาอุปสรรคของการพัฒนาโครงการ

การยืนประจำวันเป็นแนวทางปฏิบัติที่จำเป็นไม่ว่าจะจัดตั้งทีม Agile โดยไม่คำนึงถึงที่ตั้งสำนักงาน

รายการคุณสมบัติของการยืนประจำวันมีดังนี้ -

  • ระยะเวลาของการนัดพบประจำวันควรอยู่ที่ประมาณ 15 นาที ไม่ควรขยายเป็นระยะเวลานานกว่านี้

  • การยืนขึ้นควรรวมถึงการอภิปรายเกี่ยวกับการอัปเดตสถานะ

  • ผู้เข้าร่วมการประชุมนี้มักจะยืนด้วยความตั้งใจที่จะจบการประชุมโดยเร็ว

เรื่องราวของผู้ใช้

โดยปกติเรื่องราวเป็นข้อกำหนดซึ่งกำหนดเป็นประโยคไม่กี่ประโยคในภาษาง่ายๆและควรเสร็จสิ้นภายในการวนซ้ำ เรื่องราวของผู้ใช้ควรมีลักษณะดังต่อไปนี้ -

  • รหัสที่เกี่ยวข้องทั้งหมดควรมีการเช็คอินที่เกี่ยวข้อง

  • กรณีทดสอบหน่วยสำหรับการทำซ้ำที่ระบุ

  • ควรกำหนดกรณีการทดสอบการยอมรับทั้งหมด

  • การยอมรับจากเจ้าของผลิตภัณฑ์ในขณะที่กำหนดเรื่องราว

Scrum คืออะไร?

การต่อสู้ถือได้ว่าเป็นส่วนหนึ่งของวิธีการแบบเปรียว เป็นกระบวนการที่มีน้ำหนักเบาและมีคุณสมบัติดังต่อไปนี้ -

  • เป็นกรอบกระบวนการซึ่งรวมถึงชุดของการปฏิบัติที่ต้องปฏิบัติตามลำดับที่สอดคล้องกัน ภาพประกอบที่ดีที่สุดของ Scrum คือการทำซ้ำหรือการวิ่ง

  • เป็นกระบวนการที่“ น้ำหนักเบา” หมายความว่ากระบวนการจะถูกทำให้เล็กที่สุดเพื่อเพิ่มผลผลิตให้ได้สูงสุดในระยะเวลาที่กำหนด

กระบวนการต่อสู้เป็นที่รู้จักสำหรับกระบวนการที่แตกต่างเมื่อเปรียบเทียบกับวิธีการอื่น ๆ ของวิธีการแบบ Agile แบบดั้งเดิม แบ่งออกเป็นสามประเภทดังต่อไปนี้ -

  • Roles

  • Artifacts

  • กล่องเวลา

บทบาทกำหนดสมาชิกในทีมและบทบาทของพวกเขาที่รวมอยู่ในกระบวนการ ทีม Scrum ประกอบด้วยสามบทบาทดังต่อไปนี้ -

  • ต่อสู้มาสเตอร์

  • เจ้าของผลิตภัณฑ์

  • Team

สิ่งประดิษฐ์ Scrum ให้ข้อมูลสำคัญที่สมาชิกแต่ละคนควรทราบ ข้อมูลประกอบด้วยรายละเอียดของผลิตภัณฑ์กิจกรรมที่วางแผนไว้และกิจกรรมที่เสร็จสมบูรณ์ สิ่งประดิษฐ์ที่กำหนดไว้ใน Scrum framework มีดังต่อไปนี้ -

  • สินค้าค้างส่ง

  • Sprint ค้าง

  • เบิร์นลงแผนภูมิ

  • Increment

ไทม์บ็อกซ์คือเรื่องราวของผู้ใช้ที่วางแผนไว้สำหรับการวนซ้ำแต่ละครั้ง เรื่องราวของผู้ใช้เหล่านี้ช่วยในการอธิบายคุณลักษณะของผลิตภัณฑ์ซึ่งเป็นส่วนหนึ่งของสิ่งประดิษฐ์ Scrum สินค้าค้างส่งคือรายการเรื่องราวของผู้ใช้ เรื่องราวของผู้ใช้เหล่านี้ได้รับการจัดลำดับความสำคัญและส่งต่อไปยังการประชุมผู้ใช้เพื่อตัดสินใจว่าควรรับเรื่องใด

ทำไมต้อง Scrum Master

Scrum Master โต้ตอบกับสมาชิกทุกคนในทีม ตอนนี้ให้เราเห็นปฏิสัมพันธ์ของ Scrum Master กับทีมและทรัพยากรอื่น ๆ

เจ้าของผลิตภัณฑ์

Scrum Master โต้ตอบกับเจ้าของผลิตภัณฑ์ด้วยวิธีต่อไปนี้ -

  • ค้นหาเทคนิคเพื่อให้ได้เรื่องราวที่ค้างอยู่ของผลิตภัณฑ์ที่มีประสิทธิภาพและจัดการ

  • ช่วยให้ทีมเข้าใจความต้องการของสินค้าค้างส่งที่ชัดเจนและรัดกุม

  • การวางแผนผลิตภัณฑ์ที่มีสภาพแวดล้อมเฉพาะ

  • สร้างความมั่นใจว่าเจ้าของผลิตภัณฑ์รู้วิธีเพิ่มมูลค่าของผลิตภัณฑ์

  • การอำนวยความสะดวกในเหตุการณ์ Scrum ตามและเมื่อจำเป็น

ทีมต่อสู้

Scrum Master โต้ตอบกับทีมได้หลายวิธี -

  • การฝึกสอนองค์กรในการนำ Scrum มาใช้

  • การวางแผนการนำ Scrum ไปใช้กับองค์กรเฉพาะ

  • ช่วยให้พนักงานและผู้มีส่วนได้ส่วนเสียเข้าใจข้อกำหนดและขั้นตอนของการพัฒนาผลิตภัณฑ์

  • ทำงานร่วมกับ Scrum Masters ของทีมอื่น ๆ เพื่อเพิ่มประสิทธิภาพของการใช้ Scrum ของทีมที่ระบุ

องค์กร

Scrum Master โต้ตอบกับองค์กรได้หลายวิธี มีการระบุไว้ด้านล่าง -

  • ทีมฝึกสอนและต่อสู้มีปฏิสัมพันธ์กับองค์กรตนเองและรวมถึงคุณลักษณะของการทำงานข้ามกัน

  • การฝึกสอนองค์กรและทีมงานในพื้นที่ดังกล่าวซึ่งยังไม่ได้รับการยอมรับอย่างเต็มที่จาก Scrum หรือไม่ได้รับการยอมรับ

ประโยชน์ของ Scrum

Scrum ช่วยให้ลูกค้าสมาชิกในทีมและผู้มีส่วนได้ส่วนเสียทำงานร่วมกัน ซึ่งรวมถึงวิธีการตามไทม์บ็อกซ์และข้อเสนอแนะอย่างต่อเนื่องจากเจ้าของผลิตภัณฑ์เพื่อให้แน่ใจว่าผลิตภัณฑ์อยู่ในสภาพใช้งาน Scrum ให้ประโยชน์กับบทบาทต่างๆของโครงการ

ลูกค้า

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

องค์กร

การจัดองค์กรด้วยความช่วยเหลือจากผู้เชี่ยวชาญด้านการต่อสู้และการต่อสู้สามารถมุ่งเน้นไปที่ความพยายามที่จำเป็นสำหรับการพัฒนาเรื่องราวของผู้ใช้ซึ่งจะช่วยลดภาระงานและหลีกเลี่ยงการทำงานซ้ำหากมี นอกจากนี้ยังช่วยในการรักษาประสิทธิภาพที่เพิ่มขึ้นของทีมพัฒนาและความพึงพอใจของลูกค้า แนวทางนี้ยังช่วยในการเพิ่มศักยภาพของตลาด

ผู้จัดการผลิตภัณฑ์

ความรับผิดชอบหลักของผู้จัดการผลิตภัณฑ์คือการดูแลคุณภาพของผลิตภัณฑ์ ด้วยความช่วยเหลือของ Scrum Masters มันกลายเป็นเรื่องง่ายที่จะอำนวยความสะดวกในการทำงานรวบรวมคำตอบอย่างรวดเร็วและดูดซับการเปลี่ยนแปลงหากมี ผู้จัดการผลิตภัณฑ์ยังตรวจสอบว่าผลิตภัณฑ์ที่ออกแบบนั้นสอดคล้องกับความต้องการของลูกค้าในทุกการวิ่ง

ทีมพัฒนา

ด้วยลักษณะของไทม์บ็อกซ์และการรักษาระยะเวลาการวิ่งให้สั้นลงทีมพัฒนาจึงกระตือรือร้นที่จะเห็นว่างานได้รับการสะท้อนและส่งมอบอย่างเหมาะสม ผลิตภัณฑ์ที่ใช้งานได้จะเพิ่มขึ้นในแต่ละระดับหลังจากการทำซ้ำทุกครั้งหรือเรียกอีกอย่างว่า "sprint" เรื่องราวของผู้ใช้ที่ได้รับการออกแบบมาสำหรับการวิ่งทุกครั้งจะกลายมาเป็นลำดับความสำคัญของลูกค้าซึ่งเพิ่มมูลค่าให้กับการทำซ้ำ

สรุป

Scrum เป็นเฟรมเวิร์กที่มีประสิทธิภาพซึ่งคุณสามารถพัฒนาซอฟต์แวร์ในการทำงานเป็นทีมได้ ได้รับการออกแบบอย่างสมบูรณ์บนหลักการที่คล่องตัว ScrumMaster พร้อมให้ความช่วยเหลือและร่วมมือกับทีม Scrum ในทุกวิถีทาง เขาทำหน้าที่เหมือนผู้ฝึกสอนส่วนบุคคลที่ช่วยให้คุณยึดติดกับแผนการออกแบบและทำกิจกรรมทั้งหมดตามแผน อำนาจของ ScrumMaster ไม่ควรเกินกว่ากระบวนการ เขา / เธอควรมีความสามารถในการจัดการทุกสถานการณ์