Thuật ngữ
Burndown chart là gì? Cách đọc biểu đồ burndown của sprint
Burndown chart là biểu đồ khối lượng việc còn lại theo ngày trong sprint. Cách đọc, 5 hình dạng thường gặp và cách xử lý, ví dụ sprint 2 tuần, chỗ xem trên Pentara.
Khoảng 5 phút đọc
Trả lời ngắn
Định nghĩaBurndown chart (biểu đồ đốt cháy) là biểu đồ vẽ khối lượng việc còn lại của một sprint theo từng ngày. Trục ngang là ngày trong sprint, trục đứng là số điểm (hoặc số việc) chưa xong. Một đường thẳng lý tưởng đi từ tổng cam kết ngày đầu xuống 0 ngày cuối; đường thực tế tụt xuống mỗi khi có việc xong. Nhìn hai đường lệch nhau là biết đội đang nhanh hay chậm, từ giữa sprint chứ không phải ngày cuối.
Đây là biểu đồ dùng nhiều nhất trong Scrum vì nó rẻ (tự sinh từ bảng công việc) và trả lời đúng câu hỏi hằng ngày của đội: “ta có kịp không?”. Giá trị của nó nằm ở cảnh báo sớm; đến ngày cuối sprint thì ai cũng biết kết quả rồi.
Đọc biểu đồ: bốn thứ cần nhìn
| Thành phần | Nghĩa | Cách đọc |
|---|---|---|
| Trục đứng | Khối lượng còn lại: story point nếu đội có chấm điểm, không thì số việc | Điểm xuất phát là tổng cam kết ở Planning |
| Trục ngang | Các ngày của sprint (một số công cụ bỏ cuối tuần) | Mỗi ngày một điểm dữ liệu, tính đến hôm nay |
| Đường lý tưởng | Đường thẳng nét đứt từ tổng cam kết về 0, giả định làm đều mỗi ngày | Là thước đo, không phải mục tiêu phải bám sát từng ngày |
| Đường thực tế | Còn lại thật ở cuối mỗi ngày; giảm khi việc chuyển sang Xong | Nằm trên đường lý tưởng là chậm, nằm dưới là nhanh hơn kế hoạch |
Lưu ý cách tính: một việc chỉ làm đường thực tế tụt khi nó xong hẳn theo định nghĩa Done của đội. Việc làm 90% vẫn tính là còn nguyên. Vì thế burndown thường trông “tệ” hơn cảm giác của đội ở giữa sprint, và đó là chủ ý: nó đo cái đã bàn giao được, không đo công sức.
Năm hình dạng thường gặp và cách xử lý
| Hình dạng | Thường do | Nên làm gì |
|---|---|---|
| Bám sát đường lý tưởng, răng cưa nhẹ | Việc nhỏ, xong đều, bảng cập nhật kịp | Không cần làm gì; đây là đội đang khỏe |
| Nằm ngang cả tuần rồi rơi thẳng đứng ngày cuối | Việc quá to, hoặc đội chỉ kéo Done hàng loạt cuối sprint | Tách việc nhỏ hơn; cập nhật bảng trong ngày, không đợi cuối sprint |
| Luôn nằm trên đường lý tưởng, càng ngày càng xa | Cam kết quá sức, hoặc có việc bị chặn từ đầu | Ngay giữa sprint: bỏ bớt việc ra khỏi sprint, gỡ chỗ chặn; đừng đợi Review mới nói |
| Rơi nhanh xuống dưới, về 0 trước hạn | Cam kết ít, hoặc ước lượng cao | Kéo thêm việc ưu tiên cao từ backlog; ghi nhận ở Retro để sprint sau cam kết sát hơn |
| Đi lên giữa sprint | Thêm việc vào sprint đang chạy (phạm vi phình ra), hoặc chấm lại điểm | Hỏi ai thêm và vì sao; nếu là việc khẩn thì phải đổi việc khác ra |
Hình minh họa cả năm dạng có ở chương Đo lường. Hai dạng thứ hai và thứ ba hay gặp nhất ở đội mới, và đều chữa được bằng cùng một việc: chia việc nhỏ hơn.
Ví dụ: sprint 2 tuần, 30 điểm
Ví dụ
Đội 6 người cam kết 30 điểm cho sprint 2 tuần (10 ngày làm việc). Đường lý tưởng giảm 3 điểm mỗi ngày. Ngày thứ 5, hết tuần đầu, lý tưởng còn 15, thực tế còn 27: chỉ một việc 3 điểm đã xong.
Ở Daily sáng thứ hai, PM không hỏi “sao chậm” mà hỏi “cái gì đang chặn”. Hóa ra hai việc 8 điểm đều chờ một API của đơn vị khác, chưa có lịch bàn giao. Đội quyết định: tách phần giao diện của hai việc đó ra làm trước với dữ liệu giả (hai việc mới, 5 điểm mỗi việc), phần nối API chuyển sang sprint sau. Sprint còn 24 điểm cam kết. Ngày 7 còn 14, ngày 9 còn 5, ngày 10 xong hết.
Nếu không có burndown, đội sẽ phát hiện chuyện API vào ngày Review, khi không còn gì để điều chỉnh. Ở đây họ phát hiện ở ngày 5, và Review vẫn có sản phẩm cho khách xem.
Burndown, burnup và velocity khác nhau thế nào
Burnup chart vẽ ngược lại: một đường là tổng phạm vi, một đường là phần đã xong đi lên. Ưu điểm là thấy rõ khi phạm vi bị thêm (đường tổng nhích lên), thứ mà burndown gộp vào đường còn lại. Đội hay bị thêm việc giữa sprint nên xem thêm burnup. Velocity thì nhìn qua nhiều sprint: mỗi sprint xong bao nhiêu điểm, để dự báo dài hơn. Burndown là kính lúp trong một sprint; velocity là bản đồ cả dự án. Khái niệm điểm ở Story point là gì?.
Khi burndown đánh lừa bạn
Biểu đồ chỉ đúng bằng cái bảng phía sau nó
Xem burndown trên Pentara
Mỗi sprint có biểu đồ Burndown ở trang Chi tiết sprint: đường nét đứt là lý tưởng, vùng tô là điểm còn lại theo ngày, vẽ đến hôm nay kèm vạch “Hôm nay”. Đơn vị tự chọn: story point nếu sprint có ít nhất một việc được chấm, không thì số việc. Không phải nhập gì bằng tay.
Điểm còn lại giảm đúng ngày việc được kéo sang cột thuộc nhóm Hoàn thành trên Board; kéo ngược ra thì cộng lại. Việc thêm vào giữa sprint được tính từ ngày đầu, biểu đồ không vẽ bậc đi lên, nên nếu thêm nhiều việc hãy ghi ở mục tiêu sprint để đội hiểu vì sao đường còn lại cao. Cạnh đó là biểu đồ Velocity của các sprint đã hoàn thành. Ngưỡng nào nên xử lý ngay xem Đọc báo cáo và chỉ số; muốn thấy biểu đồ chạy thật, đăng ký gói Miễn phí và tạo một sprint.
Hỏi đáp nhanh
- Burndown tính theo story point hay số việc?
- Theo story point nếu đội có chấm điểm, vì điểm phản ánh độ lớn; theo số việc nếu không chấm, chấp nhận việc to nhỏ đếm như nhau. Pentara tự chọn: sprint có ít nhất một việc được chấm thì dùng điểm, không thì đếm việc.
- Đường thực tế đi lên nghĩa là gì?
- Có việc được thêm vào sprint đang chạy, hoặc việc đã Done bị kéo ngược lại, hoặc điểm được chấm lại cao hơn. Đi lên một lần vì việc khẩn là bình thường, nhưng đi lên nhiều lần là phạm vi phình ra (scope creep): phải đổi việc khác ra khỏi sprint để giữ cam kết.
- Burndown khác burnup thế nào?
- Burndown vẽ phần còn lại đi xuống về 0. Burnup vẽ phần đã xong đi lên và một đường tổng phạm vi ở trên; khi phạm vi đổi, đường tổng nhích lên, nhìn thấy ngay. Đội hay bị thêm việc giữa sprint nên xem thêm burnup; đội ổn định chỉ cần burndown.
- Có phải cập nhật burndown bằng tay không?
- Không, nếu dùng công cụ quản lý dự án: biểu đồ tự vẽ từ ngày thẻ được kéo sang cột Xong. Việc duy nhất phải làm là cập nhật Board trong ngày. Đội cập nhật mỗi thứ sáu sẽ có biểu đồ phẳng bốn ngày rồi rơi, vô dụng để cảnh báo sớm.