Backlog Refinement และ AI: อะไรที่เปลี่ยนไปจริง ๆ
การวิเคราะห์เชิงปฏิบัติว่า AI เปลี่ยน Backlog Refinement อย่างไร: อะไรเร็วขึ้น ความเสี่ยงเกิดขึ้นที่ไหน เวลาของทีมถูกจัดสรรใหม่อย่างไร และอะไรที่ต้องตรวจสอบด้วยมือ
ไม่สามารถโหลดภาพนี้ได้นี่คือบทความแรกในซีรีส์ว่าด้วย AI เปลี่ยนการประชุมแบบคลาสสิกของทีมพัฒนาข้ามสายงานอย่างไร ด้านล่างผมจะเริ่มจาก Backlog Refinement, และในเนื้อหาถัด ๆ ไปจะแยกวิเคราะห์ Planning, Daily, Review, Retrospective แล้วจากนั้นจะรวบรวมทั้งหมดไว้ในบทความภาพรวมฉบับสมบูรณ์
ขอระบุกรอบให้ชัดก่อน: ด้านล่างผมพูดถึง refinement ในฐานะเซสชันของทีมแบบเป็นประจำและแนวปฏิบัติในการทำให้ backlog items ชัดเจนขึ้น ไม่จำเป็นต้องเป็น Scrum event อย่างเป็นทางการแยกต่างหาก ความแม่นยำของศัพท์ตรงนี้สำคัญ: ใน Scrum Guide 2020 (RU PDF) refinement ถูกอธิบายว่าเป็น ongoing activity ไม่ใช่ event แยกต่างหาก ในฉบับภาษารัสเซียของ Scrum Guide 2020 แนวคิดนี้เขียนไว้ตรง ๆ ว่า การทำให้ Product Backlog ชัดเจนขึ้นเป็นกิจกรรมต่อเนื่องในการเพิ่มรายละเอียด ลำดับ และขนาด
Backlog Refinement เป็นหนึ่งในจุดแรก ๆ ที่ AI เริ่มสร้างประโยชน์ที่จับต้องได้จริงให้ทีม ช่วยรวบรวมบริบทได้เร็วขึ้น เตรียมร่างข้อกำหนดได้เร็วขึ้น สร้างร่างเกณฑ์การยอมรับได้อย่างรวดเร็ว ค้นหาเคสที่คล้ายกัน และกำหนดรายการคำถามที่ยังเปิดอยู่ ข้อเสนอนี้ยังได้รับการสนับสนุนจากงานเชิงปฏิบัติมากขึ้นด้วย: ตัวอย่างเช่น ใน LLM-Assisted Requirements Engineering in Agile MDD มีการตรวจสอบการสร้าง acceptance criteria โดยเฉพาะ และในกรณีศึกษาอุตสาหกรรม Acceptance Test Generation with Large Language Models ผู้ใช้ตั้งข้อสังเกตว่าสถานการณ์จำลองที่ AI สร้างช่วยให้เห็นกรณีที่เคยมองข้ามไป แต่ก็เพราะเหตุนี้เองที่ทำให้ตกหลุมพรางได้ง่ายเป็นพิเศษ: เข้าใจผิดว่าร่างที่จัดรูปแบบดีคือโจทย์ที่เข้าใจได้จริง
ในมุมมองของผม AI ไม่ได้ทำให้ refinement ง่ายขึ้นในความหมายที่ว่าทีมต้องคิดน้อยลง แต่ทำให้งานมือที่แพงที่สุดรอบ ๆ มันถูกลง — การค้นหา การสรุป การจัดรูปแบบ และการแตกย่อยเบื้องต้น ดังนั้นคุณค่าของการหารือในทีมจึงไม่ได้หายไป แต่เปลี่ยนจุดเน้น: ใช้เวลาน้อยลงในการปั้นสิ่งที่ดูเหมือนโจทย์ขึ้นมาจากความยุ่งเหยิง และใช้เวลามากขึ้นในการทำความเข้าใจว่าจะหยิบมันมาทำงานได้จริงหรือไม่
“AI เร่งความเร็วไม่ใช่ข้อตกลงของทีมเอง แต่เป็นการเตรียมวัสดุสำหรับข้อตกลงนั้น”
ทำไมการเปลี่ยนแปลงจึงรู้สึกได้ชัดที่สุดที่ Backlog Refinement
หากมองพิธีกรรมและการประชุมตามปกติของทีมในแนวปฏิบัติ Agile refinement ถือเป็นหนึ่งในกระบวนการที่อ่อนไหวที่สุดต่อการมาของ AI เหตุผลค่อนข้างง่าย: รอบ ๆ refinement มีงานทางปัญญาแบบมือทำซ้ำ ๆ อยู่มาก historically ต้องรวบรวมบริบทที่กระจัดกระจายจากเอกสาร ticket เก่า การสนทนา และความทรงจำของผู้คน ต้องเปลี่ยนไอเดียธุรกิจดิบให้เป็น backlog item ที่เข้าใจได้ ต้องกำหนดปัญหาทางธุรกิจ สถานการณ์ เกณฑ์การยอมรับ ข้อจำกัด คำถามที่เปิดอยู่ การพึ่งพา และกรณีขอบที่เป็นไปได้
AI เข้าไปในชั้นนี้ได้ดีเป็นพิเศษ ซึ่งสอดคล้องกับการพูดคุยในปัจจุบันเกี่ยวกับการใช้ LLM ใน requirements engineering: โมเดลเก่งในการสรุป การจัดโครงสร้างความต้องการเบื้องต้น การสร้างร่าง และการสนับสนุนการเตรียมงานวิเคราะห์ แต่ weaker ตรงที่ต้องใช้ความแม่นยำเฉพาะโดเมน การติดตามย้อนกลับ และความรับผิดชอบต่อการตัดสินใจขั้นสุดท้าย ในแง่นี้ refinement จึงกลายเป็นหนึ่งในกระบวนการแรก ๆ ที่ประโยชน์ของ AI รู้สึกได้เร็ว และขีดจำกัดของความน่าเชื่อถือก็เห็นได้เกือบจะทันที มีการเขียนถึงเรื่องนี้ไว้ดีในบทปริทัศน์ Challenges in applying large language models to requirements engineering tasks, ในบทปริทัศน์เชิงระบบฉบับใหม่ Large Language Models (LLMs) for Requirements Engineering (RE): A Systematic Literature Review, และในงานเชิงปฏิบัติมากขึ้น LLM-Assisted Requirements Engineering in Agile MDD.
refinement ก่อนมี AI เป็นอย่างไร
พูดให้ง่าย ก่อนมี AI refinement มักเป็นกระบวนการประกอบความเข้าใจด้วยมือ บ่อยครั้งสิ่งที่เข้า backlog ไม่ใช่โจทย์ที่พร้อมแล้ว แต่เป็นความตั้งใจทางธุรกิจ เช่น ปรับ onboarding ให้ดีขึ้น เพิ่มการแจ้งเตือน ให้ผู้จัดการมีรายงานใหม่ ลดจำนวนเรื่องที่ค้างเกินกำหนด หลังจากนั้น Product Owner นักวิเคราะห์ หรือใครสักคนในทีม lead ก็เริ่มรวบรวมบริบทด้วยมือ: ดึงคำร้องเรียนเก่าของลูกค้า ฟีเจอร์ที่คล้ายกัน ข้อจำกัดของสถาปัตยกรรมปัจจุบัน สถานะที่ใช้งานอยู่ การแจ้งเตือนที่มีอยู่ UI patterns และทุกอย่างอื่นที่อาจโผล่ขึ้นมากลางการอภิปราย
จากนั้นคนคนเดิมหรือคนสองคนก็พยายามด้วยมือเปลี่ยนสิ่งที่รวบรวมมาให้เป็นฉบับร่างแรก: กำหนดปัญหาทางธุรกิจ อธิบายสถานการณ์ เขียนเกณฑ์การยอมรับ ยกประเด็นที่ยังเปิดอยู่ และระบุข้อจำกัดที่เป็นไปได้ แต่ถึงแม้ฉบับร่างนั้นจะมีอยู่แล้ว การประชุมก็มักถูกใช้ไปกับการยกระดับบริบทให้ทั้งทีมเข้าใจอยู่ดี เจ้าของผลิตภัณฑ์อธิบายอีกครั้งว่าธุรกิจต้องการอะไร นักวิเคราะห์เล่าว่าค้นพบอะไรไปแล้วบ้าง นักพัฒนายกข้อจำกัดด้านสถาปัตยกรรมขึ้นมา QA ดึงสถานการณ์ขอบเขตออกมา นักออกแบบและฝั่งฟรอนต์เอนด์หารือกันว่าต้องมีหน้าจอแยกหรือไม่ และจะอยู่ตรงไหน
เคสเดียวกัน: ไม่มี AI และมี AI
เพื่อไม่ให้อยู่แค่ระดับสูตรสำเร็จทั่วไป ผมจะยกเคสหนึ่งขึ้นมา ผลิตภัณฑ์คือแพลตฟอร์ม LMS แบบ B2B สำหรับการฝึกอบรมในองค์กร ลูกค้ารายใหญ่กำหนดให้พนักงานเรียนหลักสูตรภาคบังคับด้าน compliance ความปลอดภัย และระเบียบภายใน จากฝั่งธุรกิจมีคำขอเข้ามาว่า ต้องเพิ่มการแจ้งเตือนทางอีเมลอัตโนมัติถึงพนักงานที่ยังเรียนหลักสูตรภาคบังคับไม่จบก่อนกำหนดส่ง
เมื่อมองแวบแรกดูเหมือนเป็นงานง่าย ๆ เรื่องการส่งอีเมล แต่แค่ก้าวแรกก็ชัดแล้วว่าจริง ๆ มีทางแยกหลายจุด: ใครกันแน่ที่นับว่ายังเรียนไม่จบ จะส่งแจ้งเตือนเมื่อไร จะตัดการส่งซ้ำอย่างไร ลูกค้าตั้งค่านี้ได้อย่างไร ต้องมีบันทึกการส่งหรือไม่ จะจัดการ time zone อย่างไร จะใช้อีเมลภาษาไหน และต้องตัดผู้ใช้ที่ archived และถูกปิดใช้งานออกหรือไม่
ในโหมดที่ไม่มี AI ทีมมาถึงคำถามเหล่านี้ผ่านการเตรียมด้วยมือที่ยาวนานและการพูดคุยขนาดใหญ่ในการประชุมนั้นเอง ก่อนอื่นเจ้าของผลิตภัณฑ์ยกบริบทฝั่งลูกค้าขึ้นมา จากนั้นนักวิเคราะห์ไล่ดูเอกสารภายในด้วยมือ: ค้นหาคำขอเก่าที่คล้ายกัน ดูบริการแจ้งเตือน ตรวจสอบสถานะ assignment ปัจจุบัน การมีอยู่ของงานในตัวจัดตาราง การตั้งค่าภาษาและเขตเวลา แค่ขั้นนี้ข้อจำกัดจริงก็โผล่ขึ้นมาแล้ว: ในระบบมีเทมเพลตอีเมลแต่สำหรับอีเมลธุรกรรมเท่านั้น เขตเวลาถูกเก็บที่ระดับลูกค้าไม่ใช่ระดับผู้ใช้ ไม่มีบันทึกการส่ง และในผลิตภัณฑ์ก็ไม่มีโมเดลการแจ้งเตือนแยกต่างหาก
หลังจากนั้นนักวิเคราะห์รวบรวมฉบับร่างแรกของข้อกำหนดด้วยมือ แต่ก็ยังไม่สมบูรณ์อยู่ดี ตัวอย่างเช่น ในนั้นอาจไม่ได้ระบุสถานะที่แน่นอนซึ่งต้องส่งแจ้งเตือน ตรรกะการตัดการส่งซ้ำ ขอบเขตงานขั้นต่ำสำหรับ UI fallback ด้านภาษา หรือขอบเขตของเวอร์ชันแรก และในระหว่าง refinement ทีมก็เก็บรายละเอียดงานเพิ่มระหว่างการพูดคุยกันตรงนั้นเอง ที่นั่นเองที่ทำให้รู้ว่าแจ้งเตือนจำเป็นเฉพาะหลักสูตรภาคบังคับ สถานะ not_started และ in_progress ใช้ได้ แต่ expired ไม่ควรเอาในเวอร์ชันแรก ถ้าไม่มีบันทึกการส่ง ฝ่ายสนับสนุนและทีมดูแลลูกค้าจะจมอยู่กับคำถามอย่างรวดเร็ว และถ้าไม่มีกลไกป้องกันการซ้ำ จะเกิดการส่งซ้ำเมื่องานในตัวจัดตารางทำงานซ้ำ
ในโหมดที่มี AI เคสเดียวกันนี้ดูต่างออกไป เจ้าของผลิตภัณฑ์อัปโหลดสรุปสั้น ๆ จากทีมดูแลลูกค้า คำร้องล่าสุดของลูกค้า และคำขอต้นฉบับดิบเข้าไปใน AI AI จัดกลุ่มความเจ็บปวดของลูกค้าได้อย่างรวดเร็ว ดึงความคาดหวังที่ซ้ำกันออกมา และช่วยเรียบเรียงถ้อยคำของปัญหา นักวิเคราะห์ขอให้ AI ดึงทุกอย่างที่เกี่ยวข้องกับโฟลว์การแจ้งเตือน สถานะการมอบหมาย งานในตัวจัดตาราง การตั้งค่าภาษา เขตเวลา และงานที่คล้ายกันใน Jira ฝั่งแบ็กเอนด์ป้อนคำอธิบายสถาปัตยกรรมการแจ้งเตือนปัจจุบันผ่าน AI ล่วงหน้าและขอให้เสนอแนวทางทางเทคนิค ฝั่งฟรอนต์เอนด์และนักออกแบบตรวจสอบอย่างรวดเร็วว่าควรฝังการตั้งค่าและประวัติการส่งไว้ที่ไหนจึงสมเหตุสมผลกว่า QA ดึงรายการเริ่มต้นของกรณีขอบเขตและความเสี่ยงด้านเวลาขึ้นมา
ตรงนี้มักมีคำถามธรรมชาติเกิดขึ้น: แล้วถ้า AI พลาดอะไรไปล่ะ? เราจะเชื่อสรุปสั้น ๆ แบบนี้ได้มากแค่ไหน โดยเฉพาะเมื่อฐานแหล่งข้อมูลมีขนาดใหญ่? งานวิจัยและเคสปฏิบัติให้ภาพที่สมจริงพอสมควร: LLM เร่งการสร้าง user story ฉบับร่าง เกณฑ์การยอมรับ และข้อกำหนดเบื้องต้นได้จริง แต่คุณภาพของผลลัพธ์ขึ้นอยู่กับบริบทนำเข้า โดเมน และการตรวจสอบโดยมนุษย์ในภายหลังอย่างมาก ดังนั้นจึงควรคำนึงถึงงานที่เน้นการประยุกต์ใช้อย่าง AI-Generated User Stories: Are They Good Enough? และ LLM-Assisted Requirements Engineering in Agile MDD: งานเหล่านี้แสดงให้เห็นชัดว่าการสร้างฉบับร่างที่แข็งแรงกับความพร้อมสำหรับการพัฒนาไม่ใช่สิ่งเดียวกัน
จากประสบการณ์ของผมในการใช้งาน Cursor ในสถานการณ์จริง ผมแทบจะไม่ค่อยสงสัยว่าตัวโมเดลจะสามารถสร้าง draft แรกจากแหล่งข้อมูลจำนวนมากได้หรือไม่ สิ่งที่สำคัญกว่าคือ ผมกำหนดโจทย์ได้ดีแค่ไหน ตั้งข้อจำกัดอะไรไว้บ้าง เพิ่มคำถามเพื่อความชัดเจนอะไรไปแล้วบ้าง และจัดระเบียบการตรวจสอบผลลัพธ์อย่างไร เมื่อผมเกิดความสงสัย ผมไม่ได้พยายามแก้ด้วยคำถามว่า "เชื่อหรือไม่เชื่อ AI" แต่ผมแค่ถามเพิ่มเติม ขอให้แสดงแหล่งข้อมูลแยกออกมา ดึงประเด็นที่ยังโต้แย้งออกมา แยกข้อเท็จจริงออกจากข้อสันนิษฐาน หรือสร้างคำตอบใหม่ด้วยกรอบอื่น ในแง่นี้ การทำงานกับ AI คล้ายกับการโค้ชมาก ทักษะที่มีประโยชน์คือการถามคำถามที่แม่นยำ ซึ่งไม่เพียงแต่กระตุ้นการสร้างคำตอบ แต่ยังชี้นำการคิดของโมเดลไปในทิศทางที่ต้องการ
แน่นอนว่านี่เป็นประสบการณ์ส่วนตัวของผม ไม่ใช่กฎสากล บางทีผมอาจเขียนบทความแยกอีกชิ้นหนึ่งเกี่ยวกับความไว้วางใจใน AI คุณภาพของคำถามเพื่อความชัดเจน และการตรวจสอบผลลัพธ์อย่างมีระบบ สำหรับ refinement แล้วเรื่องนี้สำคัญเป็นพิเศษ ยิ่งฐานแหล่งข้อมูลใหญ่ขึ้นและสรุปย่อโน้มน้าวใจได้มากเท่าไร ความเสี่ยงที่จะสับสนระหว่างการเตรียมการที่แข็งแกร่งกับความเข้าใจที่ผ่านการตรวจสอบแล้วก็ยิ่งสูงขึ้นเท่านั้น
“ยิ่งฐานแหล่งข้อมูลใหญ่ขึ้นและสรุปย่อโน้มน้าวใจได้มากเท่าไร ความเสี่ยงที่จะสับสนระหว่างการเตรียมการที่แข็งแกร่งกับความเข้าใจที่ผ่านการตรวจสอบแล้วก็ยิ่งสูงขึ้นเท่านั้น”
ผลก็คือ ทีมมาถึง refinement ไม่ใช่ด้วยไอเดียดิบอีกต่อไป แต่มาพร้อมกับโครงร่างที่ค่อนข้างแข็งแกร่ง มี draft ของ user story, draft ของเกณฑ์การยอมรับ, คำถามที่ยังเปิดอยู่, รายการความเสี่ยง, แนวทางเทคนิคเบื้องต้น และข้อเสนอ UI ดังนั้นการประชุมจึงสั้นลงและตรงประเด็นขึ้น ทีมไม่ต้องเสียเวลาในการปูพื้นฐานบริบทมากเท่าเดิม และส่วนใหญ่จะถกกันเฉพาะประเด็นที่ยังโต้แย้ง เช่น จะรวม expired, หรือไม่ จะแยกเขตเวลาตามผู้ใช้หรือไม่ จำเป็นต้องมีบันทึกการส่งในรีลีสแรกหรือไม่ จะจำกัดเฉพาะทริกเกอร์แบบคงที่หรือไม่ จะป้องกันข้อมูลซ้ำอย่างไร และอะไรคือขอบเขตของเวอร์ชันแรก
ความก้าวหน้าของทีมอยู่ที่ตรงไหน?
เมื่อทีมเพิ่งเริ่มใช้ AI มันทำงานหลักเป็นตัวสร้าง draft แรกแบบเร็ว แต่เมื่อทีมเติบโตขึ้น ขั้นตอนถัดไปที่สมเหตุสมผลคือเลิกทำงานกับโมเดลทั่วไปเพียงอย่างเดียว และเริ่มค่อยๆ ถ่ายโอนสิ่งที่เคยอยู่ในความทรงจำของผู้คนเท่านั้นเข้าสู่บริบทที่ทีมควบคุมได้ สิ่งเหล่านี้อาจเป็นหลักการผลิตภัณฑ์ เทมเพลตเกณฑ์การยอมรับ สาเหตุที่พบบ่อยของการปฏิเสธงานใน refinement กรณีขอบเขตทั่วไป ข้อจำกัดทางสถาปัตยกรรม ชุดคำถามเพื่อความชัดเจนมาตรฐาน กฎระเบียบภายในองค์กร Definition of Ready และ Definition of Done ในระดับองค์กรและทีม รวมถึงตัวอย่างแนวทางแก้ไขที่ดีสำหรับเคสที่คล้ายกัน
แล้วคุณภาพของ draft แรกก็เริ่มสูงขึ้นจริงๆ ไม่ใช่เพราะโมเดล "เข้าใจโดเมนได้เอง" ในทันที แต่เพราะทีมเรียนรู้ที่จะถ่ายโอนรูปแบบการคิด ข้อจำกัดภายใน และกฎการตรวจสอบของตนเองเข้าสู่โมเดลอย่างเป็นระบบ และตรงนี้เองที่ refinement ไม่ได้เป็นเพียงสถานที่ตรวจสอบงานเท่านั้น แต่ยังเป็นสถานที่ที่ทีมค่อยๆ ฝึกฝนชั้น AI ของตนเองขึ้นมาด้วย
อะไรเปลี่ยนไปตามบทบาท
ข้างล่างนี้มีประโยชน์ที่จะมองไม่เพียงแต่บทบาทในฐานะฟังก์ชันนามธรรม แต่ยังมองการกระทำที่เฉพาะเจาะจงในเคสจำลองเกี่ยวกับการแจ้งเตือนหลักสูตรภาคบังคับด้วย นี่คือจุดที่ความแตกต่างระหว่างโหมดที่ไม่มี AI และมี AI ปรากฏชัดอย่างแท้จริง
| บทบาท | ไม่มี AI | มี AI |
|---|---|---|
| เจ้าของผลิตภัณฑ์ | รวบรวมบริบทของลูกค้าด้วยตนเอง รวบรวมคำขอจากทีมสนับสนุนลูกค้า และอธิบายปัญหาทางธุรกิจใหม่ในการประชุม | เตรียมข้อมูลนำเข้าแบบไม่ระบุตัวตน ขอให้ AI จัดกลุ่มปัญหาของลูกค้า และนำ draft ของการกำหนดปัญหาและรายการการตัดสินใจด้านผลิตภัณฑ์ที่ยังโต้แย้งมาที่ประชุม |
| นักวิเคราะห์ธุรกิจ | ค้นหาเคสที่คล้ายกัน รวบรวมสถานะ ข้อจำกัด การพึ่งพาด้วยตนเอง แล้วเขียนทั้งหมดใหม่เป็น draft แรกของข้อกำหนด | จัดระเบียบคำขอต่อ AI ตามแหล่งข้อมูล ตรวจสอบสรุปย่อกับแหล่งข้อมูล แก้ไขเกณฑ์การยอมรับ บันทึกคำถามที่ยังเปิดอยู่และสิ่งที่โมเดลอาจมองข้าม |
| นักพัฒนาฝั่งแบ็กเอนด์ | มักจะเข้าใจปัญหาเชิงลึกเป็นครั้งแรกใน refinement แล้ว ยกข้อจำกัดของบริการแจ้งเตือนและความเสี่ยงเรื่องข้อมูลซ้ำขึ้นมาระหว่างการอภิปราย | ได้รับ draft แรกของแนวทางเทคนิคก่อนการประชุม ตรวจสอบการขจัดข้อมูลซ้ำ งานของตัวจัดตาราง audit trail และขอบเขตของเวอร์ชันแรกล่วงหน้า |
| นักพัฒนาฝั่งฟรอนต์เอนด์ | ในการประชุมพยายามทำความเข้าใจร่วมกับนักออกแบบว่าต้องมีหน้าจอแยกหรือไม่ การตั้งค่าจะอยู่ที่ไหน และอะไรอยู่ใน UI ขั้นต่ำจริงๆ | ดูก่อนการประชุมที่ draft UI ของการฝังจาก AI และระบุประเด็นที่ยังโต้แย้งเกี่ยวกับการตั้งค่า สถานะ และข้อจำกัดของอินเทอร์เฟซล่วงหน้า |
| วิศวกรคุณภาพ / QA | เข้ามามีส่วนร่วมหลักในการประชุม ดึงสถานการณ์เชิงลบ ความขัดแย้งของสถานะ และความเสี่ยงด้านเวลาออกมาในการสนทนาร่วม | ได้รับรายการเริ่มต้นของกรณีขอบเขตก่อนการประชุม ตรวจสอบว่า AI ไม่มองข้ามข้อมูลซ้ำ เขตเวลา สถานการณ์ fallback ทางภาษา และข้อยกเว้นตามสถานะผู้ใช้ |
| นักออกแบบ UX/UI | ทำความเข้าใจงานระหว่างการอภิปรายและประเมินคร่าวๆ ณ ที่นั้นว่าต้องมีหน้าจอใหม่ บล็อกการตั้งค่า หรือประวัติการส่งหรือไม่ | ทดสอบอย่างรวดเร็วร่วมกับฝั่งฟรอนต์เอนด์หลายแนวทาง UI และมาพร้อมข้อเสนอที่มีความหมาย ไม่ใช่เริ่มจากศูนย์ |
| สครัมมาสเตอร์ | รวบรวมผู้เข้าร่วม รักษาเวลา ช่วยไม่ให้หลงทางในการสร้างบริบทที่วุ่นวาย และนำทีมกลับสู่ประเด็นหลักเมื่อการอภิปรายเริ่มกระจัดกระจาย | ใช้เวลาน้อยลงกับกลไกองค์กรและการปรับบริบทพื้นฐานให้ตรงกัน ใช้เวลามากขึ้นกับการอำนวยความสะดวกในการตัดสินใจที่มีข้อโต้แย้ง การบันทึกคำถามที่ยังเปิดอยู่ และการควบคุมคุณภาพของการอภิปราย |
ข้อดี ความเสี่ยง และเวลาที่ประหยัดได้
ประโยชน์ของ AI ใน refinement ค่อนข้างชัดเจน บริบทถูกรวบรวมเร็วขึ้น ร่างของงานปรากฏเร็วขึ้น การอภิปรายเริ่มต้นง่ายขึ้น และผลลัพธ์ถูกจัดเก็บได้ดีขึ้น แต่ใน refinement ความเสี่ยงของ AI ก็ปรากฏขึ้นเร็วมากเช่นกัน ความเสี่ยงที่ชัดเจนที่สุดคือความชัดเจนลวง AI สามารถสร้าง backlog items ที่เรียบร้อยซึ่งดูดีทั้งทางภาพและโครงสร้าง ด้วยเหตุนี้ทีมจึงหลอกตัวเองได้ง่ายขึ้นด้วยความรู้สึกว่างานเข้าใจแล้ว ทั้งที่ยังมีช่องโหว่ทั้งด้านผลิตภัณฑ์และเทคนิคอยู่ในนั้น
ตรงนี้มีประโยชน์ที่จะเรียกสิ่งต่างๆ ตามชื่อของมัน ประการแรกคือ อคติจากระบบอัตโนมัติ และการพึ่งพามากเกินไป — แนวโน้มที่จะรับคำแนะนำของระบบอย่างเต็มใจเกินไปและเปลี่ยนจากการตรวจสอบเชิงรุกไปสู่การเฝ้าติดตามแบบพาสซีฟมากขึ้น ใน โปรไฟล์ NIST สำหรับ generative AI สิ่งนี้อธิบายไว้ตรงๆ ว่าเป็นความไว้วางใจที่มากเกินไปในระบบ AI และในการศึกษาเชิงประจักษ์ Automation Bias in AI-Decision Support: Results from an Empirical Study แสดงให้เห็นว่าประโยชน์ที่รับรู้ได้สูงของระบบสามารถเพิ่มการเห็นด้วยอย่างผิดพลาดกับข้อผิดพลาดของระบบ ในขณะที่คุณภาพของการฝึกอบรมผู้ใช้ลดโอกาสของผลกระทบดังกล่าว ประการที่สองคือ การหลอนของโมเดล — ข้อสรุปที่ฟังดูสมเหตุสมผลแต่ไม่มีแหล่งที่มายืนยัน สำหรับ refinement สิ่งนี้สำคัญมากเป็นพิเศษ เพราะ AI เกือบ всегдаทำงานผ่านการสรุปเอกสาร ทิกเก็ต และการสนทนา ซึ่งหมายความว่าความเสี่ยงไม่ได้อยู่แค่ใน “ร่างเกณฑ์การยอมรับที่สวยงามแต่กุขึ้น” เท่านั้น แต่อยู่ที่การบิดเบือนบริบทต้นฉบับอย่างเงียบๆ ด้วย นั่นคือเหตุผลที่ใน refinement AI มักผิดพลาดไม่ใช่ในสไตล์ของข้อความ แต่ในข้อเท็จจริงของบริบท — และความเสี่ยงนี้ได้รับการอธิบายไว้อย่างดีในงาน On Faithfulness and Factuality in Abstractive Summarization. ยาแก้พิษในทางปฏิบัติตรงนี้ค่อนข้างง่าย: ขอให้โมเดลแยกข้อเท็จจริงออกจากสมมติฐาน เรียกร้องให้อ้างอิงแหล่งที่มา และสร้างบทสรุปสั้นๆ ที่สามารถแกะกลับไปยังเอกสาร ทิกเก็ต และการตัดสินใจของทีมได้อย่างรวดเร็ว
ยังมีชั้นความเสี่ยงอีกชั้นหนึ่ง — ข้อมูล ในกรณีข้างต้น AI ทำงานกับคำร้องของลูกค้า คำอธิบายระบบภายใน และสัญญาณจากผู้ใช้ ดังนั้นทีมจึงสำคัญที่จะต้องตกลงกันล่วงหน้าว่าอะไรสามารถส่งให้โมเดลได้และอะไรไม่ได้ สำหรับ generative AI ความเสี่ยงไม่ได้จำกัดอยู่แค่พรอมป์ต์เท่านั้น: ข้อมูลส่วนบุคคลอาจปรากฏในอินพุต เอาต์พุต และแม้กระทั่งผ่าน memorization/regurgitation ของโมเดล ดังนั้นหากในการทำงานมีข้อมูลส่วนบุคคลหรือบริบทของลูกค้าที่ละเอียดอ่อน หลักการพื้นฐานด้านสุขอนามัยของข้อมูลจะต้องเป็นสิ่งบังคับ: ลดปริมาณข้อมูลในพรอมป์ต์ให้เหลือน้อยที่สุด ทำให้อินพุตไม่ระบุตัวตนได้เมื่อทำได้ อย่าดึงข้อมูลดิบที่ไม่ได้กรองเข้าโมเดล เข้าใจวัตถุประสงค์ของการประมวลผลอย่างชัดเจน และอย่าเชื่อคำกล่าวอ้างของผู้ให้บริการเช่น «เราไม่ประมวลผลข้อมูลส่วนบุคคล» หรือ «โมเดลไม่ระบุตัวตน» โดยไม่มีการควบคุมทั้งเชิงองค์กรและเชิงเทคนิคที่ตรวจสอบได้ นอกจากนี้ยังมีประโยชน์ที่จะกำหนดล่วงหน้าถึงฐานทางกฎหมายของการประมวลผล ชุดฟิลด์ขั้นต่ำที่จำเป็น บทบาทและความรับผิดชอบภายในกระบวนการ และในกรณีที่เกี่ยวข้อง — ข้อกำหนดในการแจ้งเจ้าของข้อมูล หากสถานการณ์เกี่ยวข้องกับข้อมูลส่วนบุคคลและขนาดหรือความเสี่ยงมีนัยสำคัญ ควรประเมินล่วงหน้าว่าจำเป็นต้องทำ DPIA หรือไม่ และบันทึกการตัดสินใจนั้นแยกต่างหาก ในบริบทของยุโรป สิ่งนี้สอดคล้องอย่างดีกับหลักการของ GDPR Article 5, คำแนะนำเชิงปฏิบัติของ CNIL เกี่ยวกับการพัฒนา AI system, รวมถึง EDPS guidance on Generative AI และ EDPB Opinion 28/2024.
และตรงนี้ก็เกิดคำถามสำคัญอีกข้อหนึ่ง: เวลาที่ประหยัดได้ของผู้เชี่ยวชาญนั้นไปที่ไหน ตัวเลือกที่ง่ายที่สุดคือพยายามยัดงานเพิ่มเข้าไปอีก ตัวเลือกที่โตเต็มที่กว่าคือลงทุนการประหยัดนี้ในคุณภาพของการตัดสินใจ ลดหนี้ทางเทคนิค พัฒนาเทมเพลตภายใน การฝึกอบรม เอกสาร และอย่างน้อยก็การจัดการความสนใจของทีมให้ดีขึ้น ในบทความภาพรวมสุดท้ายของซีรีส์นี้ ผมจะเล่าแยกต่างหากว่า AI ไม่ได้เปลี่ยนแค่กระบวนการ แต่ยังเปลี่ยนวัฒนธรรมของการใช้เวลาของทีมด้วย
ต้นทุนแฝงใหม่ที่ไม่สามารถมองข้ามได้
เพื่อให้การพูดคุยเรื่องประสิทธิภาพไม่ดูราบรื่นเกินไป สิ่งสำคัญคือต้องเพิ่มอีกด้านหนึ่งด้วย: AI แทบไม่เคยให้ “การประหยัดสุทธิ” โดยไม่มีงานรูปแบบใหม่ๆ เวลาส่วนหนึ่งตอนนี้หมดไปกับการเตรียมข้อมูล การตั้งค่าการเข้าถึงแหล่งข้อมูล การดูแลพรอมป์ต์และเทมเพลต การตรวจสอบแหล่งที่มา การจัดทำเอกสารการตัดสินใจ และการตรวจสอบโดยมนุษย์ มุมมองนี้สอดคล้องอย่างดีกับแนวปฏิบัติด้าน risk management สำหรับ generative AI เช่น โปรไฟล์ NIST สำหรับ generative AI เน้นไม่เพียงแต่ประโยชน์ของการทำงานอัตโนมัติ แต่ยังรวมถึงความจำเป็นของ oversight, documentation และการควบคุมระดับผู้บริหาร
การประเมินภาระงานตามสถานการณ์สำหรับ Backlog Refinement หนึ่งครั้ง (ตามสถานการณ์)
ด้านล่างนี้ไม่ใช่ “อุณหภูมิเฉลี่ยของตลาด” แต่เป็นแบบจำลองตามสถานการณ์ของ Backlog Refinement เดียวกันสำหรับทีมเดียวกันที่มีสมาชิกเจ็ดคน: PO, BA, backend, frontend, QA, designer และ Scrum Master นี่คือการประเมิน backlog item ขนาดใหญ่หนึ่งรายการหรือที่มีความไม่แน่นอนชัดเจน ไม่ใช่ story เล็กที่เข้าใจดีแล้ว คุณค่าของตัวเลขเหล่านี้ไม่ได้อยู่ที่ความแม่นยำถึงระดับนาที แต่อยู่ที่การเปรียบเทียบโครงสร้างของภาระงาน: เวลาเคยหายไปที่ไหน และตอนนี้หายไปที่ไหน
ต่อไปนี้จะพูดถึงชั่วโมงทำงานของคนต่อ backlog item ขนาดใหญ่หนึ่งรายการโดยเฉพาะ — การเตรียม การอภิปราย และการปรับปรุงสั้น ๆ หลังการประชุม — ไม่ใช่ระยะเวลาของการประชุมเอง การประชุมเองก็มักสั้นลงเช่นกัน แต่ส่วนหนึ่งของงานเพียงแค่ย้ายไปอยู่ในการเตรียมแบบอะซิงโครนัส การรันเพื่อขอความชัดเจน และการตรวจสอบด้วยมือที่จำเป็น
หมายเหตุเกี่ยวกับการคำนวณภาระงาน: ในอดีต Scrum Guide 2017 (RU PDF) refinement ยังถูกอธิบายว่าเป็น ongoing process และมีแนวทางว่ามักใช้เวลาไม่เกิน 10% ของความจุที่มีอยู่ของทีมพัฒนา ใน Scrum Guide 2020 (RU PDF) แนวทางนี้ไม่มีแล้ว ดังนั้นตารางด้านล่างควรอ่านเป็นแบบจำลองตามสถานการณ์เพื่อเปรียบเทียบโหมดการทำงานสองแบบ ไม่ใช่เป็นมาตรฐาน
ต้องอธิบายแยกให้ชัดเจน: คอลัมน์ «ด้วย AI» ด้านล่างรวมงานใหม่พื้นฐานที่ขาดไม่ได้สำหรับสถานการณ์นี้ไว้แล้ว — การเตรียมข้อมูลนำเข้า การสอบถามเพื่อความชัดเจน การตรวจสอบสรุปย่อเบื้องต้น การทวนสอบประเด็นที่โต้แย้ง และการตรวจสอบโดยมนุษย์ขั้นต่ำ กล่าวคือ ผลประโยชน์สุดท้ายในตารางไม่ใช่การประหยัดแบบ “ดิบ” ก่อนหักต้นทุนใหม่ แต่เป็นการประเมินตามสถานการณ์ที่สมจริงกว่าหลังจากการรวมต้นทุนเหล่านั้นขั้นพื้นฐานแล้ว
เพื่อให้การประเมินนี้ทำซ้ำได้ สะดวกในการคำนวณตามสูตรง่าย ๆ: TAI = Tbase × ((1 − p) + p × s) + oโดยที่ Tbase คือเวลาที่ไม่มี AI, p คือสัดส่วนของงานที่เร่งได้, s คือค่าสัมประสิทธิ์การเร่งในส่วนนั้น และ o คืองานใหม่สำหรับการเตรียมข้อมูล การสอบถามเพื่อความชัดเจน และการตรวจสอบผลลัพธ์
ด้านล่างนี้คือตัวอย่างที่ปรับเทียบสำหรับสถานการณ์พื้นฐานนี้โดยเฉพาะ หน้าที่ของมันไม่ใช่การพิสูจน์มาตรฐานสากล แต่เพื่อแสดงว่าแบบจำลองเดียวกันสามารถสร้างตัวเลขในตารางสำหรับกรณีเฉพาะหนึ่งกรณีได้อย่างไร ในทีมจริง ควรปรับเทียบพารามิเตอร์เหล่านี้จาก Backlog Refinement 3–5 ครั้งล่าสุด แล้วจึงได้ช่วงของตัวเอง
# Calibrated to reproduce the table (base scenario)
# T_ai = T_base * ((1 - p) + p * s) + o
roles = {
"PO": {"T_base": 4.5, "p": 0.75, "s": 0.20, "o": 0.7},
"BA": {"T_base": 10.0, "p": 0.70, "s": 0.20, "o": 0.6},
"BE": {"T_base": 3.5, "p": 0.75, "s": 0.20, "o": 0.6},
"FE": {"T_base": 3.0, "p": 0.75, "s": 0.20, "o": 0.3},
"QA": {"T_base": 3.0, "p": 0.50, "s": 0.20, "o": 0.2},
"UX": {"T_base": 3.0, "p": 0.50, "s": 0.20, "o": 0.2},
"SM": {"T_base": 2.5, "p": 0.50, "s": 0.20, "o": 0.0},
}
def t_ai(x):
return x["T_base"] * ((1 - x["p"]) + x["p"] * x["s"]) + x["o"]
total_base = sum(r["T_base"] for r in roles.values())
total_ai = sum(t_ai(r) for r in roles.values())
print("Total base:", round(total_base, 1))
print("Total AI:", round(total_ai, 1))
print("Gain:", round(total_base - total_ai, 1))
for role, x in roles.items():
print(role, round(t_ai(x), 1))
| บทบาท | ไม่มี AI | ด้วย AI (รวมงานใหม่) | สิ่งที่เปลี่ยนไป |
|---|---|---|---|
| เจ้าของผลิตภัณฑ์ | 4.5 ชม. | 2.5 ชม. | รวบรวมบริบทของลูกค้าได้เร็วขึ้น แต่ใช้เวลาส่วนหนึ่งในการเตรียมข้อมูลนำเข้าและสอบถามเพื่อความชัดเจน |
| นักวิเคราะห์ธุรกิจ | 10 ชม. | 5 ชม. | ค้นหาและเขียนใหม่ด้วยมือน้อยลง ตรวจสอบ แก้ไข และตรวจสอบว่า AI ไม่พลาดสิ่งสำคัญมากขึ้น |
| นักพัฒนาฝั่ง backend | 3.5 ชม. | 2 ชม. | ได้การวิเคราะห์ทางเทคนิคครั้งแรกเร็วขึ้น แต่ตรวจสอบข้อจำกัดของสถาปัตยกรรมและความเสี่ยงของการซ้ำซ้อนแยกต่างหาก |
| นักพัฒนาฝั่ง frontend | 3 ชม. | 1.5 ชม. | ประเมินการฝัง UI และการตั้งค่าได้เร็วขึ้น พร้อมทั้งเข้ามาตรวจสอบประเด็นที่โต้แย้งเร็วขึ้น |
| วิศวกรคุณภาพ / QA | 3 ชม. | 2 ชม. | ได้กรณีขอบและความเสี่ยงด้านเวลาก่อน แต่มีส่วนร่วมมากขึ้นในการตรวจสอบสิ่งที่พลาดและสถานการณ์เชิงลบ |
| นักออกแบบ UX/UI | 3 ชม. | 2 ชม. | รวบรวมแนวทาง UI ฉบับแรกได้เร็วขึ้นและตัดตัวเลือกอินเทอร์เฟซที่ไม่จำเป็นออกล่วงหน้า |
| Scrum Master | 2.5 ชม. | 1.5 ชม. | ใช้เวลาน้อยลงในการจัดแนวบริบทเชิงองค์กร มากขึ้นในการอำนวยการตัดสินใจและบันทึกคำถามที่ยังเปิดอยู่ |
| รวม | 29.5 ชม. | 16.5 ชม. | ผลประโยชน์ตามสถานการณ์ — ประมาณ 13 ชั่วโมงทำงานของคนต่อ Backlog Refinement หนึ่งครั้ง หลังหักงานใหม่พื้นฐานแล้ว |
ช่วงของสถานการณ์: ผลประโยชน์อาจเปลี่ยนแปลงอย่างไร
| สถานการณ์ | ไม่มี AI | ด้วย AI | ผลประโยชน์สุทธิ | เมื่อใดจึงเป็นเช่นนี้ |
|---|---|---|---|---|
| ระมัดระวัง | 24–28 ชม. | 18–21 ชม. | 4–10 ชม. | แหล่งข้อมูลไม่ครบถ้วน มีการตรวจสอบด้วยมือมาก ทีมเพิ่งเริ่มสร้างรูปแบบการทำงานกับ AI |
| พื้นฐาน | 28–32 ชม. | 15–18 ชม. | 10–15 ชม. | กรณีจำลองมีลักษณะประมาณนี้: AI เร่งการเตรียมการได้ดี แต่งานใหม่สำหรับการทวนสอบถูกรวมไว้แล้ว |
| แข็งแกร่ง | 30–36 ชม. | 14–17 ชม. | 13–19 ชม. | ทีมมีแหล่งข้อมูลที่ดี มีเทมเพลตที่ทำซ้ำได้ และมีกฎที่ชัดเจนด้านสุขอนามัยข้อมูลและการตรวจสอบด้วยมือ |
งานใหม่ใดถูกรวมไว้แล้วในสถานการณ์ที่มี AI
ตารางด้านล่างไม่ได้หักล้างผลประโยชน์สุทธิจากตารางแรก แต่เพียงอธิบายว่าส่วนหนึ่งของเวลาที่ประหยัดได้นั้นถูกส่งคืนกลับเข้าสู่กระบวนการผ่านการดำเนินการใหม่ใดบ้าง — และทำไมแม้หลังจากนั้นผลสุทธิยังคงชัดเจน
| พื้นที่งานใหม่ | สิ่งที่เกิดขึ้นกับ AI | ทำไมจึงจำเป็น |
|---|---|---|
| การเตรียมข้อมูลนำเข้า | การทำความสะอาด การทำให้ไม่ระบุตัวตน การสรุปบริบทที่จำเป็น | เพื่อไม่ให้โมเดลเต็มไปด้วยข้อมูลขยะและไม่ดึงข้อมูลที่ไม่จำเป็น |
| การสอบถามเพื่อความชัดเจน | การรันซ้ำ การกำหนดขอบเขตคำตอบให้ชัดเจนขึ้น การขอให้แยกข้อเท็จจริงและสมมติฐาน | เพื่อไม่ให้ถือคำตอบสวยงามครั้งแรกเป็นความเข้าใจสุดท้าย |
| การตั้งค่าเทมเพลต | พรอมป์ต์ เทมเพลตการเขียนงาน กฎรูปแบบผลลัพธ์ | เพื่อให้ AI สร้างฉบับร่างที่มีประโยชน์และทำซ้ำได้ ไม่ใช่ข้อความสุ่ม |
| การตรวจสอบข้อเท็จจริง | การตรวจสอบลิงก์แหล่งที่มา คำศัพท์ สถานะ และข้อจำกัด | เพื่อจับการหลอนของโมเดลและความชัดเจนลวงก่อนการประชุม |
| การบันทึกความน่าเชื่อถือ | การยืนยันว่าสิ่งใดที่ตรวจสอบด้วยมือและทำไมผลลัพธ์จึงเชื่อถือได้ | เพื่อให้ทีมไม่แทนที่ความรับผิดชอบด้วยฉบับร่างที่สวยงาม |
ความแตกต่างตามขั้นตอน
| ขั้นตอน | ไม่มี AI | มี AI |
|---|---|---|
| การรวบรวมบริบทก่อนการประชุม | การค้นหาเอกสาร ตั๋ว และความทรงจำของผู้คนด้วยมือที่ใช้เวลานาน | การตรวจสอบแหล่งข้อมูลรอบแรกและสรุปย่อทำได้เร็วขึ้นอย่างเห็นได้ชัด |
| ฉบับร่างของข้อกำหนด | เขียนด้วยมือและมักยังคงหยาบ | มีโครงร่างที่แข็งแรงซึ่งทีมสามารถวิพากษ์และปรับปรุงได้ |
| การทำ Backlog Refinement | ใช้เวลามากในการปรับความเข้าใจให้ตรงกัน | โฟกัสเปลี่ยนไปที่การตัดสินใจที่มีข้อโต้แย้ง การพึ่งพา และขอบเขตของเวอร์ชันแรก |
| การปรับปรุงหลังการประชุม | มักต้องเขียนข้อกำหนดใหม่เกือบทั้งหมด | ผลลัพธ์ถูกจัดรูปแบบไว้อย่างดีแล้วและต้องการการปรับปรุงด้วยมือน้อยลง |
เช็กลิสต์คุณภาพของการเตรียม refinement ด้วย AI
สำคัญ: Definition of Ready นี้เป็นแนวปฏิบัติภายในของทีม ไม่ใช่ส่วนหนึ่งของ Scrum Guide ที่นี่ใช้เพื่อป้องกันความชัดเจนลวง การละเว้น และความรับผิดชอบที่คลุมเครือในการเตรียมด้วย AI
Definition of Ready สำหรับฉบับร่าง AI
- แยกข้อเท็จจริงออกจากสมมติฐาน: ทีมเข้าใจว่าสิ่งใดนำมาจากแหล่งข้อมูลและสิ่งใดที่แบบจำลองเสนอ
- มีลิงก์หรือข้อบ่งชี้ที่ชัดเจนไปยังแหล่งข้อมูลสำหรับข้อกล่าวอ้างด้านผลิตภัณฑ์และเทคนิคที่สำคัญ
- คำถามที่เปิดอยู่ไม่ได้ซ่อนอยู่ใต้ข้อความที่เรียบร้อย แต่ถูกระบุไว้อย่างชัดเจน
- ตรวจสอบคำศัพท์เฉพาะทาง สถานะ ข้อจำกัด บทบาท และการพึ่งพาแล้ว
- สำหรับข้อกล่าวอ้างสำคัญแต่ละข้อ ระดับของหลักฐานมีความชัดเจน: เป็นข้อเท็จจริงจากแหล่งข้อมูล สมมติฐานการทำงาน หรือสมมติฐานของแบบจำลอง
- ตรวจสอบกรณีขอบเขต สถานการณ์เชิงลบ และความเสี่ยงชั่วคราวแยกต่างหาก
- ชัดเจนว่าข้อมูลใดไม่สามารถส่งให้แบบจำลองได้และมีมาตรการสุขอนามัยข้อมูลใดที่ถูกนำมาใช้
- มีการกำหนดเจ้าของการตรวจสอบตามประเภทของข้อกล่าวอ้าง: ตรรกะทางธุรกิจ ความเป็นไปได้ทางสถาปัตยกรรม ความสามารถในการทดสอบ และการจัดการข้อมูล
- ทีมตกลงว่าฉบับร่าง AI เป็นวัตถุดิบสำหรับการอภิปราย ไม่ใช่เรื่องที่เกือบจะพร้อมแล้ว
เพื่อให้เช็กลิสต์นี้ไม่เป็นนามธรรมเกินไป นี่คือลักษณะที่จะเป็นในกรณีศึกษาของเราที่เกี่ยวกับการแจ้งเตือนทางอีเมล:
- AI เสนอให้รวมสถานะ
not_started,in_progressและexpired— ทีมระบุอย่างชัดเจนว่าexpiredยังคงเป็นสมมติฐาน ไม่ใช่กฎที่ยืนยันแล้วสำหรับเวอร์ชันแรก - ในบทสรุปย่อระบุว่าการแจ้งเตือนควรส่งตามเขตเวลาของผู้ใช้ — ฝ่ายแบ็กเอนด์ตรวจสอบกับแหล่งข้อมูลและยืนยันว่าในระบบปัจจุบันเขตเวลาถูกเก็บไว้เฉพาะระดับไคลเอนต์เท่านั้น และการเปลี่ยนระหว่างเขตเวลากับ DST ต้องตรวจสอบแยกต่างหาก
- AI เพิ่มประวัติการส่งเป็นส่วนที่ “เห็นได้ชัด” ของโซลูชัน — เจ้าของผลิตภัณฑ์และ BA ตัดสินใจแยกต่างหากว่านี่เป็นส่วนบังคับของเวอร์ชันแรกหรือการปรับปรุงในรีลีสถัดไป เพราะที่นี่มีคำถามเรื่องการตรวจสอบและภาระต่อฝ่ายสนับสนุนด้วย
- QA ไม่ได้รับเพียงรายการกรณีขอบเขต แต่ได้รับงานเฉพาะในการตรวจสอบข้อมูลซ้ำเมื่องานของตัวจัดตารางทำงานซ้ำ สถานการณ์สำรองทางภาษา ข้อยกเว้นสำหรับผู้ใช้ที่ถูกเก็บถาวรและถูกปิดใช้งาน และสถานการณ์เชิงลบรอบกำหนดเวลา
- ฝ่ายแบ็กเอนด์ตรวจสอบ rate limits, throttling, deliverability แยกต่างหาก และวิธีที่ระบบจะทำงานเมื่อมีการส่งซ้ำและเกิดข้อผิดพลาดจากผู้ให้บริการ
- PO และ BA ตรวจสอบนโยบายการแจ้งเตือนเพิ่มเติม: ใครสามารถส่งการแจ้งเตือนได้ ที่ใดต้องการ opt-out หรือข้อยกเว้นของลูกค้า และสิ่งใดถือเป็นพฤติกรรมที่ยอมรับได้สำหรับหลักสูตรบังคับ
สำหรับกรณีศึกษาเช่นนี้ การพูดคุยแยกเกี่ยวกับสองเรื่องในทางปฏิบัติที่มักปรากฏขึ้นเมื่อใกล้ถึงโปรดักชันก็มีประโยชน์: deliverability กลายเป็นภาระต่อฝ่ายสนับสนุนและทีมดูแลลูกค้าอย่างรวดเร็วหากไม่มีการวินิจฉัยที่ดีว่า “ทำไมอีเมลไม่ถึง” และ quiet hours กับช่วงเวลาตามปฏิทินมักไม่ใช่ “ตัวเลือกเสริม” แต่เป็นข้อกำหนดองค์กรของลูกค้า
ใครตรวจสอบอะไรด้วยมือ
| สิ่งที่ตรวจสอบ | ใครเป็นเจ้าของ | ตัวอย่างในกรณีศึกษา LMS |
|---|---|---|
| เป้าหมายและนโยบายผลิตภัณฑ์ | PO และ BA | ใครและเมื่อใดควรได้รับการแจ้งเตือน ข้อยกเว้นใดที่ยอมรับได้ และเวอร์ชันแรกมีขอบเขตอยู่ที่ใด |
| ความถูกต้องของกฎและสถานะ | BA | สถานะใดถือว่า “ยังไม่เสร็จ” จะทำอย่างไรกับ expired และสิ่งใดได้รับการยืนยันจากแหล่งข้อมูลแล้ว |
| ข้อจำกัดทางสถาปัตยกรรม | นักพัฒนาแบ็กเอนด์ | การขจัดข้อมูลซ้ำ งานของตัวจัดตาราง idempotency บันทึกการตรวจสอบ rate limits และพฤติกรรมเมื่อมีการส่งซ้ำ |
| ขอบเขต UI ของเวอร์ชันแรก | นักพัฒนา фронтенд และนักออกแบบ UX/UI | การตั้งค่าอยู่ที่ใด จำเป็นต้องมีหน้าจอประวัติแยกหรือไม่ และสถานการณ์ใดของอินเทอร์เฟซที่รวมอยู่ในเวอร์ชันแรกจริง |
| สถานการณ์เชิงลบและชั่วคราว | วิศวกรคุณภาพ / วิศวกร QA | DST เขตเวลา สถานการณ์สำรองทางภาษา ข้อยกเว้นสำหรับผู้ใช้ที่ถูกเก็บถาวรและถูกปิดใช้งาน รวมถึงข้อมูลซ้ำเมื่องานของตัวจัดตารางทำงานซ้ำ |
| การอำนวยความสะดวกในการตัดสินใจและคำถามที่เปิดอยู่ | สกรัมมาสเตอร์ | สิ่งใดตัดสินใจแล้ว สิ่งใดยังคงเป็นข้อโต้แย้ง และที่ใดทีมต้องยอมรับการประนีประนอมอย่างมีสติ |
| สุขอนามัยข้อมูลและความเหมาะสมของข้อมูล | PO/BA และหากมี Security หรือ DPO | สิ่งใดสามารถส่งให้แบบจำลองได้ สิ่งใดต้องทำให้ไม่ระบุตัวตน และการตรวจสอบใดเป็นสิ่งบังคับก่อนเริ่มการเตรียมด้วย AI |
สิ่งที่ฉันจะแนะนำทีม
- อย่าถือว่าฉบับร่าง AI เป็นงานที่พร้อมแล้วเพียงเพราะมันดูดี
- ตกลงกันอย่างชัดเจนว่าส่วนใดของบริบทที่ทีมต้องตรวจสอบด้วยตนเองก่อนการประชุม และส่วนใดที่ตรวจสอบในการประชุมเอง
- ค่อยๆ ถ่ายโอนรูปแบบผลิตภัณฑ์และกระบวนการของเราเองเข้าสู่ชั้น AI ของทีม แทนที่จะใช้แค่แชททั่วไป "ตามที่มีอยู่"
- อย่าลดขอบเขต refinement ลงโดยอัตโนมัติเพียงเพราะการเตรียมการเร็วขึ้น
- ตัดสินใจอย่างมีสติว่าเวลาที่ประหยัดได้จะไปที่ใด: คุณภาพ การเรียนรู้ เอกสาร หนี้ทางเทคนิค หรือการฟื้นฟูสมาธิของทีม
สิ่งสำคัญอีกประการหนึ่งคือต้องคำนึงถึงขอบเขตการนำไปใช้ของสถานการณ์นี้ ผลกระทบของ AI จะแตกต่างกันมาก ขึ้นอยู่กับความสมบูรณ์ของเอกสาร ความพร้อมใช้งานของแหล่งข้อมูลภายใน ความซับซ้อนของโดเมนผลิตภัณฑ์ และความสามารถของทีมในการเปลี่ยนความรู้โดยนัยให้เป็นบริบทที่ทำซ้ำได้ ในกรณีที่ข้อมูลต้นทางอ่อนแอ AI อาจเร่งการจัดทำแพ็กเกจได้ แต่ไม่จำเป็นต้องปรับปรุงคุณภาพของการตัดสินใจ
บทสรุป
หากพูดสั้นๆ ผลกระทบหลักของ AI ต่อ refinement ผมจะสรุปได้ว่า: AI เร่งความเร็วไม่ใช่ตัวข้อตกลงของทีมเอง แต่เป็นการเตรียมวัสดุสำหรับข้อตกลงนั้น ด้วยเหตุนี้ refinement จึงเร็วขึ้นตั้งแต่ต้น: บริบทถูกรวบรวมเร็วขึ้น ร่างแรกปรากฏเร็วขึ้น คำถามพื้นฐานและความเสี่ยงถูกระบุเร็วขึ้น และผลลัพธ์ถูกจัดทำเป็นแพ็กเกจเร็วขึ้น
แต่สิ่งนี้ไม่ได้ทำให้ refinement ง่ายขึ้นโดยอัตโนมัติ เพราะเมื่อต้นทุนการเตรียมการลดลง คุณค่าของสิ่งที่ AI ยังทำได้ไม่ดีจริงๆ ก็เพิ่มขึ้น: การเข้าใจโดเมน การสัมผัสถึงข้อจำกัดที่แท้จริง การสังเกตความชัดเจนลวง การจัดการข้อมูลอย่างระมัดระวัง และการช่วยทีมตัดสินใจประนีประนอมอย่างมีสติ
ดังนั้นวิธีที่ดีที่สุดในการมอง AI ใน refinement คือ: มันขจัดงานmanualที่มีต้นทุนสูงบางส่วนรอบๆ กระบวนการ แต่มันทำให้การตรวจสอบความหมายโดยมนุษย์สำคัญยิ่งขึ้น ยิ่งการสร้าง backlog items ง่ายขึ้นเท่าไร การเข้าใจว่ารายการใดพร้อมสำหรับการอภิปรายจริงและรายการใดเพียงแค่ดูดีก็ยิ่งสำคัญขึ้นเท่านั้น และในบทความถัดๆ ไปของซีรีส์ จะน่าสนใจที่ได้ดูว่าการเปลี่ยนแปลงนี้ส่งผลไม่เพียงต่อกระบวนการเท่านั้น แต่ยังส่งผลต่อวัฒนธรรมการใช้เวลาของทีมด้วย
แหล่งอ้างอิงและแนวทาง
- Scrum Guide 2020 (RU PDF)
- Scrum Guide 2017 (RU PDF)
- Challenges in applying large language models to requirements engineering tasks
- AI-Generated User Stories: Are They Good Enough?
- LLM-Assisted Requirements Engineering in Agile MDD
- Large Language Models (LLMs) for Requirements Engineering (RE): A Systematic Literature Review
- On Faithfulness and Factuality in Abstractive Summarization
- Automation Bias in AI-Decision Support: Results from an Empirical Study
- Examining human reliance on artificial intelligence in decision making
- โปรไฟล์ NIST สำหรับ Generative AI
- EDPB Opinion 28/2024 on certain data protection aspects related to AI models
- EDPS guidance on Generative AI (2025)
- GDPR Article 5
- CNIL: AI system development recommendations
