1. Ước tính thời gian trong kiểm thử là gì?
Nói đến ước tính (Estimate), chúng ta có rất nhiều công việc liên quan đến nó, chẳng hạn như nguồn lực, thời gian, chi phí… Nhưng trong bài viết hôm nay mình muốn làm nổi bật và hiểu rõ về ước tính thời gian (Times Estimation) trong testing.
Ước tính thời gian là ước tính xem sẽ mất bao lâu để hoàn thành một nhiệm vụ. Đây là một trong những hoạt động quan trọng trong việc quản lý hoạt động kiểm thử.
Chúng ta đã quá quen thuộc với từ deadline, làm thế nào để loại bỏ nỗi sợ hãi về từ này? Thời hạn không nhất thiết do khách hàng hay sếp đặt ra mà chúng ta có thể tự đặt ra, nhưng tại sao vẫn bị quá hạn?
Tất nhiên, chưa kể đến những rủi ro có thể xảy ra, nguyên nhân chính là ước tính của chúng tôi không hợp lý. Đối với QA/Tester, chúng ta cần ước tính những gì:
- Xác định thời gian để hoàn thành các test case viết chức năng/nhiệm vụ Xác định thời gian để hoàn thành kiểm tra chức năng/nhiệm vụ (bao gồm thực hiện các trường hợp kiểm thử và lỗi ghi nhật ký)
- Xác định thời gian hoàn thành báo cáo kiểm tra…
2. Mô tả phương pháp ước lượng
Bước 1: Xác định phạm vi và độ khó của nhiệm vụ Ước tính thời gian hợp lý nhất nên ở đầu mỗi sprint (đối với các dự án cơ sở theo mô hình Scrum) hoặc trong các cuộc họp lập kế hoạch để cả nhóm thử nghiệm và nhóm phát triển có thể ước tính sẽ mất bao lâu để hoàn thành nhiệm vụ.
Từ đó ước tính toàn bộ dự án hay nói cách khác là xác định thời điểm phát hành/kết thúc sprint. Cần đánh giá độ khó của nhiệm vụ để biết cách ước lượng phù hợp.
Bước 2: Chia nhiệm vụ thành các nhiệm vụ con để ước tính dễ dàng và chính xác hơn, và cho phép các thành viên phân công nhiệm vụ cho nhau
Bước 3: Phân công nhiệm vụ cho các thành viên hoặc để các thành viên tự nhận nhiệm vụ. Sau đó ước tính.
Bước 4: Tính tổng ước lượng cho từng công việc và đánh giá lại để có ước tính hợp lý
Chú ý:
Người nào làm người đó chủ động estimate vì kỹ năng của mỗi người khác nhau nên thời gian cần để hoàn thành task cũng khác nhau. Ví dụ một QA senior sẽ test nhanh hơn một QA junior
Sau khi estimate xong nên xem lại toàn bộ con số estimate để cân đối cho hợp lý
Nên xem xét một số rủi ro có thể sảy ra trong dự án ảnh hưởng đến hoạt động test : những ngày nghỉ của công ty trong sprint, một số member nghỉ đột xuất do ốm/ công việc cá nhân, có vấn đề gấp cần chờ khách hàng confirm, sự delay từ dev
3. Một số cách ước tính hiệu quả
Cách 1: Thông thường trong các hoạt động phát triển phần mềm, không phải tính năng nào cũng yêu cầu ước tính cụ thể/chi tiết. Chúng ta có thể ước tính một số function từ đó có thể ước tính các function khác.
Cách 2: Đưa ra ước tính hợp lý dựa trên những nhiệm vụ tương tự bạn đã thực hiện. Hoặc bạn có thể sử dụng công thức trung bình trong đó người kiểm tra có thể viết 60-70 TCs/8 giờ nhưng chỉ thực hiện 30-40 TCs.
Tùy thuộc vào hệ thống hoặc tính năng đơn giản/phức tạp hơn mà chúng ta có thể đưa ra con số hợp lý. Để ước tính số lượng TCs, bạn có thể sử dụng các kỹ thuật test design technique để phác thảo số lượng TCs có thể có.
Cách 3: Bạn có thể nhờ chuyên gia ước tính có kinh nghiệm hơn đưa ra ước tính hợp lý và có độ chính xác cao cho bạn.
4. Các kỹ thuật để ước tính
- Cấu trúc Work Break Down
- Kỹ thuật 3-Point
- Kỹ thuật Wideband Delphi
- Phân tích Function Point/Testing Point
- Phương pháp Use – Case Point
- Phân chia theo tỷ lệ phần trăm
- Phương pháp Ad-hoc
Nguồn: https://www.guru99.com/an-expert-view-on-test-estimation.html