แผนทดสอบและข้อเสนอ
UAT 493 โครงงานเทคโนโลยีระบบอากาศยานไร้คนขับและระบบอัตโนมัติ 1
บทเรียน
เมื่อเรียนจบโมดูลนี้ ผู้เรียนจะสามารถ
- ทำตารางพิสูจน์ข้อกำหนด (RVM) และตรวจความครอบคลุมของแผนทดสอบ
- วางแผนทดสอบตามแบบจำลอง V จากทดสอบชิ้นส่วนถึง validation กับผู้ใช้
- วิเคราะห์ความเสี่ยงด้วย FMEA และอธิบายการเปลี่ยนจาก RPN เป็น Action Priority
- เรียบเรียงข้อเสนอโครงงานที่ทุกส่วนตรวจย้อนกลับถึงข้อกำหนดได้
ทำไมต้องรู้
ข้อเสนอโครงงานที่ดีไม่ได้บอกแค่ว่าจะสร้างอะไร แต่บอกว่า จะพิสูจน์อย่างไรว่าสำเร็จ และ อะไรอาจผิดพลาด กรรมการจะถามว่าข้อกำหนดข้อนี้ทดสอบอย่างไร และถ้ากล้องเสียกลางอากาศจะเกิดอะไรขึ้น ทีมที่ตอบได้จากเอกสารของตนคือทีมที่พร้อมเริ่มสร้างในภาคการศึกษาถัดไป
แบบจำลอง V
แต่ละชั้นทางซ้ายมีการพิสูจน์คู่กันทางขวา ข้อกำหนดของระบบพิสูจน์ด้วยการทดสอบระบบ ส่วนความต้องการของผู้ใช้ยืนยันด้วย validation ลำดับการทดสอบจริงของโดรนใช้บันไดจาก SITL, HITL ถึงภาคสนามตามที่เรียนใน UAT 322
ตารางพิสูจน์ข้อกำหนด (RVM)
คู่มือวิศวกรรมระบบของ NASA ให้บันทึกผลการพิสูจน์ใน ตารางพิสูจน์ข้อกำหนด (requirements verification matrix) ที่บอกข้อกำหนด วิธีพิสูจน์ กิจกรรมทดสอบ เกณฑ์ผ่าน และผล ตารางนี้ตรวจได้สองทาง ข้อกำหนดทุกข้อต้องมีกิจกรรมพิสูจน์ และกิจกรรมทุกอย่างต้องพิสูจน์ข้อกำหนดบางข้อ
ตัวอย่างที่ 1 ตรวจความครอบคลุมของ RVM
requirements = ["R1", "R2", "R3", "R4", "R5a", "R5b", "R6", "R8"]
rvm = [ # (กิจกรรม, ข้อกำหนดที่พิสูจน์, วิธี)
("T1 labelled image set", ["R1"], "Test"), ("T2 timed SITL round", ["R4"], "Test"),
("T3 GCP survey", ["R6"], "Test"), ("A1 storage estimate", ["R5a"], "Analysis"),
("D1 report walkthrough", ["R5b", "R8"], "Demonstration"), ("T4 motor noise log", [], "Test"),
]
covered = {r for _, reqs, _ in rvm for r in reqs}
missing = [r for r in requirements if r not in covered]
orphans = [name for name, reqs, _ in rvm if not reqs]
print(f"coverage {len(covered)}/{len(requirements)} = {len(covered) / len(requirements):.0%}")
print("requirements without verification:", missing)
print("activities with no requirement:", orphans)
coverage 6/8 = 75%
requirements without verification: ['R2', 'R3']
activities with no requirement: ['T4 motor noise log']
ข้อกำหนด R2 และ R3 ยังไม่มีการพิสูจน์ (ซึ่งในโมดูล 2 เป็นข้อที่เขียนไม่ดีตั้งแต่ต้น ต้องเขียนใหม่ให้วัดได้ก่อน) ส่วน T4 ไม่ได้พิสูจน์ข้อกำหนดใด อาจเป็นงานเกิน หรือมีข้อกำหนดเรื่องเสียงที่ตกหล่น
ความเสี่ยงและ FMEA
FMEA (failure modes and effects analysis) ตามมาตรฐาน IEC 60812:2018 ไล่ดูว่าแต่ละส่วนเสียได้อย่างไร ผลคืออะไร และจะป้องกันหรือตรวจพบอย่างไร วิธีดั้งเดิมให้คะแนนความรุนแรง (S) โอกาสเกิด (O) และความสามารถตรวจพบ (D) ช่วง 1–10 แล้วคูณเป็น RPN แต่คู่มือ AIAG-VDA FMEA (2019) เปลี่ยนมาใช้ Action Priority (AP) แทน เพราะ RPN ที่เท่ากันอาจมาจากความรุนแรงที่ต่างกันมาก
ตัวอย่างที่ 2 FMEA อย่างง่าย
fmea = [ # (โหมดความเสียหาย, S, O, D)
("GNSS loss near tall trees", 8, 4, 3),
("companion computer hangs", 6, 3, 4),
("battery sag in wind", 9, 2, 2),
("AI misses a crack", 5, 5, 6),
("camera trigger drift", 4, 5, 5),
]
ranked = sorted(fmea, key=lambda row: row[1] * row[2] * row[3], reverse=True)
for mode, s, o, d in ranked:
flag = " <- severity 9+: act regardless of RPN" if s >= 9 else ""
print(f"RPN {s * o * d:>3} S{s} O{o} D{d} {mode}{flag}")
RPN 150 S5 O5 D6 AI misses a crack
RPN 100 S4 O5 D5 camera trigger drift
RPN 96 S8 O4 D3 GNSS loss near tall trees
RPN 72 S6 O3 D4 companion computer hangs
RPN 36 S9 O2 D2 battery sag in wind <- severity 9+: act regardless of RPN
ถ้าเรียงตาม RPN อย่างเดียว “แบตเตอรี่แรงดันตกในลม” อยู่ท้ายสุด ทั้งที่ความรุนแรงสูงสุด (โดรนอาจตก) นี่คือเหตุที่วิธีใหม่ให้ความสำคัญกับความรุนแรงก่อน ความเสี่ยงระดับการปฏิบัติการในภาพรวมใช้กรอบ SORA 2.5 ของ JARUS ในระดับสากล และแนวปฏิบัติ PDRA ของ กพท. สำหรับการบินนอกระยะสายตาในไทย
ข้อเสนอโครงงาน
ข้อเสนอรวมชิ้นงานของโมดูล 1–5 เข้าด้วยกัน ส่วนแผนงาน งบ และความเสี่ยงด้านโครงการใช้เครื่องมือจาก UAT 316 (WBS เส้นทางวิกฤต และทะเบียนความเสี่ยง) หลักสำคัญคือ ทุกส่วนต้องตรวจย้อนกลับถึงข้อกำหนดได้ และต้องระบุเงื่อนไขที่จะหยุดหรือทบทวนโครงงาน
ปฏิบัติการประจำโมดูล
ชิ้นงานโครงงาน: ข้อเสนอโครงงานฉบับสมบูรณ์
- ทำ RVM ของข้อกำหนดทุกข้อ ตรวจด้วยโค้ดตัวอย่างที่ 1 ให้ครอบคลุม 100% และไม่มีกิจกรรมที่ไม่มีข้อกำหนด
- วางแผนทดสอบตามแบบจำลอง V และบันไดการทดสอบ ระบุเกณฑ์ผ่านของแต่ละขั้นก่อนทดสอบ
- ทำ FMEA อย่างน้อย 10 โหมดความเสียหาย เรียงลำดับ และระบุมาตรการของโหมดที่ความรุนแรงสูงทุกข้อ
- เรียบเรียงข้อเสนอตามภาพที่ 2 รวมแผนงานและงบจาก UAT 316
- นำเสนอต่อกรรมการ 15 นาที ตอบคำถาม แล้วปรับข้อเสนอตามข้อแนะนำ
ข้อผิดพลาดที่พบบ่อย
ระวัง
- ข้อกำหนดที่ไม่มีวิธีพิสูจน์ ใน RVM
- ตั้งเกณฑ์ผ่านหลังเห็นผลทดสอบ
- จัดลำดับความเสี่ยงด้วย RPN อย่างเดียว จนมองข้ามความรุนแรงสูง
- ข้อเสนอที่แต่ละส่วนไม่เชื่อมกัน เช่น แผนทดสอบไม่ตรงข้อกำหนด
- ไม่มีเงื่อนไขหยุดหรือทบทวนโครงงาน
สรุป
- แบบจำลอง V จับคู่ทุกชั้นของการออกแบบกับการพิสูจน์ที่ระดับเดียวกัน
- RVM ต้องครอบคลุมข้อกำหนดทุกข้อ และทุกกิจกรรมต้องมีข้อกำหนดรองรับ
- FMEA ไล่โหมดความเสียหาย วิธีใหม่ใช้ Action Priority ที่ให้ความสำคัญกับความรุนแรง
- ข้อเสนอโครงงานรวมทุกชิ้นงาน ตรวจย้อนกลับถึงข้อกำหนด และมีเงื่อนไขหยุดหรือทบทวน
แบบฝึกตรวจความเข้าใจ
- มีข้อกำหนด 20 ข้อ มีกิจกรรมพิสูจน์ครอบคลุม 17 ข้อ ความครอบคลุมเท่าใด
- S = 7, O = 3, D = 4 RPN เท่าใด
- ทำไมคู่มือ AIAG-VDA (2019) จึงเปลี่ยนจาก RPN เป็น Action Priority
- ในแบบจำลอง V ข้อกำหนดของระบบจับคู่กับการพิสูจน์ชั้นใด
- กิจกรรมทดสอบที่ไม่พิสูจน์ข้อกำหนดใดเลยบอกอะไร
เฉลย
- RPN ที่เท่ากันอาจมาจากความรุนแรงที่ต่างกันมาก วิธีใหม่ให้ความสำคัญกับความรุนแรงก่อน
- การพิสูจน์ระบบ (system verification)
- อาจเป็นงานเกินจำเป็น หรือมีข้อกำหนดที่ตกหล่น
สรุปสูตรสำคัญ
| Risk priority number (แบบเดิม) | |
| ความครอบคลุมของแผนทดสอบ |
แหล่งอ้างอิงหลัก
- National Aeronautics and Space Administration. (2016). NASA systems engineering handbook (NASA/SP-2016-6105 Rev 2). link
- International Organization for Standardization. (2023). Systems and software engineering — System life cycle processes (ISO/IEC/IEEE 15288:2023). link
- International Electrotechnical Commission. (2018). Failure modes and effects analysis (FMEA and FMECA) (IEC 60812:2018). link
- AIAG & VDA. (2019). FMEA handbook (1st ed.). Automotive Industry Action Group. link
- Joint Authorities for Rulemaking on Unmanned Systems. (2024). JARUS guidelines on Specific Operations Risk Assessment (SORA), main body, edition 2.5 (JAR-DEL-SRM-SORA-MB-2.5). link
- สำนักงานการบินพลเรือนแห่งประเทศไทย. (2568). แนวปฏิบัติในการขอปฏิบัติการบินอากาศยานซึ่งไม่มีนักบินโดยใช้การประเมินความเสี่ยงที่เป็นไปตามเงื่อนไขที่กำหนดสำหรับการบินเกินกว่าระยะสายตา (CAAT-GM-UAS-PDRA101 ปรับปรุงครั้งที่ 00). link
- ABET. (2024). Criteria for accrediting engineering technology programs, 2025–2026. link
อ่านเพิ่มเติม
ศึกษาหน่วยความรู้ที่กำหนดล่วงหน้า ดูสื่อประกอบ และทำ quiz ประจำโมดูล
การทดสอบ UAV และการวิเคราะห์หลักฐาน
การบริหารโครงการเทคโนโลยี
ประเมินความเสี่ยงอย่างมีหลักฐาน
กำกับโครงการและติดตามผล
ในชั้นเรียน / ภาคสนาม
พัฒนาโครงงานเป็นทีม ประชุมที่ปรึกษา และนำเสนอความก้าวหน้า
หลักฐานการเรียนรู้: ผลงานตามจุดตรวจของโครงงาน