Test  Viewpoint
Menu
  • Home
  • Basic Knowledge
  • Manual Testing
  • Test Automation
  • Blog
  • About Me
  • Contact
Menu
Risk-based Testing Phần 3 - Các Kỹ Thuật Testing Dựa Vào Rủi Ro, Mô Hình FMEA

Phần 3 – Các Kỹ Thuật Kiểm Thử Dựa Vào Rủi Ro, Mô Hình FMEA

Posted on July 4, 2023June 23, 2023 by Test Viewpoint

Các Kỹ Thuật Kiểm Thử Dựa Vào Rủi Ro

Trong kiểm thử dựa vào rủi ro, có một số kỹ thuật và phương pháp được sử dụng để thực hiện quá trình này. Dưới đây là một số kỹ thuật phổ biến trong kiểm thử dựa vào rủi ro:

  • Mô hình hóa rủi ro: Sử dụng các phương pháp mô hình hóa để định lượng và đánh giá các rủi ro tiềm năng. Các mô hình như FMEA (Failure Mode and Effects Analysis) và HAZOP (Hazard and Operability Study) được sử dụng để xác định các yếu tố rủi ro và ảnh hưởng của chúng.
  • Đánh giá ưu tiên rủi ro: Sử dụng các phương pháp như ma trận đánh giá rủi ro (Risk Assessment Matrix) để xác định mức độ ưu tiên của các rủi ro. Đánh giá dựa trên hai yếu tố: xác suất xảy ra và mức độ nghiêm trọng của rủi ro.
  • Thiết kế kiểm thử dựa vào rủi ro: Từ các thông tin về rủi ro, thiết kế các ca kiểm thử tập trung vào những phần quan trọng và những kịch bản có khả năng gây ra các rủi ro cao. Điều này đảm bảo rằng nguồn lực kiểm thử được tập trung vào các phần quan trọng nhất của hệ thống.
  • Kiểm thử mức độ rủi ro cao – High-risk testing: Tập trung vào các kịch bản kiểm thử có khả năng gây ra những rủi ro có tác động lớn và có xác suất xảy ra cao. Điều này đảm bảo rằng các rủi ro quan trọng được kiểm tra kỹ càng và được giải quyết sớm.
  • Kiểm thử thăm dò – Exploratory testing: Sử dụng kỹ thuật kiểm thử thăm dò để tìm kiếm các lỗ hổng và rủi ro tiềm ẩn mà không phụ thuộc vào kịch bản kiểm thử trước đó. Điều này giúp phát hiện các rủi ro không được biết trước và kiểm tra tính ổn định và sự linh hoạt của hệ thống.
  • Kiểm thử tốc độ cao – High-speed testing: Sử dụng kỹ thuật kiểm thử tốc độ cao để kiểm tra hệ thống với một trọng tải công việc lớn hoặc một khối lượng dữ liệu lớn. Điều này giúp xác định các rủi ro có liên quan đến độ chịu tải cao và hiệu năng hệ thống.
  • Kiểm thử độ bền vững – Endurance testing: Kiểm tra khả năng của hệ thống trong việc chịu đựng các tình huống tải công việc liên tục trong một khoảng thời gian dài. Điều này giúp xác định các rủi ro liên quan đến hiệu suất dài hạn và mức độ ổn định của hệ thống.

Các kỹ thuật và phương pháp trên đều nhằm tối ưu hóa việc kiểm thử bằng cách tập trung vào những rủi ro quan trọng và tối đa hóa hiệu quả của quá trình kiểm thử. Tuy nhiên, lựa chọn kỹ thuật cụ thể phụ thuộc vào tính chất và yêu cầu của dự án kiểm thử.

Mô Hình FMEA (Failure Mode and Effects Analysis)

Mô hình FMEA (Failure Mode and Effects Analysis) là một phương pháp phân tích rủi ro được sử dụng để xác định, đánh giá và giảm thiểu các lỗi tiềm ẩn hoặc lỗi có thể xảy ra trong một quy trình, sản phẩm hoặc hệ thống. Nó được sử dụng rộng rãi trong các lĩnh vực như công nghiệp, y tế, ô tô, hàng không vũ trụ và phần mềm.

Việc sử dụng thành công FMEA yêu cầu sử dụng dữ liệu và thông tin chi tiết thu được từ kinh nghiệm trong quá khứ với các sản phẩm và hệ thống tương tự. Mục tiêu là để xác định rủi ro và ảnh hưởng của chúng. Rủi ro được định nghĩa là các khiếm khuyết hoặc lỗi tiềm ẩn hoặc thực tế trong một hệ thống. Ảnh hưởng của chúng mô tả cách rủi ro sẽ tác động đến khách hàng hoặc người dùng cuối.

Có bốn bước trong FMEA:

  • F- Failure: Xác định các rủi ro tiềm ẩn
  • M – Mode: Xác định mức độ nghiêm trọng tiềm tàng và hậu quả của chúng bằng cách mô hình hóa chúng
  • Effect: Dự đoán ảnh hưởng của rủi ro khi xảy ra
  • Analysis: Phân tích rủi ro và xây dựng hệ thống kiểm soát rủi ro

Định lượng rủi ro trong mô hình FMEA

Việc định lượng rủi ro trong mô hình FMEA dựa vào 3 yếu tố: Mức độ nghiêm trọng, Khả năng xảy ra và Khả năng phát hiện rủi ro.

  • Mức độ nghiêm trọng: Mức độ nghiêm trọng của mỗi mode lỗi được đánh giá để đo lường tác động của lỗi đó đối với sản phẩm, dịch vụ hoặc quy trình.
  • Xác suất xảy ra: Xác suất xảy ra của mỗi mode lỗi được đánh giá để xác định tần suất lỗi có thể xảy ra trong quy trình, sản phẩm hoặc hệ thống.
  • Khả năng phát hiện rủi ro: Khả năng phát hiện của quy trình kiểm soát hiện tại để phát hiện và ngăn chặn lỗi được đánh giá.

Mức độ nghiêm trọng

Mô tảPhân loạiThang điểm
Lỗi gây ra hậu quả rất nhỏ, không ảnh hưởng đáng kể đến hiệu suất hoặc chức năng của hệ thống và không có nguy cơ quan trọng. Nó không ảnh hưởng đến tính ổn định hoặc sự sử dụng của sản phẩm và có thể được chấp nhận mà không yêu cầu sự can thiệp hay khắc phục.Rất thấp – Very Low1
Lỗi gây ra hậu quả nhỏ, không ảnh hưởng lớn đến hiệu suất hoặc chức năng của hệ thống và không có nguy cơ đáng kể. Sự cố này không gây ra sự không ổn định hoặc nguy cơ lớn cho hệ thống và có thể được chấp nhận trong một số trường hợp.Thấp – Low2
Lỗi gây ra hậu quả trung bình, có thể gây ảnh hưởng đáng kể đến hiệu suất hoặc chức năng của hệ thống, nhưng không gây nguy hiểm đáng kể. Mức độ này có thể gây ra một số vấn đề liên quan đến tính ổn định hoặc sự sử dụng của sản phẩm, nhưng không gây ra tác động nghiêm trọng.Trung bình – Moderate3
Lỗi gây ra hậu quả nghiêm trọng, ảnh hưởng đáng kể đến hiệu suất hoặc chức năng của hệ thống. Mức độ này có thể làm suy giảm tính ổn định hoặc sự sử dụng của sản phẩm, và cần được khắc phục hoặc xử lý để đảm bảo tính chất chính xác và đáng tin cậy của hệ thống.Nghiêm trọng – Severe4
Lỗi gây ra hậu quả rất nghiêm trọng, ảnh hưởng đến tính ổn định và sự sử dụng của hệ thống. Mức độ này có thể gây thiệt hại lớn cho dự án và không thể chấp nhận được trong quá trình sử dụng sản phẩm. Yêu cầu khắc phục ngay lập tức để đảm bảo tính an toàn và tính hoạt động của hệ thống.Rất nghiêm trọng – Very Severe5
Bảng: Phân loại mức độ nghiêm trọng của rủi ro

Xác suất xảy ra

Mô tảPhân loạiThang điểm
Lỗi xảy ra rất hiếm khi, chỉ xảy ra trong các trường hợp hoặc điều kiện rất đặc biệtRất thấp – Very Low1
Lỗi xảy ra hiếm khi, chỉ xảy ra trong một số trường hợp hoặc điều kiện đặc biệtThấp – Low2
Lỗi xảy ra đôi khi, có khả năng xảy ra trong một số trường hợp hoặc điều kiệnTrung bình – Moderate3
Lỗi xảy ra khá thường xuyên, có khả năng xảy ra trong nhiều trường hợp hoặc điều kiệnCao – High4
Lỗi xảy ra rất thường xuyên, có khả năng xảy ra trong hầu hết các trường hợp hoặc điều kiệnRất cao – Very High5
Bảng: Phân loại xác suất xảy ra rủi ro

Khả năng phát hiện lỗi

Mô tảPhân loạiThang điểm
Khả năng phát hiện lỗi rất thấp hoặc không tồn tại hệ thống phát hiện lỗiRất thấp – Very Low1
Khả năng phát hiện lỗi thấp, có thể cần sự can thiệp hoặc công cụ đặc biệt để phát hiệnThấp – Low2
Khả năng phát hiện lỗi trung bình, có sự phát hiện tự động hoặc công cụ giúp phát hiệnTrung bình – Moderate3
Khả năng phát hiện lỗi cao, có các phương pháp phát hiện đáng tin cậy và sẵn cóCao – High4
Khả năng phát hiện lỗi rất cao, có các phương pháp phát hiện chính xác và hiệu quảRất cao – Very High5
Bảng: Phân loại khả năng phát hiện lỗi của rủi ro

Công thức tính RPN (Risk Priority Number – Mức độ ưu tiên của rủi ro)

Trong đó S = Severify (mức độ nghiêm trọng), P = Probability (xác suất xảy ra), L = Likelihood (khả năng phát hiện)

RPN = S*P*L

#Yêu cầuLỗi có thể xảy ra của yêu cầuMức độ nghiêm trọngXác suất xảy raKhả năng xảy ra lỗiMức độ ưu tiên rủi ro – RPN
1Máy ‘Add Value Machine – AVM’ hoạt động 24/7Sự cố nguồn UPS làm AVM không hoạt độngNghiêm trọng – 4Thấp – 2Rất thấp – 18
2AVM có thể đọc được thẻ thông minh và hiển thị số dư tiền bằng VNĐBug SW về thông tin đã nạp tiền không được tínhRất nghiêm trọng – 5Cao – 4Thấp – 240
3AVM chấp nhận thanh quán bằng: Tiền mặt (10/20/50/100/200/500 nghìn VNĐ), Thẻ tín dụng, Thẻ ghi nợ, Ngân hàng trực truyếnSử dụng Soil Notes chưa được ghi nhận trên AVMThấp – 2Thấp – 2Rất thấp – 14
4AVM in được biên lai thanh toán tiền để nạp thẻ thông minhHết giấy máy inVừa – 2Cao – 4Rất thấp – 18
5AVM luôn được kết nối với Fare Collection SystemLỗi Network (không có tính năng kết nối wifi)Rất nghiêm trọng – 5Trung bình – 3Thấp – 230
Bảng: Tính mức độ ưu tiên rủi ro – RPN trong mô hình FMEA

Theo kết quả tính toán trên, yêu cầu số 2 và 5 được xếp hạng 1 và 2, nên sẽ là những “yêu cầu rủi ro cao”. Testcase cho chúng nên bao gồm cả positive case và negative case, đảm bảo không xảy ra lỗi ở các giai đoạn Unit, Integration và System test. Các tính năng này nên được kiểm tra nghiêm ngặt. Yêu cầu số 3 có rủi ro thấp nhất, do đó chỉ cần kiểm thử bước đầu cho chức năng và phi chức năng là đủ.

Trong kiểm thử dựa vào rủi ro, RPN sẽ là căn cứ để lập chiến lược kiểm thử. RPN càng cao, nỗ lực cần thiết để lập kế hoạch thử nghiệm và quản lý các nhiệm vụ càng cao. Trong đó:

  • RPN nằm trong khoảng 1-5: Không cần nỗ lực nhiều để thử nghiệm, chỉ cần thực hiện một vài smoke test và report. Tuy nhiên, có thể cần phải đánh giá lại RPN nếu bạn tìm thấy bất kỳ lỗi nào trong smoke test.
  • RPN nằm trong khoảng từ 6-10: Hãy thực hiện một loại thử nghiệm bao gồm tất cả các chức năng cơ bản và tùy thuộc vào kết quả để quyết định cần phải đánh giá lại RPN hay không.
  • RPN nằm trong khoảng 11-30: Thực hiện balanced testing bao gồm tất cả các chức năng chính của yêu cầu.

Hi vọng bài viết hôm nay đem lại phần nào hữu ích cho các bạn. Hẹn gặp lại các bạn ở phần cuối loạt bài về Risk-based testing để cùng tìm hiểu về Kỹ thuật test thông qua Ma trận đánh giá rủi ro – Risk Assessment Matrix

Happy Testing!

Related

Category: Basic KnowledgeManual Testing

Archives

  • June 2025
  • May 2025
  • April 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023

Categories

  • Basic Knowledge
  • Manual Testing
  • Test Automation

About Me

Xin chào các bạn. Mình là một kỹ sư kiểm thử phần mềm. Ngành công nghệ thông tin nói chung và công việc kiểm thử phần mềm nói riêng luôn luôn đổi mới đòi hỏi phải học hỏi mỗi ngày. Với mình chia sẻ những gì học được là cách tốt nhất để mình học những điều mới. Hãy cùng mình tìm hiểu thông qua blog này nhé!

Newsletter

Nhận thông báo về bài viết mới nhất qua email

Popular Posts

About Me

Xin chào các bạn. Mình là một kỹ sư kiểm thử phần mềm. Ngành công nghệ thông tin nói chung và công việc kiểm thử phần mềm nói riêng luôn luôn đổi mới đòi hỏi phải học hỏi mỗi ngày. Với mình chia sẻ những gì học được là cách tốt nhất để mình học những điều mới. Hãy cùng mình tìm hiểu thông qua blog này nhé!

  • Facebook
  • Instagram
  • YouTube

Recent Posts

Newsletter

Nhận thông báo về bài viết mới nhất qua email

©2025 Test Viewpoint