Ước tính Linh hoạt

Agipedia

Ước tính linh hoạt với planning poker

Planning Poker là một kĩ thuật rất hiệu quả được sử dụng phổ biến để thực hiện ước tính trong Agile, bạn có thể tìm hiểu về bộ poker (bộ bài) này tại đây: Planning Poker.

Khi đã biết về bộ poker này và nhóm của bạn có nhu cầu sử dụng nó cho công việc ước tính các hạng mục Product Backlog, Sprint Backlog trong Scrum? Xin mời thực hiện theo hướng dẫn dưới đây.

Bạn thực hiện ước tính cho hạng mục Product Backlog hoặc hạng mục Sprint Backlog theo các bước sau:

  • Bước 1: Nhóm xác định các hạng mục sẽ được ước lượng.
  • Bước 2: Chọn một hạng mục.
  • Bước 3: Mỗi thành viên sẽ tự xác định điểm (point) tương ứng với nỗ lực mà nhóm cần bỏ ra để hoàn thành hạng mục đó bằng cách chọn một cây poker (quân bài) có số tương ứng. Úp cây poker đã chọn xuống trước mặt.
  • Bước 4: Tất cả thành viên cùng lật cây poker mình đã chọn lên.
  • Bước 5: Nếu cả nhóm cùng chọn một cây poker (cùng số điểm) thì việc ước lượng cho hạng mục đó đã xong. Ghi lại số điểm của hạng mục đó.
  • Bước 6: Nếu có sự khác biệt thì các thành viên lý giải lựa chọn của mình. Thông thường thì chỉ người đưa ra ước lượng thấp nhất và cao nhất cần giải thích lựa chọn của mình. Chú ý nên giới hạn thời gian trình bày là 1 phút cho mỗi người. Sau đó mọi người thực hiện lại Bước 2 cho tới khi hết các hạng mục cần ước tính.

pragmatic-scrum-egd-ftLưu ý: Mỗi hạng mục chỉ nên giới hạn ước lượng trong 3 lần. Tới lần thứ 3 nếu chưa đạt được sự đồng thuận nhóm nên lấy theo số đông hoặc chọn cơ chế khác để không tốn quá nhiều thời gian. Giá trị ở đây là sự trao đổi chứ không phải các con số. Khi cần nhóm có thể mời thêm chuyên gia tham dự cùng để hỏi ý kiến khi không đạt được sự đồng thuận. Hãy nhớ, các con số đó chỉ là ƯỚC LƯỢNG mà thôi.

Cách ước lượng này giúp cho mọi thành viên trong nhóm đưa ra ý kiến một cách độc lập và từ đó họ sẽ giúp nhau tìm ra một cách hiểu đúng về hạng mục sẽ phải làm.

(Trích sách Cẩm nang Scrum cho người mới bắt đầu)

Planning Poker

planning-pokerPlanning Poker là một kĩ thuật rất hiệu quả được sử dụng phổ biến để thực hiện ước tính trong Agile. Planning Poker kết hợp cả ba cách thức ước tính là dựa trên ý kiến chuyên gia, so sánh tương đối và chia nhỏ các hạng mục. Việc ước tính sử dụng Planning Poker khá nhanh chóng và mang lại kết quả đáng tin cậy. Nhóm Scrum có thể sử dụng Planning Poker để ước tính các hạng mục Product Backlog (Agile Estimation – Ước tính linh hoạt) hoặc các hạng mục công việc trong Sprint Backlog.

Để thực hiện kĩ thuật này, cần phải chuẩn bị các bộ bài Planning Poker đủ cho tất cả các thành viên tham dự. Bộ bài Planning Poker có nhiều kiểu khác nhau, tuy nhiên thông thường thì một bộ poker này chứa các quân bài thuộc dãy số: 0, 1, 2, 3, 5, 8, 13, 20, 40, 100. Đây chính là dãy số Fibonacci đã được điều chỉnh một chút để phù hợp với việc ước tính. Dãy số này thể hiện các giá trị ước tính, không phụ thuộc vào đơn vị ước tính. Do đó, kĩ thuật này có thể sử dụng để ước tính với các đơn vị khác nhau, chẳng hạn là điểm tương đối hoặc giờ lý tưởng. Các nhóm có thể tự thiết kế bài cho mình hoặc là mua các loại có sẵn trên thị trường.

(Trích sách Cẩm nang Scrum cho người mới bắt đầu)

Bài đọc thêm: Ước tính linh hoạt với planning poker

Ước tính linh hoạt

Ước tính linh hoạt (agile estimation) là ước tính tương đối giữa các hạng mục khác nhau. Ước tính linh hoạt không phải để đưa ra các con số chính xác về công sức để hoàn thành mỗi hạng mục như 2 ngày hay 18 giờ.

Ví dụ, dự án phát triển website có các hạng mục sau phải hoàn thành là: đăng nhập, đăng ký và lấy lại mật khẩu:

  • Nhóm chọn tính năng đăng nhập là nhỏ và rõ ràng nhất, nên họ cho tính năng đăng nhập 1 điểm.
  • Nhóm cho rằng tính năng đăng ký cần công sức gấp 3 lần tính năng đăng nhập, nên họ cho tính năng đăng ký 3 điểm.
  • Nhóm cho rằng tính năng lấy lại mật khẩu tốn nhiều công sức hơn đăng nhập (1 điểm), nhưng ít hơn đăng ký (3 điểm), nhóm cho tính năng lấy lại mật khẩu 2 điểm.

Ước tính linh hoạt thường được thực hiện bởi nhóm, làm việc dựa trên sự đồng thuận và cố gắng để mỗi thành viên đưa ra suy nghĩ độc lập giúp nhóm có cái nhìn đa chiều hơn. Sử dụng planning poker là một cách phổ biến để đạt được những tiêu chí trên.

Khi ước lượng linh hoạt dùng planning poker, mỗi thành viên có một bộ bài. Khi nhóm ước lượng cho một hạng mục, tất cả thành viên suy nghĩ như ví dụ trên để ước tính và tất cả đồng loạt lật con bài để thống báo quyết định của mình. Nếu các con số đồng nhất hoặc thỏa mãn tiêu chí về sự đồng thuận thì hạng mục đó đã được ước lượng xong. Nếu các con số khác nhau nhiều thì người đưa con số khác biệt nhất (hoặc một người cho cao nhất và một người cho ít nhất) giải thích suy nghĩ của mình, sau đó nhóm lại thực hiện việc chơi bài tới khi đạt được sự đồng thuận. Quá trình giúp nhóm không chỉ ước lượng được các hạng mục mà còn giúp họ hiểu về các hạng mục cũng cách triển khai nó để giảm thiểu rủi ro.