TL; DR
เรื่องราวของผู้ใช้สำหรับการบันทึกสิ่งที่ควรเพิ่มมูลค่าให้กับผลิตภัณฑ์และทำไม รายละเอียดการนำไปใช้ (เช่นวิธีเพิ่มมูลค่าทดสอบวัดหรือตรวจสอบ) จะถูก จำกัด โดยเนื้อเรื่อง แต่ไม่มีอยู่ในนั้น พวกเขาจะถูกทิ้งไว้โดยเจตนาเป็นสิ่งประดิษฐ์แยกต่างหากเพื่อรักษาความยืดหยุ่นและความคล่องตัวภายในกรอบ
ข้อมูลจำเพาะและรายละเอียดการใช้งานมักถูกบันทึกไว้ในสิ่งประดิษฐ์อื่น ๆ เช่นการพัฒนาแบบทดสอบการยอมรับขับเคลื่อน (ATDD) การพัฒนาแบบทดสอบด้วยการขับเคลื่อน (TDD) และสคริปต์และสถานการณ์การพัฒนาพฤติกรรมขับเคลื่อน (BDD) สิ่งประดิษฐ์เฉพาะเหล่านี้ไม่ได้รับคำสั่งจากเฟรมเวิร์ก Scrum แต่แน่นอนว่ามันจะเป็นจุดเริ่มต้นที่ดีหากคุณยังไม่มีการควบคุมกระบวนการที่มีประสิทธิภาพอื่น ๆ
เรื่องราวของผู้ใช้ไม่ใช่ข้อมูลจำเพาะ
โปสเตอร์ต้นฉบับ (OP) ถามคำถามต่อไปนี้ :
[A] ลูกค้าต้องการการประมวลผลที่แตกต่างกันสำหรับบัตรเครดิตที่แตกต่างกันมีข้อกำหนดที่เข้มงวดที่จะต้องดำเนินการและเป็นที่รู้จักเพื่อให้กรณีทดสอบสามารถเขียนได้ ... ที่ใดที่ฉันควรใส่มันหากไม่ได้อยู่ในเรื่องราว?
เรื่องราวของผู้ใช้เป็นคุณลักษณะที่ให้คุณค่ามีบริบทบางอย่างเพื่อเป็นแนวทางในการสนทนาเกี่ยวกับการใช้งานและมุมมองที่เชื่อมโยงกับผู้บริโภคที่มีคุณค่าซึ่งจะได้รับประโยชน์จากมูลค่าที่ส่งมอบโดยคุณลักษณะ
ประเด็นทั้งหมดของเรื่องราวของผู้ใช้คือรายละเอียดการใช้งานไม่ได้กำหนดไว้ล่วงหน้า ทีมมีอิสระที่จะใช้คุณลักษณะนี้ในทุกวิถีทางที่ส่งมอบคุณค่าที่ระบุให้แก่ผู้บริโภคที่มีคุณค่าภายในบริบทที่เหมาะสม
ตัวอย่างการทำงาน
ตัวอย่างเรื่องราวของผู้ใช้
วิธีนี้จะอธิบายได้ง่ายขึ้นหากคุณเริ่มต้นด้วยเรื่องราวที่ไม่ชัดเจนของผู้ใช้ เนื่องจาก OP ไม่ได้ให้เรื่องราวของผู้ใช้ที่สามารถดำเนินการได้ซึ่งตามมาจากโปรแกรมช่วยจำ INVESTฉันจะสร้างเรื่องราวขึ้นมาเพื่อเป็นตัวอย่าง พิจารณาเรื่องต่อไปนี้:
ในฐานะผู้ใช้ที่ต้องการชำระเงินด้วยบัตร Discover
ฉันต้องการตัวเลือกในการซื้อของฉันด้วยบัตร Discover
เพื่อที่ฉันจะได้ไม่ จำกัด Visa, Mastercard หรือ American Express
นี่เป็นคุณลักษณะที่เป็นรูปธรรมนำเสนอบริบทที่สามารถเป็นแนวทางในการตัดสินใจในการนำไปปฏิบัติที่ทีมต้องทำและระบุผู้บริโภคที่มีคุณค่าในฐานะลูกค้าของ Discover-card ที่เป็นเจ้าของ นั่นไม่ใช่ชุดของข้อกำหนด แต่เป็นสิ่งที่คุณต้องมีการสนทนาที่ถูกต้องกับลูกค้าและกับทีมเกี่ยวกับวิธีการใช้เรื่องราวที่ดีที่สุดในระหว่างการพัฒนาซ้ำ
การวิเคราะห์และการนำไปใช้
การใช้งานจริงขึ้นอยู่กับทีม ทีมจะต้องทำการวิเคราะห์เพื่อพิจารณา:
- วิธีที่ง่ายที่สุดในการปรับใช้คุณสมบัติใหม่
- ตัวเลือกการดำเนินการใดบ้างที่จะง่ายที่สุดในการสนับสนุนการดำเนินการต่อไปโดยไม่ต้องมีหนี้สินทางเทคนิค
- วิธีการใช้หลักการแบบเปิดปิดและ YAGNI เพื่อให้แน่ใจว่าคุณสมบัติใหม่ของคุณมีความแข็งแกร่งโดยไม่ต้องมีวิศวกรรมมากเกินไป
หนึ่งในหลักการสำคัญของAgile Manifestoคือการทำงานร่วมกันของลูกค้า คาดว่าจะมีทีมงานที่จัดระเบียบเองและทำงานร่วมกันได้เพื่อทำงานร่วมกับลูกค้าเพื่อกำหนดรายละเอียดการใช้งานภายในแนวทางที่ได้รับจากเรื่องราวของผู้ใช้
หากเรื่องราวของผู้ใช้ของคุณเขียนไม่ดีหรือหากทีมไม่มีทักษะหรือวุฒิภาวะของกระบวนการในการทำการวิเคราะห์อย่างพอเพียงที่ต้องการโดยกรอบความคล่องตัวของพวกเขาสิ่งนี้จะยากกว่าที่ควรจะเป็น มีการเขียนหนังสือทั้งเล่มเกี่ยวกับวิธีการสร้างเรื่องราวของผู้ใช้ที่ดีในระดับที่เหมาะสม โชคไม่ดีที่ไม่มีกระสุนเงิน แต่เป็นทักษะที่เรียนรู้ได้สำหรับทีมที่คล่องตัว
การทดสอบขับเคลื่อนและการออกแบบที่ขับเคลื่อนด้วยพฤติกรรม
วิธีที่ดีที่สุดเพื่อให้แน่ใจว่าการวิเคราะห์นั้นเป็นไปอย่างราบรื่นและการใช้งานนั้นมีทั้งสติและการสนับสนุนคือการใช้แนวทางปฏิบัติของ TDD และ BDD ตัวอย่างเช่นจากเรื่องราวข้างต้นทีมควรจับภาพการใช้งานตามแผนผ่านสิ่งประดิษฐ์เช่น:
คุณสมบัติของแตงกวากับสถานการณ์ที่ทดสอบได้
สิ่งนี้มีประโยชน์มากที่สุดสำหรับการผลักดันการพัฒนาการทดสอบการยอมรับและสำหรับการจัดทำเอกสารความคาดหวังของผู้ใช้เกี่ยวกับพฤติกรรมการใช้งาน ตัวอย่างเช่นเรื่องราวของผู้ใช้ควรมีคุณสมบัติแตงกวาที่เกี่ยวข้องอย่างน้อยหนึ่งอย่างที่อธิบายถึงวิธีการที่ผู้ใช้สามารถเช็คเอาต์ด้วยบัตร Discover และกระบวนการนั้นมีลักษณะอย่างไรต่อผู้ใช้
การทดสอบ RSpec ที่ตรวจสอบพฤติกรรม (ไม่ใช่รายละเอียดการนำไปใช้ภายใน) ของคุณลักษณะโค้ดใหม่
สิ่งนี้มีประโยชน์มากที่สุดสำหรับการจัดทำเอกสารและตรวจสอบพฤติกรรมที่ต้องการของคุณสมบัติภายในแอปพลิเคชัน ตัวอย่างเช่นเรื่องราวของผู้ใช้จะผลักดันการสร้างหน่วยทดสอบและบูรณาการเพื่อให้แน่ใจว่าการใช้บัตร Discover จะเรียกใช้พฤติกรรมเฉพาะบัตรที่แอปพลิเคชันต้องการให้อนุญาตการขายผ่านเกตเวย์การชำระเงิน
เครื่องมือเฉพาะไม่สำคัญ หากคุณไม่ชอบ Cucumber หรือ RSpec ให้ใช้เครื่องมือหรือวิธีการใดก็ได้ที่ดีที่สุดสำหรับทีมของคุณ แต่ประเด็นก็คือว่ารายละเอียดการปฏิบัติที่มีพื้นฐานอยู่บนเรื่องการใช้แต่ยังไม่ได้กำหนดโดยมัน แต่การใช้งาน (หรือข้อกำหนดเฉพาะ) เป็นรายละเอียดที่จะต้องดำเนินการในระหว่างการพัฒนาคุณลักษณะในรูปแบบการทำงานร่วมกัน