Khi tìm hiểu khái niệm Test Metrics chắc chắn bạn sẽ không thể không biết đến câu nói này "Bạn sẽ không thể kiểm soát được những cái bạn không đo".
1. Test metrics?
1.1. Phân biệt Metrics và Measure
Nhắc đến Metrics chúng ta sẽ phải phân biệt được Metrics và Measure
Measure là một nhóm, số lượng các thuộc tính nào đó,ví dụ số lượng lỗi tìm được. Measure chỉ cho chúng ta biết về con số, quy trình mà chúng ta đếm được thôi, không có sự phân tích nào dựa vào con số này.
Ví dụ: Dự án A có 100 lỗi,dự án B có 300 lỗi. Thông qua con số đo đạc này chúng ta có thể kết luận dự án B không đảm bảo chất lượng bằng dự án A hay dự án B coder kém hơn dự án B không? Điều này chưa khẳng định được vì chúng còn còn chưa biết đặc thù của từng dự án ra sao, scope của từng dự án là thế nào.
Metrics là một Measurement scale là một phương pháp chúng ta có sử dụng cộng trừ nhân chia và phân tích được dựa vào con số đó
Ví dụ: Dự án A có mật độ lỗi 10 bug/ 1000 dòng code, dự án B có mật độ lỗi 6 bug/ 1000 dòng code. Như vậy chúng ta nhận xét được dự án A nhiều lỗi hơn dự án B và không đảm bảo chất lượng bằng dự án B
1.2. Mục đích của việc đo đạc - Measurements
- Phân tích, phát hiện các nguyên nhân gây ra lỗi chủ yếu trong phần mềm thông qua kết quả test từ đó rút kinh nghiệm và khoang vùng lỗi
- Báo cáo kết quả với các bên liên quan về tình hình dự án
- Kiểm soát hoạt động test, kiểm soát tiến độ test, xác định mức độ thành công dự án từ đó đưa ra các action điều chỉnh hợp lý
1.3 Các nhóm Metrics thực hiện trong dự án
Thường được chia làm 4 nhóm Metrics chính SCOPE - COST- TIME - QUALITY. Và người ta thường gọi nó là tam giác Metrics bởi vì mỗi góc của nó thường ảnh hưởng đến nhau. Ví dụ phạm vi tăng lên mà thời gian với chi phí không tăng thì chất lượng sẽ không đạt được.
SCOPE: Về mặt phạm vi chúng ta sẽ đo trên size, goals, requirement của dự án
COST: Đo trên khoảng thời gian các task công việc, các ràng buộc
TIME: Chi phí về nhân lực, con người, về thiết bị, về bản quyền
QUALITY: Đo trên lỗi hoặc cảm tính, cảm giác
Về Tester thì sẽ chia thành 5 nhóm Metrics chi tiết hơn
- Objective - đo một cách khách quan thông qua số liệu thống kê hay các bản report.
- Subjective - đo một cách chủ quan thông qua survey cái này chủ yếu là do cảm tính, cảm giác phụ thuộc vào con người nên độ chính xác cũng như tin cậy không cao bằng Objective
2. Measurement process
Defining | Tracking | Report | Validity |
---|---|---|---|
Objective | Use tool | Visible | Verify |
Goals | Subjective analyses | Understand | Review |
Quy trình đo đạc thường trải qua 4 bước:
Defining: Xác định mục tiêu, goals và công thức để đo, các tool để đo và hướng dẫn sử dụng tool
Tracking: Theo dõi việc đo đạc bằng cách sử dụng tool và đo đạc bằng cách chủ quan ví dụ như yêu cầu tất cả mọi người phải làm report
Report: Sau khi đo đạc xong chúng ta cần làm báo cáo dựa trên số liệu thống kê. Và báo các yêu cầu rõ ràng, dễ hiểu có thể sử dụng biểu đồ để biểu diễn
Validity: Cuối cùng là chúng ta kiểm tra lại báo cáo, kiểm tra độ chính xác của báo cáo cũng như các số liệu thông qua việc đo đạc
3. Metric type
Project Metrics | Product Metrics | Process Metrics | People Metrics | |
---|---|---|---|---|
Mục đích | Hướng đến đo đạc tiến độ, hướng đến tiêu trí kết thúc để đánh giá kết thúc test là gì | Đo đạc thuộc tính sản phẩm để đánh giá chất lượng sản phẩm | Đo đạc khả năng quy trình test, đo ở cuối dự án nhằm đưa ra chỉ số của dự án ở giai đoạn cuối, giúp chúng ta cải tiến quy trình cho dự á trong tương lai | Đo đạc về con người ví dụ năng xuất và chất lượng. Và cần cân nhắc khi đo đạc theo Metrics này vì liên quan đến con người thì rất nhạy cảm |
Ví dụ | Phần trăm test case Pass/ Fail | Độ bao phủ, mật độ lỗi | Tỷ lệ các chỉ số lỗi đã được test | Năng suất, chất lượng từng người |
Tài liệu tham khảo: ISTQB foundation