การทดสอบความน่าเชื่อถือคืออะไร? (ตัวอย่าง)
การทดสอบความน่าเชื่อถือคืออะไร?
การทดสอบความน่าเชื่อถือ เป็นกระบวนการทดสอบซอฟต์แวร์ที่ตรวจสอบว่าซอฟต์แวร์สามารถทำงานได้โดยไม่มีข้อผิดพลาดในสภาพแวดล้อมเฉพาะเป็นระยะเวลาที่ระบุหรือไม่ วัตถุประสงค์ของการทดสอบความน่าเชื่อถือคือเพื่อให้แน่ใจว่าผลิตภัณฑ์ซอฟต์แวร์ไม่มีข้อบกพร่องและเชื่อถือได้เพียงพอสำหรับวัตถุประสงค์ที่คาดหวัง
ความน่าเชื่อถือหมายถึง "การให้ผลเหมือนเดิม" หรืออีกนัยหนึ่ง คำว่า "เชื่อถือได้" หมายถึงบางสิ่งที่เชื่อถือได้และจะให้ผลลัพธ์เดียวกันทุกครั้ง เช่นเดียวกับการทดสอบความน่าเชื่อถือ
ตัวอย่างการทดสอบความน่าเชื่อถือ
ความน่าจะเป็นที่พีซีในร้านจะสามารถทำงานได้เป็นเวลา 99 ชั่วโมงโดยไม่ขัดข้องคือ XNUMX เปอร์เซ็นต์ ซึ่งเรียกว่าความน่าเชื่อถือ
การทดสอบความน่าเชื่อถือสามารถแบ่งได้เป็น 3 ส่วน คือ
- การสร้างแบบจำลอง
- การวัด
- การปรับปรุง
สูตรต่อไปนี้ใช้สำหรับคำนวณความน่าจะเป็นของความล้มเหลว
Probability = Number of failing cases/ Total number of cases under consideration
ปัจจัยที่มีอิทธิพลต่อความน่าเชื่อถือของซอฟต์แวร์
- จำนวนข้อบกพร่องที่มีอยู่ในซอฟต์แวร์
- วิธีที่ผู้ใช้ใช้งานระบบ
การทดสอบความน่าเชื่อถือถือเป็นกุญแจสำคัญประการหนึ่งที่ทำให้ซอฟต์แวร์มีคุณภาพดีขึ้น การทดสอบนี้ช่วยค้นหาปัญหามากมายในการออกแบบและการทำงานของซอฟต์แวร์
วัตถุประสงค์หลักของการทดสอบความน่าเชื่อถือคือการตรวจสอบว่าซอฟต์แวร์ตรงตามข้อกำหนดด้านความน่าเชื่อถือของลูกค้าหรือไม่
การทดสอบความน่าเชื่อถือจะดำเนินการในหลายระดับ ระบบที่ซับซ้อนจะได้รับการทดสอบในระดับหน่วย การประกอบ ระบบย่อย และระบบ
ทำไมต้องทำการทดสอบความน่าเชื่อถือ?
การทดสอบความน่าเชื่อถือเสร็จสิ้นเพื่อทดสอบประสิทธิภาพของซอฟต์แวร์ภายใต้เงื่อนไขที่กำหนด
วัตถุประสงค์เบื้องหลังการดำเนินการทดสอบความน่าเชื่อถือคือ
- เพื่อค้นหาโครงสร้างของความล้มเหลวซ้ำซาก
- หากต้องการค้นหาจำนวนความล้มเหลวที่เกิดขึ้นคือระยะเวลาที่กำหนด
- เพื่อค้นหาสาเหตุหลักของความล้มเหลว
- ที่จะดำเนินการ การทดสอบประสิทธิภาพ ของโมดูลแอปพลิเคชันซอฟต์แวร์ต่างๆ หลังจากแก้ไขข้อบกพร่องแล้ว
หลังจากการเปิดตัวผลิตภัณฑ์เช่นกัน เราสามารถลดโอกาสที่จะเกิดข้อบกพร่องให้เหลือน้อยที่สุด และด้วยเหตุนี้จึงปรับปรุงความน่าเชื่อถือของซอฟต์แวร์ เครื่องมือบางอย่างที่มีประโยชน์สำหรับสิ่งนี้ ได้แก่ การวิเคราะห์แนวโน้ม มุมฉาก ข้อบกพร่อง การจำแนกประเภทและวิธีการที่เป็นทางการ ฯลฯ
ประเภทของการทดสอบความน่าเชื่อถือ
การทดสอบความน่าเชื่อถือของซอฟต์แวร์ประกอบด้วยการทดสอบคุณสมบัติ โหลดการทดสอบและ การทดสอบการถดถอย
การทดสอบคุณสมบัติ:-
การทดสอบพิเศษจะตรวจสอบคุณสมบัติที่ซอฟต์แวร์จัดทำไว้และดำเนินการตามขั้นตอนต่อไปนี้:
- การดำเนินการแต่ละอย่างในซอฟต์แวร์จะถูกดำเนินการอย่างน้อยหนึ่งครั้ง
- การโต้ตอบระหว่างสองการดำเนินการลดลง
- จะต้องมีการตรวจสอบการดำเนินการแต่ละอย่างเพื่อให้ดำเนินการได้อย่างถูกต้อง
การทดสอบโหลด:-
โดยปกติแล้วซอฟต์แวร์จะทำงานได้ดีขึ้นในช่วงเริ่มต้นของกระบวนการ และหลังจากนั้นก็จะเริ่มเสื่อมคุณภาพลง การทดสอบโหลดจะดำเนินการเพื่อตรวจสอบประสิทธิภาพของซอฟต์แวร์ภายใต้ปริมาณงานสูงสุด
การทดสอบการถดถอย:-
การทดสอบการถดถอยส่วนใหญ่จะใช้เพื่อตรวจสอบว่ามีการแนะนำข้อบกพร่องใหม่ ๆ หรือไม่เนื่องจากการแก้ไขข้อบกพร่องก่อนหน้านี้ การทดสอบการถดถอยจะดำเนินการหลังจากการเปลี่ยนแปลงหรืออัปเดตคุณสมบัติซอฟต์แวร์และฟังก์ชันการทำงานทุกครั้ง
วิธีการทดสอบความน่าเชื่อถือ
การทดสอบความน่าเชื่อถือมีค่าใช้จ่ายสูงเมื่อเทียบกับการทดสอบประเภทอื่นๆ ดังนั้นจึงจำเป็นต้องมีการวางแผนและการจัดการที่เหมาะสมขณะทำการทดสอบความน่าเชื่อถือ ซึ่งรวมถึงกระบวนการทดสอบที่จะนำไปใช้ ข้อมูลสำหรับสภาพแวดล้อมการทดสอบ ตารางการทดสอบ จุดทดสอบ ฯลฯ
ในการเริ่มการทดสอบความน่าเชื่อถือ ผู้ทดสอบจะต้องดำเนินการดังต่อไปนี้
- กำหนดเป้าหมายความน่าเชื่อถือ
- พัฒนาโปรไฟล์การดำเนินงาน
- วางแผนและดำเนินการทดสอบ
- ใช้ผลการทดสอบเพื่อขับเคลื่อนการตัดสินใจ
ดังที่เราได้กล่าวไว้ก่อนหน้านี้ มีสามประเภทที่เราสามารถทำการทดสอบความน่าเชื่อถือได้ การสร้างแบบจำลอง การวัด และการปรับปรุง.
พารามิเตอร์หลักที่เกี่ยวข้องกับการทดสอบความน่าเชื่อถือคือ:-
- ความน่าจะเป็นของการดำเนินงานที่ปราศจากความล้มเหลว
- ระยะเวลาของการดำเนินการโดยไม่มีข้อผิดพลาด
- สภาพแวดล้อมที่จะดำเนินการ
ขั้นตอนที่ 1) การสร้างแบบจำลอง
เทคนิคการสร้างแบบจำลองซอฟต์แวร์สามารถแบ่งออกเป็นสองประเภทย่อย:
1. การสร้างแบบจำลองการคาดการณ์
2. การสร้างแบบจำลองการประมาณค่า
- ผลลัพธ์ที่มีความหมายสามารถได้รับโดยการใช้แบบจำลองที่เหมาะสม
- การสันนิษฐานและนามธรรมสามารถสร้างขึ้นเพื่อทำให้ปัญหาง่ายขึ้น และไม่มีแบบจำลองใดที่เหมาะกับทุกสถานการณ์ ความแตกต่างที่สำคัญระหว่างทั้งสองรุ่นคือ:-
| ประเด็น | โมเดลการคาดการณ์ | แบบจำลองการประมาณค่า |
|---|---|---|
| การอ้างอิงข้อมูล | มันใช้ข้อมูลในอดีต | ใช้ข้อมูลปัจจุบันจากการพัฒนาซอฟต์แวร์ |
| เมื่อใช้ในวงจรการพัฒนา | โดยปกติจะถูกสร้างขึ้นก่อนขั้นตอนการพัฒนาหรือการทดสอบ | โดยปกติแล้วจะถูกนำมาใช้ในภายหลังในวงจรชีวิตการพัฒนาซอฟต์แวร์ |
| กรอบเวลา | จะทำนายความน่าเชื่อถือได้ในอนาคต | จะทำนายความน่าเชื่อถือทั้งในปัจจุบันหรือในอนาคต |
ขั้นตอนที่ 2) การวัด
ความน่าเชื่อถือของซอฟต์แวร์ไม่สามารถวัดได้โดยตรง ดังนั้นปัจจัยอื่นๆ ที่เกี่ยวข้องจึงถูกพิจารณาเพื่อประเมินความน่าเชื่อถือของซอฟต์แวร์ แนวปฏิบัติปัจจุบันของการวัดความน่าเชื่อถือของซอฟต์แวร์แบ่งออกเป็นสี่ประเภท:-
การวัดที่ 1: การวัดผลิตภัณฑ์
เมตริกผลิตภัณฑ์คือการรวมเมตริก 4 ประเภทเข้าด้วยกัน:
- ขนาดซอฟต์แวร์: – Line of Code (LOC) เป็นวิธีเริ่มต้นที่ใช้งานง่ายสำหรับการวัดขนาดของซอฟต์แวร์ เมตริกนี้นับเฉพาะซอร์สโค้ดเท่านั้น และความคิดเห็นและข้อความสั่งการอื่นๆ ที่ไม่สามารถดำเนินการได้จะไม่นับรวม
- ฟังก์ชั่นจุดเมตริก:- Function Pont Metric เป็นวิธีการวัดการทำงานของการพัฒนาซอฟต์แวร์ โดยจะพิจารณาจำนวนอินพุต เอาต์พุต ไฟล์หลัก ฯลฯ โดยจะวัดฟังก์ชันการทำงานที่ส่งมอบให้กับผู้ใช้ และไม่ขึ้นอยู่กับภาษาการเขียนโปรแกรม
- ความซับซ้อน เกี่ยวข้องโดยตรงกับความน่าเชื่อถือของซอฟต์แวร์ ดังนั้นการแสดงความซับซ้อนจึงมีความสำคัญ เมตริกที่เน้นความซับซ้อนจะกำหนดความซับซ้อนของโครงสร้างการควบคุมโปรแกรมโดยการลดความซับซ้อนของโค้ดให้แสดงในรูปแบบกราฟิก
- เมตริกความครอบคลุมการทดสอบ:- เป็นวิธีการประเมินข้อผิดพลาดและความน่าเชื่อถือโดยทำการทดสอบผลิตภัณฑ์ซอฟต์แวร์ให้เสร็จสิ้น ความน่าเชื่อถือของซอฟต์แวร์หมายความว่าเป็นหน้าที่ในการพิจารณาว่าระบบได้รับการตรวจสอบและทดสอบอย่างสมบูรณ์แล้ว
การวัดที่ 2: ตัวชี้วัดการจัดการโครงการ
- นักวิจัยได้ตระหนักว่าการจัดการที่ดีสามารถส่งผลให้ผลิตภัณฑ์ดีขึ้นได้
- การจัดการที่ดีสามารถบรรลุความน่าเชื่อถือที่สูงขึ้นได้โดยใช้การพัฒนา การบริหารความเสี่ยง และกระบวนการจัดการการกำหนดค่าที่ดีขึ้น
การวัด 3: การวัดกระบวนการ
คุณภาพของผลิตภัณฑ์เกี่ยวข้องโดยตรงกับกระบวนการ ตัวชี้วัดกระบวนการสามารถใช้เพื่อประมาณการ ติดตาม และปรับปรุงความน่าเชื่อถือและคุณภาพของซอฟต์แวร์
การวัดที่ 4: ตัวชี้วัดข้อผิดพลาดและความล้มเหลว
เมตริกความผิดพลาดและความล้มเหลวส่วนใหญ่ใช้เพื่อตรวจสอบว่าระบบปราศจากความผิดพลาดอย่างสมบูรณ์หรือไม่ ทั้งประเภทของความผิดพลาดที่พบระหว่างกระบวนการทดสอบ (กล่าวคือ ก่อนส่งมอบ) รวมถึงความผิดพลาดที่ผู้ใช้รายงานหลังจากส่งมอบ จะถูกรวบรวม สรุป และวิเคราะห์เพื่อบรรลุเป้าหมายนี้
ความน่าเชื่อถือของซอฟต์แวร์วัดกันในแง่ของ เวลาเฉลี่ยระหว่างความล้มเหลว (MTBF)- MTBF ประกอบด้วย
- Mean to failed (MTTF): คือความแตกต่างของเวลาระหว่างความล้มเหลวสองครั้งติดต่อกัน
- เวลาเฉลี่ยในการซ่อมแซม (MTTR): คือเวลาที่ต้องใช้ในการแก้ไขความล้มเหลว
MTBF = MTTF + MTTR
ความน่าเชื่อถือสำหรับซอฟต์แวร์ที่ดีนั้นอยู่ระหว่างตัวเลข 0 และ 1
ความน่าเชื่อถือเพิ่มขึ้นเมื่อมีการลบข้อผิดพลาดหรือจุดบกพร่องออกจากโปรแกรม
ขั้นตอนที่ 3) การปรับปรุง
การปรับปรุงขึ้นอยู่กับปัญหาที่เกิดขึ้นในแอปพลิเคชันหรือระบบ หรือคุณลักษณะของซอฟต์แวร์ โดยวิธีการปรับปรุงจะแตกต่างกันไปตามความซับซ้อนของโมดูลซอฟต์แวร์ ข้อจำกัดหลัก 2 ประการ คือ เวลาและงบประมาณจะจำกัดความพยายามในการปรับปรุงความน่าเชื่อถือของซอฟต์แวร์
ตัวอย่างวิธีการทดสอบความน่าเชื่อถือ
การทดสอบความน่าเชื่อถือเป็นการใช้แอปพลิเคชันเพื่อค้นพบและลบข้อผิดพลาดก่อนที่ระบบจะถูกใช้งาน
มีสามวิธีที่ใช้สำหรับการทดสอบความน่าเชื่อถือเป็นหลัก
- ทดสอบซ้ำความน่าเชื่อถือ
- ความน่าเชื่อถือของแบบฟอร์มคู่ขนาน
- ความสม่ำเสมอในการตัดสินใจ
ด้านล่างนี้เราพยายามอธิบายทั้งหมดนี้ด้วยตัวอย่าง
ทดสอบซ้ำความน่าเชื่อถือ
เพื่อประเมินความน่าเชื่อถือของการทดสอบซ้ำ ผู้เข้าสอบกลุ่มเดียวจะดำเนินการขั้นตอนการทดสอบห่างกันเพียงไม่กี่วันหรือสัปดาห์เท่านั้น เวลาควรสั้นพอที่จะประเมินทักษะของผู้เข้าสอบในพื้นที่ได้ ความสัมพันธ์ระหว่างคะแนนของผู้เข้าสอบจากฝ่ายบริหารที่แตกต่างกันสองฝ่ายประเมินผ่านความสัมพันธ์ทางสถิติ ความน่าเชื่อถือประเภทนี้แสดงให้เห็นถึงขอบเขตที่การทดสอบสามารถสร้างคะแนนที่คงที่และสม่ำเสมอตลอดเวลา
ความน่าเชื่อถือของแบบฟอร์มคู่ขนาน
ข้อสอบหลายชุดมีข้อสอบหลายรูปแบบ ซึ่งข้อสอบแบบคู่ขนานเหล่านี้ให้ความปลอดภัย ความน่าเชื่อถือของข้อสอบแบบคู่ขนานนั้นประเมินโดยให้ผู้เข้าสอบกลุ่มเดียวกันทำข้อสอบทั้งสองชุด คะแนนของผู้เข้าสอบจากข้อสอบทั้งสองชุดจะสัมพันธ์กันเพื่อพิจารณาว่าข้อสอบทั้งสองชุดทำงานคล้ายกันมากเพียงใด การประมาณความน่าเชื่อถือนี้เป็นการวัดว่าผู้เข้าสอบจะคาดหวังคะแนนที่สม่ำเสมอกันแค่ไหนในข้อสอบแต่ละชุด
ความสม่ำเสมอในการตัดสินใจ
หลังจากทำ Test-Retest Reliability และ Parallel Form Reliability แล้ว เราจะได้ผลลัพธ์ว่าผู้สอบผ่านหรือไม่ผ่าน ความน่าเชื่อถือของการตัดสินใจจำแนกประเภทนี้ประเมินจากความน่าเชื่อถือในความสม่ำเสมอในการตัดสินใจ
ความสำคัญของการทดสอบความน่าเชื่อถือ
จำเป็นต้องมีการประเมินความน่าเชื่อถืออย่างละเอียดเพื่อปรับปรุงประสิทธิภาพของผลิตภัณฑ์ซอฟต์แวร์และกระบวนการ การทดสอบความน่าเชื่อถือของซอฟต์แวร์จะช่วยผู้จัดการและผู้ปฏิบัติงานซอฟต์แวร์ในระดับที่ดี
วิธีตรวจสอบความน่าเชื่อถือของซอฟต์แวร์ผ่านการทดสอบ:-
- กรณีทดสอบจำนวนมากควรได้รับการดำเนินการเป็นระยะเวลานานเพื่อกำหนดระยะเวลาที่ซอฟต์แวร์จะดำเนินการโดยไม่มีความล้มเหลว
- การกระจายกรณีทดสอบควรตรงกับโปรไฟล์การทำงานจริงหรือที่วางแผนไว้ของซอฟต์แวร์ ยิ่งมีการดำเนินการฟังก์ชันของซอฟต์แวร์บ่อยเท่าใด เปอร์เซ็นต์ของกรณีทดสอบที่ควรจัดสรรให้กับฟังก์ชันหรือชุดย่อยนั้นจะยิ่งมากขึ้นเท่านั้น
เครื่องมือทดสอบความน่าเชื่อถือ
บางส่วนของ เครื่องมือทดสอบความน่าเชื่อถือ ใช้สำหรับความน่าเชื่อถือของซอฟต์แวร์คือ:
1. WEIBULL++:- ชีวิตที่เชื่อถือได้ การวิเคราะห์ข้อมูล
2. RGA: - การวิเคราะห์การเติบโตของความน่าเชื่อถือ
3. RCM: - การบำรุงรักษาที่เน้นความน่าเชื่อถือ
สรุป
การทดสอบความน่าเชื่อถือเป็นส่วนสำคัญของโปรแกรมวิศวกรรมความน่าเชื่อถือ ที่ถูกต้องคือจิตวิญญาณของโปรแกรมวิศวกรรมความน่าเชื่อถือ นอกจากนี้ การทดสอบความน่าเชื่อถือได้รับการออกแบบมาเป็นหลักเพื่อค้นหาโหมดความล้มเหลวเฉพาะและปัญหาอื่นๆ ในระหว่างการทดสอบซอฟต์แวร์
In วิศวกรรมซอฟต์แวร์, การทดสอบความน่าเชื่อถือสามารถแบ่งได้เป็น 3 ส่วน คือ
- การสร้างแบบจำลอง
- การวัด
- การปรับปรุง
ปัจจัยที่มีอิทธิพลต่อความน่าเชื่อถือของซอฟต์แวร์
- จำนวนข้อบกพร่องที่มีอยู่ในซอฟต์แวร์
- วิธีที่ผู้ใช้ใช้งานระบบ



