Các kỹ thuật ước lượng thời gian cho kiểm thử phần mềm

Đối với một dự án thì kế hoạch hay còn gọi là Plan là một phần rất quan trọng. Lập plan là sử dụng nguồn lực có sẵn để dự đoán thời gian hoàn thành kết thúc dự án. Nếu dữ liệu để lên Plan càng chính xác, cụ thể thì việc quản lý chất lượng của dự án sẽ được đảm bảo.

Thời gian kiểm thử là một phần thiết yếu của kế hoạch dự án. Nếu thời gian kiểm thử ước lượng sai thì dẫn đến việc bàn giao sản phẩm muộn từ đó cũng làm giảm chất lượng, khả năng cạnh tranh và uy tín đối với khách hàng, mất danh tiếng của công ty.

Vậy làm thế nào để ước lượng thời gian kiểm thử đúng cách. Có một cách để tiếp cận có thể sử dụng cho bất kỳ dự án nào không? Bài viết này Anh Tester sẽ đưa ra cho bạn các kỹ thuật ước lượng thời gian kiểm thử. Mình hi vọng nó sẽ giúp bạn ước lượng thời gian thực tế cho một dự án.

1. Kỹ thuật Delphi

Kỹ thuật Delphi là bao gồm việc khảo sát từ các chuyên gia để có được một ước tính cuối cùng về time-effort để làm xong 1 task. Mỗi thành viên trong team được gán một task để ước tính và thu thập thông tin trong nhiều vòng. Vào cuối mỗi vòng, các feedback thu được được phân tích để đưa ra kết luận về thời gian thực hiện task.

Kỹ thuật Delphi - Các kỹ thuật ước lượng thời gian cho kiểm thử phần mềm | Anh Tester


2. Phương thức Functional Point

Kỹ thuật này ngược với kỹ thuật Delphi, cụ thể là chúng ta sẽ thực hiện phân tích theo từng task theo từng functional points. Trong phương pháp này chúng ta sẽ gắn mỗi functional points là 1 trọng số từ đơn giản đến phức tạp cụ thể từ (1) đến (5) chẳng hạn. Sau đó, chúng ta sẽ nhân số lượng functional points trong mỗi danh mục với trọng số danh mục và cộng tổng số. Tổng các functional point sau đó được theo quy tắc 2 person-hours cho mỗi functional point để đạt được ước tính thời gian cuối cùng cho toàn bộ dự án. Ví dụ:

  Weighting Functional points Total
Complex 5 5 25
Medium 3 10 30
Simple 1 3 3
    Total FP 58
    Estimated Person-hours/FP 2.0
    Total Person-hours 116 hours


3. Cấu trúc phân chia công việc (Work Breakdown Structure)

Cụ thể ở kỹ thuật này là chia nhỏ các task cho các thành viên trong team. Kỹ thuật này không chỉ cải thiện ngân sách và giúp tạo ra một plan chặt chẽ, mà còn thúc đẩy ý thức trách nhiệm và cam kết giữa các thành viên trong team dự án, vì mỗi người chia sẻ trách nhiệm hoàn thành một nhiệm vụ cụ thể.

Các kỹ thuật ước lượng thời gian cho kiểm thử phần mềm | Anh Tester


4. Ước tính ba điểm (Three-Point Estimation)

Kỹ thuật Three-Point Estimation được xem như là bổ sung cho kỹ thuật work breakdown structure. Sau khi dự án được chia thành các task nhỏ, mỗi task được đưa ra ba loại ước tính thời gian:

  • Optimistic estimate (A) - đây là các ước lượng thời gian tốt nhất, tất cả các điều kiện được yêu cầu được thực hiện.
  • Pessimistic estimate (B) - ước lượng thời gian khó khăn đối với 1 task, estimate khá mơ hồ, thời gian estimate nhiều một cách bất thường. 1 kịch bản nơi mà định luật của Murphy đã được chứng minh.
  • Realistic estimate (R) - thời gian khả thi nhất của các dự án trong điều kiện bình thường.
Three-Point Estimation - Các kỹ thuật ước lượng thời gian cho kiểm thử phần mềm | Anh Tester


Để tìm giá trị cho ước tính thời gian (E) của dự án, chỉ cần sử dụng công thức sau:

E = (A + 4xR + B) / 6


5. Lập kế hoạch Xì phé (Planning Poker)

Để ước lượng thời gian cần thiết để thực hiện các task riêng lẻ, viết ra từng task trên một tờ giấy riêng, phân phát cho các thành viên trong team dự án và thực hiện một cuộc thảo luận. Sau vòng thảo luận đầu tiên, mỗi bản sẽ được đánh số thẻ mà đại diện cho ước tính của người ấy về những công việc liên quan đến câu chuyện đang thảo luận.

Tất cả các ước tính được giữ kín cho đến khi mỗi người tham gia đã chọn 1 thẻ. Thời điểm đó, tất cả các ước tính đều được tiết lộ và cuộc thảo luận có thể bắt đầu trở lại. Bạn có thể sử dụng công cụ này để thực hiện ước tính: https://www.planningpoker.com/ 

Planning poker - Lập kế hoạch chơi poker


Hi vọng những kỹ thuật trên sẽ giúp ích cho bạn khi ước lượng thời gian cho kiểm thử phần mềm.


Tài liệu tham khảo

https://reqtest.com/testing-blog/how-to-estimate-time-for-testing/

About the author

  • Anh Tester

    Đường dẫu khó chân vẫn cần bước đi
    Đời dẫu khổ tâm vẫn cần nghĩ thấu