อ่าน 2 นาที
การตรวจสอบของฟากัน
การ ตรวจสอบแบบฟากัน (Fagan inspection) คือ กระบวนการค้นหา ข้อบกพร่อง ในเอกสาร (เช่น ซอร์สโค้ด หรือข้อกำหนดอย่างเป็นทางการ) ในระหว่างขั้นตอนต่างๆ ของ กระบวนการพัฒนาซอฟต์แวร์...
การตรวจสอบของฟากัน
การตรวจสอบแบบฟากัน (Fagan inspection)คือ กระบวนการค้นหาข้อบกพร่องในเอกสาร (เช่นซอร์สโค้ดหรือข้อกำหนดอย่างเป็นทางการ) ในระหว่างขั้นตอนต่างๆ ของกระบวนการพัฒนาซอฟต์แวร์ชื่อนี้ตั้งตามชื่อของไมเคิล ฟากัน ผู้ได้รับการยกย่องว่าเป็นผู้คิดค้นการตรวจสอบซอฟต์แวร์ อย่างเป็นทางการ
การตรวจสอบแบบฟากัน (Fagan inspection) นิยามกระบวนการว่าเป็นกิจกรรมที่มีเกณฑ์การเข้าและออก ที่กำหนดไว้ล่วงหน้า ในทุกกระบวนการที่มีการระบุเกณฑ์การเข้าและออก การตรวจสอบแบบฟากันสามารถใช้เพื่อตรวจสอบว่าผลลัพธ์ของกระบวนการนั้นสอดคล้องกับเกณฑ์การออกที่กำหนดไว้สำหรับกระบวนการนั้นหรือไม่ การตรวจสอบแบบฟากันใช้วิธีการตรวจสอบแบบกลุ่มเพื่อประเมินผลลัพธ์ของกระบวนการที่กำหนด
ตัวอย่าง
ตัวอย่างกิจกรรมที่สามารถใช้การตรวจสอบแบบ Fagan ได้ ได้แก่:
- ข้อกำหนดเฉพาะ
- สถาปัตยกรรมซอฟต์แวร์/ระบบสารสนเทศ (ตัวอย่างเช่น DYA)
- การเขียนโปรแกรม (ตัวอย่างเช่น สำหรับการวนซ้ำในXPหรือDSDM )
- การทดสอบซอฟต์แวร์ (ตัวอย่างเช่น เมื่อสร้างสคริปต์ทดสอบ)
การใช้งาน
กระบวนการพัฒนาซอฟต์แวร์เป็นตัวอย่างการประยุกต์ใช้การตรวจสอบของ Fagan เนื่องจากต้นทุนในการแก้ไขข้อบกพร่องในช่วงเริ่มต้นของการดำเนินงานนั้นต่ำกว่าการแก้ไขข้อบกพร่องในช่วงการบำรุงรักษาถึง 10 ถึง 100 เท่า[ 1 ]จึงจำเป็นต้องค้นหาข้อบกพร่องให้ใกล้จุดแทรกมากที่สุดเท่าที่จะเป็นไปได้ ซึ่งทำได้โดยการตรวจสอบผลลัพธ์ของการดำเนินงานแต่ละครั้งและเปรียบเทียบกับข้อกำหนดผลลัพธ์หรือเกณฑ์การออกจากการดำเนินงานนั้น
เกณฑ์
เกณฑ์การเข้าคือเกณฑ์หรือข้อกำหนดที่ต้องปฏิบัติตามเพื่อเข้าสู่กระบวนการเฉพาะ[ 2 ]ตัวอย่างเช่น สำหรับการตรวจสอบของ Fagan เอกสาร ระดับสูงและระดับต่ำต้องเป็นไปตามเกณฑ์การเข้าเฉพาะก่อนที่จะสามารถใช้ในกระบวนการตรวจสอบอย่างเป็นทางการได้
เกณฑ์การสิ้นสุด คือ เกณฑ์หรือข้อกำหนดที่ต้องปฏิบัติตามเพื่อให้กระบวนการเฉพาะนั้นเสร็จสมบูรณ์ ตัวอย่างเช่น สำหรับการตรวจสอบของ Fagan เอกสารระดับต่ำต้องเป็นไปตามเกณฑ์การสิ้นสุดเฉพาะ (ตามที่ระบุไว้ในเอกสารระดับสูง) ก่อนที่กระบวนการพัฒนาจะสามารถดำเนินการไปยังขั้นตอนต่อไปได้
เกณฑ์การออกจะถูกระบุไว้ในเอกสารระดับสูง ซึ่งจะใช้เป็นมาตรฐานในการเปรียบเทียบผลลัพธ์การดำเนินงาน (เอกสารระดับต่ำ) ในระหว่างการตรวจสอบ ความล้มเหลวใดๆ ของเอกสารระดับต่ำที่ไม่ตรงตามข้อกำหนดระดับสูงที่ระบุไว้ในเอกสารระดับสูงเรียกว่าข้อบกพร่อง[ 2 ] (และสามารถจำแนกเพิ่มเติมได้เป็น ข้อบกพร่อง หลักหรือ ข้อบกพร่อง รอง ) ข้อบกพร่องรองจะไม่คุกคามการทำงานที่ถูกต้องของซอฟต์แวร์ แต่อาจเป็นข้อผิดพลาดเล็กๆ น้อยๆ เช่น ข้อผิดพลาดในการสะกดคำหรือการจัดวางปุ่มควบคุมที่ไม่เหมาะสมในส่วนติดต่อผู้ใช้แบบกราฟิก
การดำเนินงานทั่วไป
การตรวจสอบ Fagan ทั่วไปประกอบด้วยการดำเนินการดังต่อไปนี้: [ 2 ]
- การวางแผน
- การเตรียมวัสดุ
- การจัดเตรียมผู้เข้าร่วม
- การจัดเตรียมสถานที่นัดพบ
- ภาพรวม
- การให้ความรู้แก่ผู้เข้าร่วมกลุ่มเกี่ยวกับเอกสารที่กำลังพิจารณา
- การมอบหมายบทบาท
- การตระเตรียม
- ผู้เข้าร่วมประชุมตรวจสอบรายการที่จะตรวจสอบและเอกสารประกอบเพื่อเตรียมพร้อมสำหรับการประชุม โดยจดบันทึกคำถามหรือข้อบกพร่องที่อาจเกิดขึ้น
- ผู้เข้าร่วมเตรียมความพร้อมสำหรับบทบาทของตน
- การประชุมตรวจสอบ
- การตรวจพบข้อบกพร่องที่แท้จริง
- ปรับปรุงใหม่
- การแก้ไขปรับปรุง (Rework) คือขั้นตอนในการตรวจสอบซอฟต์แวร์ที่ผู้เขียน ผู้ออกแบบ หรือโปรแกรมเมอร์ทำการแก้ไขข้อบกพร่องที่พบระหว่างการประชุมตรวจสอบ โดยอิงจากรายการข้อบกพร่อง เอกสารระดับต่ำจะได้รับการแก้ไขจนกว่าจะตรงตามข้อกำหนดในเอกสารระดับสูง
- การติดตามผล
- ในขั้นตอนการติดตามตรวจสอบซอฟต์แวร์ ข้อบกพร่องทั้งหมดที่พบในการประชุมตรวจสอบควรได้รับการแก้ไข (เช่นเดียวกับที่ได้รับการแก้ไขในขั้นตอนการปรับปรุงแก้ไข) ผู้ดูแลการประชุมมีหน้าที่ตรวจสอบว่าเป็นเช่นนั้นจริงหรือไม่ พวกเขาควรตรวจสอบว่าข้อบกพร่องทั้งหมดได้รับการแก้ไขแล้ว และไม่มีข้อบกพร่องใหม่เกิดขึ้นในขณะที่พยายามแก้ไขข้อบกพร่องเริ่มต้น การแก้ไขข้อบกพร่องทั้งหมดเป็นสิ่งสำคัญอย่างยิ่ง เนื่องจากค่าใช้จ่ายในการแก้ไขในภายหลังของโครงการอาจสูงกว่าค่าใช้จ่ายในปัจจุบันถึง 10 ถึง 100 เท่า[ 1 ]

การติดตามผล
ในขั้นตอนการติดตามผลของการตรวจสอบแบบฟากัน ข้อบกพร่องที่ได้รับการแก้ไขในขั้นตอนการแก้ไขควรได้รับการตรวจสอบอีกครั้ง โดยปกติแล้วผู้ควบคุมดูแลจะเป็นผู้รับผิดชอบในการตรวจสอบการแก้ไข บางครั้งงานที่แก้ไขแล้วอาจได้รับการยอมรับโดยไม่ต้องตรวจสอบ เช่น ในกรณีที่ข้อบกพร่องนั้นเล็กน้อย ในกรณีที่ไม่ใช่เรื่องเล็กน้อย ทีมตรวจสอบ (ไม่ใช่เฉพาะผู้ควบคุมดูแล) จะทำการตรวจสอบซ้ำอย่างเต็มรูปแบบ ในขั้นตอนนี้ ผู้เข้าร่วมทั้งหมดจะเห็นพ้องต้องกันว่าข้อบกพร่องได้รับการแก้ไขอย่างเหมาะสมแล้ว
หากการตรวจสอบล้มเหลว ให้กลับไปทำขั้นตอนการแก้ไขใหม่
บทบาท
โดยปกติแล้วกระบวนการตรวจสอบจะดำเนินการโดยสมาชิกของทีมเดียวกันกับที่ดำเนินโครงการ ผู้เข้าร่วมจะทำหน้าที่ต่าง ๆ ในกระบวนการตรวจสอบ: [ 3 ] [ 4 ]
- ผู้เขียน/ผู้ออกแบบ/ผู้เขียนโค้ด: บุคคลที่เขียนเอกสารระดับต่ำ
- ผู้อ่าน: สรุปความจากเอกสารระดับต่ำ
- ผู้ตรวจสอบ: ตรวจสอบเอกสารระดับต่ำจากมุมมองของการทดสอบ
- ผู้ดำเนินรายการ: รับผิดชอบการดำเนินงานในส่วนการตรวจสอบ และทำหน้าที่เป็นผู้ฝึกสอน
- เครื่องบันทึก: บันทึกข้อบกพร่องต่างๆ
ประโยชน์และผลลัพธ์
การใช้การตรวจสอบจะช่วยลดจำนวนข้อผิดพลาดในผลิตภัณฑ์ขั้นสุดท้ายได้อย่างมาก ทำให้ได้ผลิตภัณฑ์ที่มีคุณภาพสูงขึ้น ในอนาคต ทีมงานจะสามารถหลีกเลี่ยงข้อผิดพลาดได้ เนื่องจากการตรวจสอบจะให้ข้อมูลเชิงลึกเกี่ยวกับข้อผิดพลาดที่เกิดขึ้นบ่อยที่สุดทั้งในด้านการออกแบบและการเขียนโค้ด ทำให้สามารถหลีกเลี่ยงข้อผิดพลาดได้ตั้งแต่ต้นเหตุ การปรับปรุงกระบวนการตรวจสอบอย่างต่อเนื่องจะช่วยให้สามารถนำข้อมูลเชิงลึกเหล่านี้ไปใช้ประโยชน์ได้มากขึ้น[ 2 ]
นอกเหนือจากประโยชน์เชิงคุณภาพที่กล่าวมาข้างต้นแล้ว ยังสามารถลดต้นทุนได้อย่างมาก เนื่องจาก1การหลีกเลี่ยงและการตรวจพบข้อผิดพลาดตั้งแต่เนิ่นๆ จะช่วยลดปริมาณทรัพยากรที่จำเป็นสำหรับการแก้ไขข้อผิดพลาดในขั้นตอนต่อๆ ไปของโครงการ
ในทางปฏิบัติ บริษัทขนาดใหญ่ เช่น IBM ได้รายงานผลลัพธ์ที่เป็นบวกอย่างมาก โดยระบุว่าสามารถตรวจพบข้อบกพร่องได้ถึง 80% ถึง 90% และประหยัดทรัพยากรได้ถึง 25% [ 2 ]
การปรับปรุง
แม้ว่าวิธีการตรวจสอบของ Fagan จะได้รับการพิสูจน์แล้วว่ามีประสิทธิภาพมาก แต่ก็มีนักวิจัยหลายคนเสนอแนะการปรับปรุงเพิ่มเติม ตัวอย่างเช่น M. Genuchten [ 5 ]ได้ทำการวิจัยเกี่ยวกับการใช้ระบบการประชุมอิเล็กทรอนิกส์ (EMS) เพื่อปรับปรุงประสิทธิภาพการทำงานของการประชุมและได้ผลลัพธ์ที่ดี[ 6 ]
นักวิจัยคนอื่นๆ เสนอให้ใช้ซอฟต์แวร์ที่เก็บฐานข้อมูลของข้อผิดพลาดที่ตรวจพบและสแกนโค้ดโปรแกรมโดยอัตโนมัติเพื่อหาข้อผิดพลาดทั่วไปเหล่านี้[ 7 ]ซึ่งน่าจะส่งผลให้ประสิทธิภาพการทำงานดีขึ้น
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การตรวจสอบของฟากัน
การ ตรวจสอบแบบฟากัน (Fagan inspection) คือ กระบวนการค้นหา ข้อบกพร่อง ในเอกสาร (เช่น ซอร์สโค้ด หรือข้อกำหนดอย่างเป็นทางการ) ในระหว่างขั้นตอนต่างๆ ของ กระบวนการพัฒนาซอฟต์แวร์...
ตัวอย่าง
ตัวอย่างกิจกรรมที่สามารถใช้การตรวจสอบแบบ Fagan ได้ ได้แก่:
การใช้งาน
กระบวนการ พัฒนาซอฟต์แวร์ เป็นตัวอย่างการประยุกต์ใช้การตรวจสอบของ Fagan เนื่องจากต้นทุนในการแก้ไขข้อบกพร่องในช่วงเริ่มต้นของการดำเนินงานนั้นต่ำกว่าการแก้ไขข้อบกพร่องในช่วงการบำรุงรักษาถึง 10 ถึง 100 เท่า [ 1 ]...
เกณฑ์
เกณฑ์การเข้าคือเกณฑ์หรือข้อกำหนดที่ต้องปฏิบัติตามเพื่อเข้าสู่กระบวนการเฉพาะ [ 2 ] ตัวอย่างเช่น สำหรับการตรวจสอบของ Fagan เอกสาร ระดับสูงและระดับต่ำ ต้องเป็นไปตามเกณฑ์การเข้าเฉพาะก่อนที่จะสามารถใช้ในกระบวนการตรวจสอบอย่างเป็นทางการได้