จงเป็นเจ้าของลูปภายนอก
(substack.com/addyo)- แม้เอเจนต์จะรับหน้าที่ ลูปการทำงานภายใน ที่วนซ้ำระหว่างการสำรวจ·การลงมือทำ·การตรวจสอบ แต่วิศวกรก็ยังต้องเป็นเจ้าของ ลูปภายนอก ที่ตัดสินใจว่าจะปล่อยขึ้นใช้งานหรือไม่ และรับผิดชอบต่อผลลัพธ์
- ระบบเอเจนต์ทำงานบนพื้นฐานของ คุณภาพ (Quality) ซึ่งหมายถึงการตรวจสอบล่วงหน้า, คำตัดสิน (Verdict) ที่ใช้ตัดสินว่าจะนำเข้าสู่โปรดักชันหรือไม่, และ ความสามารถในการตอบอธิบาย (Answerability) ที่ทำให้สามารถอธิบายเหตุผลของการตัดสินใจได้
- จากผลสำรวจของ Sonar ในปี 2026 พบว่า 42% ของโค้ดที่ถูกคอมมิตนั้นสร้างโดย AI หรือได้รับความช่วยเหลือจาก AI อย่างมีนัยสำคัญ และเมื่อความเร็วในการสร้างแซงหน้าความเร็วในการควบคุม การรีวิว·การตรวจสอบ·ความเข้าใจ·การบำรุงรักษาจึงกลายเป็นทรัพยากรที่หายาก
- การใช้งาน AI มาพร้อมกับ การยอมจำนนทางความคิด ที่รับคำตอบผิดไปตรง ๆ, หนี้ทางความคิดที่ทำให้ความเข้าใจโค้ดอ่อนลง, และต้นทุนการประสานงานที่ต้องบริหารเอเจนต์หลายตัวด้วยความสนใจของมนุษย์ที่มีจำกัด
- โรงงานซอฟต์แวร์ที่ขยายได้เกิดขึ้นได้เมื่อไม่ได้ให้อิสระสูงสุดกับเอเจนต์ แต่ให้อิสระแบบ หยุดได้·ปรับได้·ตรวจสอบได้ และมนุษย์ยังรับผิดชอบต่อข้อจำกัด·การตรวจทานแบบสุ่มตัวอย่าง·การตรวจสอบย้อนหลัง·ความเป็นเจ้าของ และผลลัพธ์สุดท้าย
ลูปภายนอกของวิศวกรรมแบบเอเจนต์
- การถกเถียงเรื่องวิศวกรรมแบบเอเจนต์กำลังย้ายไปสู่เอเจนต์ harness และลูป, fleet, และ software factory
- ยิ่งมีโมเดลทรงพลังอย่าง Fable และ GPT-5.6 ปรากฏขึ้นมากเท่าไร วิศวกรก็ยิ่งต้องถือครองลูปภายนอกด้วยตนเอง ซึ่งหมายถึง ความรับผิดชอบ ต่อระบบ
- แรงทดของเอเจนต์ที่สูงขึ้นย่อมสร้างหน้าที่รับผิดชอบในระดับเดียวกัน
- ต้องอธิบายได้อย่างแม่นยำว่ามีอะไรเปลี่ยนไปบ้าง
- ต้องอธิบายได้ว่าทำไมการเปลี่ยนแปลงนั้นจึงปลอดภัย
- ต้องรู้ว่าจะเกิดอะไรขึ้นหากการตัดสินใจนั้นผิดพลาด
- หากทำเงื่อนไขเหล่านี้ไม่ได้ ก็ไม่สามารถให้ความชอบธรรมกับการกระทำของเอเจนต์ได้ และองค์กรก็ยากจะใช้งานระบบแบบนั้น
คุณภาพ·คำตัดสิน·ความสามารถในการตอบอธิบาย
- คุณภาพ (Quality) หมายถึงการตรวจสอบทุกอย่างที่ติดตั้งไว้ก่อนปล่อยระบบออกไป และหลักฐานที่ได้จากตรงนี้คือฐานของคำตัดสิน
- คำตัดสิน (Verdict) คือการตัดสินใจขั้นสุดท้ายโดยมนุษย์ว่าจะนำงานนั้นเข้าสู่โปรดักชันหรือไม่ก่อนเข้าระบบที่พึ่งพาอยู่
- ต่อให้โมเดลเป็นคนเขียนโค้ด คนที่ปล่อยงานภายใต้ชื่อตัวเองก็ยังเป็นผู้รับผิดชอบต่อคำตัดสิน
- ต้องเลือกอย่างใดอย่างหนึ่งระหว่างปล่อยใช้งาน, บล็อก, เปลี่ยนเส้นทาง, ลดขอบเขตการตอบสนอง, เพิ่ม guardrail, หรือปฏิเสธทั้งหมด
- ความสามารถในการตอบอธิบาย (Answerability) คือการรับประกันว่าเมื่อมีคนถามเหตุผล ก็สามารถอธิบายคำตัดสินนั้นได้
- โมเดลอาจเขียนโค้ดได้หนึ่งบรรทัด แต่ไม่สามารถรับหน้าที่แทนในการตัดสินใจว่าจะส่งต่อเข้าสู่ระบบที่พึ่งพาอยู่หรือไม่
โมเดล·harness·ลูป·โรงงาน
- เอเจนต์ไม่ใช่แค่โมเดลตัวเดียว แต่รวมถึง harness ที่ประกอบเข้าด้วยกันจาก ไฟล์·เครื่องมือ·หน่วยความจำ·ทักษะ·sandbox·สิทธิ์·การสังเกตการณ์·ความสามารถในการกู้คืน
- หากโมเดลคือเครื่องยนต์ harness ก็คือรถที่สร้างขึ้นรอบเครื่องยนต์เพื่อให้ทำงานจริงได้อย่างปลอดภัย
- เครื่องมือและหน่วยความจำมอบความสามารถในการทำงาน
- สิทธิ์และ sandbox จำกัดขอบเขตการทำงาน
- การทดสอบและการสังเกตการณ์ใช้ยืนยันผลลัพธ์ของงาน
- ลูปการทำงานของเอเจนต์ประกอบด้วย สำรวจ → ลงมือทำ → ตรวจสอบ → ทำซ้ำ
- วงจรที่ทำซ้ำได้จะเปลี่ยนความสำเร็จเพียงครั้งเดียวให้กลายเป็นกระบวนการที่เชื่อถือได้อีกครั้ง
- การตัดสินว่างานเสร็จหรือไม่ต้องอาศัยการตรวจสอบที่เป็นอิสระ ไม่ใช่การตัดสินของโมเดลเอง
- เมื่อเดินหลายลูปพร้อมกันก็จะกลายเป็น software factory
- ภายใน เอเจนต์สร้างผลงานออกมา
- ที่ขอบเขต มนุษย์เป็นเจ้าของการตัดสินใจสำหรับโปรดักชัน
เส้นแบ่งที่แยกระหว่างในระบบกับนอกระบบ
- ใจกลางของ software factory คือ เส้นแบ่งที่แยกระหว่างภายในและภายนอกระบบ
- ระบบภายในจะรวบรวมเป็นอินพุตทั้งเจตนาของทีมผลิตภัณฑ์ ความรู้เกี่ยวกับงานปล่อยใช้งานในอดีต เหตุขัดข้องล่าสุด และฟีดแบ็กผู้ใช้ที่เฉพาะเจาะจง
- ลูปของเอเจนต์จะสำรวจงาน ลงมือทำตามแผน และตรวจสอบผลลัพธ์
- เมื่อ หลักฐาน ที่สร้างจากการตรวจสอบข้ามเส้นแบ่งของระบบออกมา มนุษย์ที่เป็นเจ้าของระบบที่พึ่งพาอยู่จะเป็นผู้ตัดสินใจว่าจะเดินหน้าต่อหรือไม่
- ในอดีตเอเจนต์ทำได้เพียงบางส่วนของกระบวนการทำงาน แต่ตอนนี้สามารถรับทั้งลูปการทำงานภายในได้แล้ว และวิศวกรเป็นผู้รับผิดชอบลูปภายนอก
- สิ่งที่เอเจนต์ภายในขอบเขตมอบให้คือ ความสามารถ (capability)
- สำรวจงาน
- ลงมือทำตามแผน
- ทดสอบผลลัพธ์
- รายงานผลลัพธ์
- สิ่งที่มนุษย์นอกขอบเขตใช้อำนาจคือ agency
- ตัดสินใจ
- ตรวจสอบ
- อนุมัติ
- เป็นเจ้าของ
ช่องว่างด้านความเชื่อถือและการตรวจสอบที่เกิดจากโค้ด AI
- สัดส่วนของโค้ด AI ไม่ได้อยู่แค่ในระดับรอบนอกอีกต่อไป
- ตามรายงาน 2026 State of Code ของ Sonar 42% ของโค้ดที่ถูกคอมมิตนั้นสร้างโดย AI หรือได้รับความช่วยเหลือจาก AI อย่างมีนัยสำคัญ และผู้ตอบแบบสอบถามคาดว่าสัดส่วนนี้จะยังเพิ่มขึ้นต่อไป ไม่ได้หยุดนิ่ง
- เมื่อค่าใช้จ่ายในการสร้างโค้ดลดลง การรีวิว·การตรวจสอบ·ความเข้าใจ·การบำรุงรักษา จึงยิ่งกลายเป็นทรัพยากรที่หายาก
- เมื่อความเร็วในการสร้างเพิ่มขึ้นเร็วกว่าความเร็วในการควบคุม จึงเกิด ช่องว่างด้านความเชื่อถือ·การตรวจสอบ
- หลายคนแสดงความไม่ไว้วางใจต่อโค้ด AI
- แต่มีคนน้อยกว่านั้นที่แปลงความไม่ไว้วางใจให้กลายเป็นขั้นตอนการตรวจสอบที่สม่ำเสมอ
- จึงจำเป็นต้องมีวิธีที่ถูกกว่าและชัดเจนกว่านี้ในการยืนยันความน่าเชื่อถือของโค้ด AI
ข้อจำกัดของธรรมาภิบาลหลังเกิดเหตุ
- ตามงานวิจัย AI responsibility เดือนมิถุนายน 2026 ของ GitLab คอขวดปัจจุบันของการใช้ AI คือ การรีวิวและการตรวจสอบ
- ธรรมาภิบาลมักถูกนำมาใช้หลังจากสร้างโค้ดเสร็จแล้ว
- เมื่อถึงจุดนั้น องค์กรก็ยอมรับความเสี่ยงไปแล้ว
- การควบคุมความเป็นเจ้าของงานก็อ่อนแอลงแล้วเช่นกัน
- ธรรมาภิบาล AI ต้องก้าวไปไกลกว่าการควบคุมระบบอย่างเดียว และต้องกำหนดเรื่องต่อไปนี้
- จะวางข้อจำกัดอะไรให้ระบบ
- จะใช้หลักฐานอะไรตรวจงาน
- จะทำให้ทีมรับผิดชอบอย่างไร
- ใครเป็นเจ้าของแต่ละส่วนของวงจรชีวิต AI
แรงต้านย้อนกลับที่สร้างคุณภาพ
- คุณภาพสามารถมองได้ว่าเป็น แรงต้านย้อนกลับ (back pressure) ที่กระทำต่อระบบ
- เป้าหมายไม่ใช่การให้อิสระสูงสุดเท่าที่เอเจนต์จะมีได้
- ควรให้อิสระกับเอเจนต์เพียงเท่าที่สามารถหยุด ปรับ ตรวจงาน และรักษาบทบาทของมนุษย์ไว้ได้
- ในวิศวกรรมแบบเดิมมีสัญญาณที่แสดงอยู่แล้วว่างานกำลังไปในทิศทางที่ถูกต้องหรือไม่
- type check
- การทดสอบ
- hook
- ขีดจำกัดของ sandbox
- audit log
- monitor
- หากเอเจนต์ปล่อยสัญญาณแบบเดียวกันออกมา ก็สามารถใช้ระบบวิศวกรรมเดิมสร้างแรงต้านย้อนกลับที่เหมาะสมได้
ลูปสี่แบบที่มนุษย์ต้องอยู่ในนั้น
- การบอกว่าเชื่อถือระบบ ไม่ได้หมายความว่าจะเอามนุษย์ออกจากลูป
- มนุษย์ควรอยู่ไม่ใช่ในลูปการทำงานภายใน แต่ใน ลูปควบคุมภายนอก สี่แบบต่อไปนี้
- ลูปข้อจำกัด: ตัดสินใจว่าจะตั้งอินพุต สถาปัตยกรรม คำสั่ง และเงื่อนไขคงที่อะไรไว้
- ลูปตรวจทานแบบสุ่มตัวอย่าง: กำหนดว่าจะดึงผลลัพธ์ออกมาตรวจทานมากน้อยเพียงใด
- ลูปตรวจสอบย้อนหลัง: ตัดสินใจว่าจะเก็บหลักฐานอะไรไว้ และจะรับประกันความถูกต้องของ audit log อย่างไร
- ลูปความเป็นเจ้าของ: ทำให้ชัดเจนว่าใครเป็นเจ้าของส่วนใดของขอบเขตโปรดักชัน
- เอเจนต์สามารถสร้างงานออกมาได้มากกว่าปริมาณที่มนุษย์จะตรวจทานได้
- ดังนั้นทรัพยากรที่หายากคือ วิจารณญาณหลักของมนุษย์ ที่ใช้งานโดยอาศัยสัญญาณคุณภาพอย่าง log และการทดสอบ
- ในสภาพแวดล้อมการทดลองที่กล่าวถึงในงานวิจัยของ OpenAI เรื่องเอเจนต์กับอนาคตของงาน การมอบหมายงานแบบเอเจนต์ในช่วงเวลาระดับหลายชั่วโมงนั้นไปถึงจุดที่ทำได้จริงแล้ว
- ต้องสร้างขอบเขตความเป็นเจ้าของให้ชัดก่อนที่ระบบจะปล่อยงานออกมามากเกินกว่าปริมาณที่ตรวจทานได้
เอเจนต์ระยะยาวและความสามารถในการตอบอธิบาย
- ตัวเลือกทั้งหมดที่เอเจนต์ระยะยาวซึ่งทำงานเป็นชั่วโมงตัดสินใจ ล้วนถือเป็น การตัดสินใจ
- ไม่ใช่ทุกการตัดสินใจจะถูกบันทึกไว้ และก็ไม่อาจไล่ย้อนแต่ละรายการกลับไปถึง input token ได้
- หากเพียงเชื่อว่าผลลัพธ์คือทางเลือกที่ถูกต้องสำหรับปัญหา การจะสร้างสายโซ่การตัดสินใจที่นำไปสู่ผลนั้นขึ้นมาใหม่อาจต้องใช้แรงงานมนุษย์หลายร้อยหรือหลายพันชั่วโมง
- เพราะสายโซ่การตัดสินใจลักษณะนี้แทบสร้างกลับมาใหม่ได้ยาก ความสามารถในการตอบอธิบาย จึงต้องเป็นหัวใจของการออกแบบระบบ
ต้นทุนแฝงสามอย่างของการมอบหมายงานให้ AI
-
การยอมจำนนทางความคิด
- การยอมจำนนทางความคิด (cognitive surrender) คือปรากฏการณ์ที่รับผลลัพธ์จาก AI มาแบบไม่ตั้งคำถาม
- แม้มอบหมายงานให้เอเจนต์ ผลลัพธ์ก็ยังผูกกับงาน ชื่อเสียง และความรับผิดชอบของผู้ใช้
- ข้อบกพร่องยังคงอยู่ในซอฟต์แวร์ของผู้ใช้
- สิ่งที่ต้องเปลี่ยนให้เข้ากับผลลัพธ์ก็ยังเป็นซอฟต์แวร์ของผู้ใช้เอง
- คำตอบของเอเจนต์สุดท้ายแล้วก็กลายเป็นคำตอบของผู้ใช้ และความรับผิดชอบก็ตามมาด้วย
- ในงานวิจัยของ Wharton พบว่าแม้ AI จะตอบผิด ผู้เข้าร่วมเกือบ สามในสี่ ก็ยังยอมรับคำตอบนั้น และยังมีความมั่นใจสูงกว่าการตัดสินใจโดยไม่มี AI
-
หนี้ทางความคิด
- หนี้ทางความคิด (cognitive debt) คือภาวะที่ความเข้าใจและความจำเกี่ยวกับวิธีแก้ปัญหาอ่อนแอลง
- เมื่อมอบหมายงานให้เอเจนต์ กระบวนการคิดก็ถูกส่งออกไปภายนอกด้วย
- เวลาและพลังงานที่ต้องใช้เพื่อทำความเข้าใจ codebase ขนาดใหญ่ด้วยตัวเองอาจหาได้ยากระหว่างกระบวนการเรียนรู้
- ผลคือผลงานที่เอเจนต์สร้างขึ้นอาจไปอยู่ในระดับที่เกินความสามารถปัจจุบันของผู้ใช้จะเข้าถึงได้
- ยิ่งเวลาในการวางแผนของเอเจนต์ยาวขึ้น ช่องว่างระหว่างโค้ดที่สร้างขึ้นกับความเข้าใจของมนุษย์ก็ยิ่งกว้างขึ้น
- ช่องว่างนี้สะสมได้ และต้นทุนในการไต่กลับขึ้นไปบนเส้นโค้งการเรียนรู้ก็เพิ่มขึ้นแทบเป็นแบบยกกำลัง
- ในการทดลองแบบสุ่มมีกลุ่มควบคุมของ Anthropic คะแนนแบบทดสอบความเข้าใจของวิศวกรที่เขียนโค้ดด้วย AI อยู่ที่ 50% ต่ำกว่ากลุ่มที่เขียนเองซึ่งได้ 67% อยู่ 17 จุดเปอร์เซ็นต์
-
ต้นทุนการประสานงาน
- ต้นทุนการประสานงาน (orchestration tax) เกิดจากแม้จะรันเอเจนต์จำนวนมากพร้อมกันได้ แต่แบนด์วิดท์ทางความคิดของมนุษย์ไม่ได้ขนานกันได้แบบเดียวกัน
- มนุษย์ยังต้องทำงานต่อไปนี้ด้วยตนเอง
- ปรับเอเจนต์ไม่ให้ทำพฤติกรรมที่เลวร้ายที่สุด
- คัดเลือกจากผลงานว่าอะไรต้องการความสนใจ
- สั่งให้งานสำคัญถูกจัดการก่อน
- ตรวจสอบข้อจำกัดสำคัญและสมมติฐานเสี่ยงก่อนลงมือทำ
- งานเหล่านี้ทำให้เป็นอัตโนมัติไม่ได้ และไม่อาจแทนที่ วิจารณญาณของมนุษย์ ได้
วิธีปกป้องความสนใจในระบบ brownfield
- ระบบ brownfield มีความเสี่ยงเป็นพิเศษ เพราะพฤติกรรมที่ต้องตรวจสอบย้อนหลังไม่ได้อยู่แค่ในโค้ด แต่ยังสะสมอยู่ใน บาดแผลและประวัติศาสตร์ ด้วย
- ในการตัดสินใจด้านสถาปัตยกรรม ควรให้ความสำคัญกับความสนใจของมนุษย์เป็นอันดับแรก
- การใช้ worktree·ขอบเขต·หลักฐาน สามารถลดการผูกติดกันระหว่างแผนเริ่มต้นกับงานที่เพิ่งถูกค้นพบระหว่างการลงมือทำได้
- ควรกำหนดเวลาสูงสุดให้กับความพยายามแก้ขั้นตอนที่ยังรันไม่ได้
- สิทธิ์ในการเปลี่ยนซอฟต์แวร์ควรถูกมอบให้ด้วยวิธี opt-in ที่เข้มงวด
Alpha·decay·taste
- รูปแบบหลักสามอย่างที่กำหนดเส้นทางอาชีพและผลงานในหลายสาขาคือ alpha·decay·taste
- Alpha คือพื้นที่นำหน้าที่ผู้ทำผลงานได้สูงสุดในการแข่งขันครอบครอง และเป็นสภาวะของการเดินหมากที่มีมูลค่าสูงที่สุด
- Decay คือรูปแบบที่ตกตะกอนแล้วซึ่งทุกคนเรียนรู้ได้ผ่านการทำซ้ำและการสังเกต และอาจมองได้ว่าเป็นช่วงนิ่งงันรูปแบบหนึ่ง
- Taste คือวิจารณญาณที่ตรวจจับแนวหน้าของ alpha หรือการเปลี่ยนแปลงของ decay ได้ก่อนที่หลักฐานจะปรากฏ
- ข้อเขียนของ Paul Graham ชี้ว่าเมื่อทุกคนสามารถสร้างอะไรก็ได้ การเลือกว่าจะสร้างอะไรยิ่งสำคัญขึ้น
- ตามนิยามของ Mitchell Hashimoto taste คือ การตัดสินใจเชิงคุณภาพที่มีคุณภาพสูง ในช่วงที่ยังไม่มีเกณฑ์วัดเชิงวัตถุ
- การเคลื่อนตัวของ alpha เกิดจากการเปลี่ยนแปลงของ taste และ decay จะหายไปเมื่อผู้คนเริ่มชอบสิ่งอื่น
ทำให้ taste กลายเป็นความสามารถที่นำไปปฏิบัติได้
- หากจะย้าย taste จากสิ่งที่เป็นเพียงสัญชาตญาณไปสู่ความสามารถที่มีสติรู้ตัว ต้องเริ่มจาก การตั้งชื่อให้มัน
- ต้องฝึกวิจารณญาณนั้นผ่านการวิจารณ์และกรณีตัวอย่างที่เป็นรูปธรรม
- ต้องทำให้เหตุผลรองรับการตัดสินใจถูกแสดงออกอย่างชัดเจนด้วย
- หากต้องการเพิ่มความได้เปรียบในการแข่งขันที่ยั่งยืน ต้องขยับขอบเขตของบทบาทขึ้นไปเรื่อย ๆ
- ลงมือทำงานเอง
- สอนงานให้คนอื่นหรือให้ระบบ
- ทำให้งานเป็นระบบ
- ตัดสินใจว่าเมื่อใดควรทำ
- เป็นเจ้าของผลลัพธ์
ความต่างระหว่าง developer กับ engineer
- ทุกคนอาจเป็น developer ได้ แต่ไม่ใช่ทุกคนจะเป็น engineer
- developer จะกลายเป็น engineer เมื่อยอมรับ วินัยของงาน ที่เข้มงวดกว่า
- การให้เหตุผลอย่างถี่ถ้วนและสมเหตุสมผล
- การพิจารณาข้อจำกัดและ trade-off
- การรับรู้ความเสี่ยงและขอบเขตการเปิดรับ
- ความรับผิดชอบที่แท้จริง
- เมื่อวิศวกรรมยากขึ้น ผู้คนจะถอยออกจากงานแบบดูแลจัดการ และแยกบทบาทที่เคยผูกติดอยู่กับความเป็นช่างฝีมือออกมาเพื่อให้หน้าที่ของแต่ละคนชัดเจนขึ้น
- คนทำต้นแบบ
- คนสร้าง
- คนจัดระเบียบ
- คนขยายการเติบโต
- คนบำรุงรักษา
เส้นแบ่งของระบบที่มีเพียงมนุษย์เท่านั้นที่ปกป้องได้
- มนุษย์ยังทำหน้าที่เพิ่ม alpha ที่เส้นแบ่งอีกฝั่งของระบบ
- เลือกว่าสิ่งใดคุ้มค่าที่จะทำ
- กำหนดว่าจะทำภายใต้ข้อจำกัดแบบใด
- ตัดสินว่าหลักฐานเพียงพอหรือยังที่จะเดินหน้าต่อ
- ดูแลผลลัพธ์
- ไม่ว่าจะเป็นทีมเดียวหรือ 100 ทีม เส้นแบ่งนี้มีเพียงมนุษย์เท่านั้นที่เป็นเจ้าของได้
- ความสนใจ·taste·ความรับผิดชอบ คือองค์ประกอบสำคัญที่ทำให้ software factory ทำงานได้
- หากไม่มีความรับผิดชอบ ก็จะไม่มีทั้งกฎ การตอบคำถาม trade-off ความเสี่ยง หรือ safety net
- หากไม่มีใครเป็นเจ้าของผลของการตัดสินใจ agency ที่สูงก็จะนำไปสู่ความโกลาหล
ลายเซ็นที่อยู่ยาวนานกว่าเทคโนโลยี
- ครึ่งชีวิตของความได้เปรียบทางเทคนิคอาจสั้นเพียงหนึ่งรีลีส แต่ครึ่งชีวิตของ ลายเซ็น (signature) ที่ทิ้งไว้ในงานอาจยาวตลอดทั้งอาชีพ
- ลายเซ็นหมายถึงการที่เราสามารถเอาชื่อตัวเองไปรับรองผลลัพธ์ที่ปล่อยออกไปได้
- เทคโนโลยีสร้างแรงทด และความรับผิดชอบเปลี่ยนแรงทดนั้นให้กลายเป็น ความเชื่อถือ
- ผู้ที่เลือกและรับมรดกของผลลัพธ์มีเพียงมนุษย์เท่านั้น
- เอเจนต์อาจเลือก กำหนดเส้นทาง merge หรือ escalate ภายใต้นโยบายได้ แต่ไม่สามารถรับมรดกของผลลัพธ์นั้นแทนได้
สัญญาความรับผิดชอบของ codebase
- แต่ละ codebase อาจต้องมี สัญญาความรับผิดชอบ ที่ระบุเงื่อนไขในการรับการเปลี่ยนแปลงเข้าไว้
- เช็กลิสต์ยืนยันสิ่งที่เข้าใจตอนอนุมัติ
- หลักฐานที่ใช้ประกอบการตัดสินใจ
- ผู้รับผิดชอบต่อการเปลี่ยนแปลง
- สถานะของระบบหลังจากบล็อกการเปลี่ยนแปลง
- สัญญานี้ควรกล่าวถึงความเชื่อมโยงระหว่างความสนใจและ taste, หลักฐาน·คำตัดสิน·ความเป็นเจ้าของ, รวมถึง alpha·decay·taste อย่างชัดเจน
บันไดของ agency ระดับสูง
- ใน workflow แบบเอเจนต์ agency ระดับสูง คือความสามารถในการรู้ว่าเมื่อใดควรมอบหมาย เมื่อต้องตรวจ เมื่อใดต้องหยุด และเมื่อใดต้องเป็นเจ้าของผลลัพธ์
- บันไดของ agency ไล่จากขั้นต่ำไปสู่ขั้นสูงดังนี้
- ทำเครื่องหมายปัญหาที่อาจเกิดขึ้น
- สำรวจปัญหา
- ลงมือทำงานตอบสนอง
- วินิจฉัยสาเหตุ
- เสนอแนวทางแก้ไข
- แนะนำวิธีแก้
- แก้ปัญหา
- ขั้นที่สูงกว่านั้นยังรวมถึง วิจารณญาณ ที่มองเห็นปัญหาแล้วตัดสินว่ามันไม่คุ้มค่าที่จะลงมือแก้ และปล่อยผ่านไป
ทำไม brownfield จึงเป็นแนวหน้าของ software factory
- brownfield คือ แนวหน้า ที่ software factory ซึ่งต้องการขยายตัวจะต้องเผชิญ
- ระบบ greenfield ควบคุมได้ทั้งระบบ จึงวางแผนและสร้างกลไกแรงต้านย้อนกลับที่เพียงพอได้ค่อนข้างง่าย
- แต่เมื่อเพิ่มเอเจนต์อัจฉริยะเข้าไปในระบบ legacy ต้องรับมือกับความซับซ้อนที่อยู่นอกโค้ดด้วย
- พฤติกรรมทั้งหมดของโปรดักชัน
- ความคาดหวังในอนาคตของลูกค้า
- ประวัติการย้ายระบบ
- รอบการรีลีสและงบประมาณ
- สมมติฐานที่ไม่ได้พูดออกมา
- กรณียกเว้น
- ความแปลกเฉพาะของข้อมูล
- ขั้นตอน runbook
- บาดแผลที่สะสมมาโดยไม่มีการจัดการ
- การดูแล brownfield ต้องอาศัย วิศวกรรมที่ยั่งยืน
- เปลี่ยนความรู้โดยนัยให้เป็นข้อจำกัดที่ชัดเจน
- รักษาความรู้ให้สม่ำเสมอข้ามทีมและข้ามรุ่น
- ทำให้ความรู้นั้นเป็นทางการในรูปขั้นตอนทดสอบและสเปกฟังก์ชัน
- เชื่อมความรู้นั้นเข้ากับหลักฐานที่เป็นวัตถุวิสัย
- สะสมความล้มเหลวให้เป็นการเรียนรู้เพิ่มเติม
- หากระดับการดูแลจัดการที่ระบบเคยได้รับสะดุดลง ระบบทั้งหมดอาจพังทลายได้
งานใหม่ที่เกิดขึ้นเมื่อขนาดใหญ่ขึ้น
- เมื่อองค์ประกอบเดิมถูกทำให้เป็นอัตโนมัติ มนุษย์จะใช้ alpha และ taste ที่มาจากประสบการณ์เชิงช่างของตนเพื่อออกแบบ งานใหม่
- ออกแบบลูปใหม่ที่จะนำเข้าไปใช้กับ software factory
- ใช้ความรู้ที่ได้จากโรงงานเพื่อสร้างระบบ greenfield ที่มีหลักการ
- สร้างรูปแบบหลักฐานใหม่ที่ใช้ตรวจสอบระบบใหม่ได้
- ดูแลระบบ brownfield ที่ซับซ้อนจนต้องมีการจัดการเฉพาะทาง
- ออกแบบและดูแลกลไกแรงต้านย้อนกลับใหม่
- ออกแบบเอเจนต์ใหม่
- สร้างกรอบ agency ใหม่
- กิจกรรมเหล่านี้ล้วนเป็นงานวิศวกรรมจริง และยิ่งขยายขนาดก็ยิ่งกลายเป็นปัญหาที่น่าสนใจมากขึ้น
คอขวดที่การทำอัตโนมัติย้ายตำแหน่งไป
- การทำอัตโนมัติมอบความสามารถในการควบคุมในระดับอุตสาหกรรม แต่ก็สร้าง คอขวด ใหม่ขึ้นมาด้วย
- หากคอขวดในอดีตคือ “เราสร้างสิ่งนี้ได้ไหม?” ต่อไปมันจะย้ายไปสู่ “สิ่งนี้ควรมีอยู่หรือไม่ และเราสามารถอธิบายพร้อมรับผิดชอบต่อผลของมันได้หรือไม่?”
- คอขวดใหม่ที่เกิดขึ้นในโปรดักชันมีคุณค่าพอที่มนุษย์จะต้องเป็นเจ้าของโดยตรง
โมเดลการปฏิบัติการของวิศวกรรมแบบเอเจนต์
- ลูปภายในคือที่ที่งานจริงเกิดขึ้น และแต่ละลูปควรถูกออกแบบให้เป็นอิสระต่อกันมากที่สุด
- ควรใส่ การประกันคุณภาพและการตรวจสอบ ทั้งหมดไว้ในลูปภายใน
- หลังออกแบบและตรวจสอบตัวลูปเองแล้ว จึงค่อยติดตั้งกลไกแรงต้านย้อนกลับที่ควบคุมความเร็วในการทำงานและขอบเขตของงาน เพื่อมอบอิสระให้มัน
- แทนที่จะให้มนุษย์เข้าไปแทรกทุกขั้นตอนภายใน ควรวางมนุษย์ไว้ที่ จุดตัดสินใจที่ถูกต้อง
- อย่ามองความเข้าใจเป็นเพียงการส่งมอบงานต่อหรือเป็น release gate แต่ให้มองเป็นจุดตัดสินใจที่มนุษย์พร้อมมอบ insight
- ทุกครั้งที่ผลงานถูกส่งกลับไปสู่โปรดักชันและส่งต่อให้ทีมใหม่หรือวิศวกรใหม่ ควรทิ้งไว้ทั้งผลงานและหลักฐานที่ดีกว่าเดิม
- จงสร้างและเดินเครื่อง software factory ต่อไป แต่รักษางานให้อยู่ในสภาพที่ อ่านได้ ตรวจสอบได้ และมีเจ้าของ
- แม้เอเจนต์จะเขียนโค้ด แต่ก่อนที่มันจะไปถึงผู้ใช้ มนุษย์ยังต้องตอบคำถามต่อไปนี้
- ทำไมโค้ดนี้จึงควรมีอยู่
- ทำไมจึงปลอดภัยพอที่จะรวมเข้ากับโปรดักชัน
- หากมันผิดพลาดจะทำอย่างไร
- งานในการตัดสินและรับผิดชอบต่อคำตอบเหล่านี้ก็คือ ลูปภายนอก ของวิศวกรรมแบบเอเจนต์
ยังไม่มีความคิดเห็น