SCRUM ARTIFACTS Tạo tác trong Scrum
“Scrum artifacts” chắc hẳn là một cụm từ không còn xa lạ với bất kì ai đã và đang hoạt động trong lĩnh vực IT, những người lựa chọn phát triển sản phẩm theo mô hình Scrum. Vậy Scrum artifacts là gì và tại sao nó lại quan trọng? Trong bài blog này chúng ta sẽ cùng tìm hiểu kĩ hơn về thuật ngữ này.
Định nghĩa khái niệm:
Scrum là gì?
- Scrum là một khung tổ chức công việc tổng quát hướng đến phát triển các sản phẩm phức tạp, chủ yếu là phần mềm.
- Scrum là một khung làm việc (framework) chứ không phải một phương pháp (method) cụ thể.
- Scrum là một phương pháp linh hoạt (agile), vì thế nó tuân thủ các nguyên tắc của Tuyên ngôn Agile (Manifesto for Agile Software Development). Ngoài ra Scrum hoạt động dựa trên ba giá trị cốt lõi là minh bạch (transparency), thanh tra (inspection) và thích nghi (adaptation).
Artifact là gì?
- Là tạo tác (trong phát triển phần mềm).
- Tạo tác là bất kỳ thứ gì được tạo ra để có thể phát triển một phần mềm. Nó có thể bao gồm những thứ như mô hình dữ liệu, sơ đồ, tập lệnh thiết lập – danh sách tiếp tục.
Scrum artifact là gì?
- Có 3 tạo tác quan trọng trong Scrum: Product Backlog (mục tiêu sản phẩm), Sprint Backlog (mục tiêu sprint) và Increment (định nghĩa hoàn thành). Mỗi tạo tác bao gồm cam kết đảm bảo cung cấp thông tin, nâng cao tính minh bạch và tập trung vào đó có thể đo lường tiến độ.
- Qua mỗi artifact trong scrum, giá trị sản phẩm có thể được minh bạch một cách tối đa để mỗi bên đều có thể nhận biết và hiểu rõ được.
Các tạo tác:
Product Backlog (Mục tiêu sản phẩm):
1.Định nghĩa:
- Product Backlog là nơi lưu trữ tất cả những tính năng cần có cho một sản phẩm.
- Được sắp xếp theo thứ tự ưu tiên của từng hạng mục và được quản lý bởi Product Owner.
2. Đặc điểm:
- Mỗi một Backlog chỉ do một Product Owner quản lý.
- Mỗi một sản phẩm chỉ có một Product Backlog.
- Việc sắp xếp Product Backlog sẽ giúp Scrum Team tối ưu hoá giá trị của sản phẩm phát triển qua từng Sprint.
- Product Backlog không bao giờ kết thúc, nó tồn tại và phát triển theo sự phát triển của sản phẩm đó. Kết thúc khi sản phẩm đã kết thúc.
- Product Backlog sẽ chứa đựng Product Backlog Items (PBIs). PBIs là những công việc cần cho sản phẩm đó bao gồm: Tasks, Bugs, Requirement, Non-functional Requirement, New Feature, Technical Debt...
3. Chức năng:
Phân chia từng hạng mục theo thứ tự ưu tiên để giúp Nhóm Phát Triển tiến hàng theo trình tự. Các hạng mục có độ ưu tiên cao hơn nằm ở phía trên của danh sách và sẽ được Nhóm Phát triển lựa chọn để đưa vào sản xuất sớm, các hạng mục có độ ưu tiên thấp hơn sẽ nằm ở phía cuối của danh sách và được phát triển muộn hơn.
4. Cam kết:
- Product Goal mô tả trạng thái tương lai của sản phẩm, có thể dùng làm mục tiêu để nhóm Scrum lập kế hoạch đạt được.
- Product Goal nằm trong Product Backlog. Phần còn lại của Product Backlog xác định “những việc gì” sẽ giúp hoàn thành Product Goal.
- Product Goal là mục tiêu dài hạn của Nhóm Scrum. Họ phải hoàn thành (hoặc từ bỏ) một mục tiêu trước khi thực hiện mục tiêu tiếp theo.
Sprint Backlog (Mục tiêu sprint):
1.Định nghĩa:
- Là một bộ những Product Backlog Items (PBIs) được lựa chọn cho Sprint đó.
- Thường bao gồm: kế hoạch và những danh sách công việc dự đoán là cần phải được làm, để hoàn thành Done Product Increment và thoả mãn được Sprint Goal vào cuối Sprint.
2. Đặc điểm:
- Sprint Backlog phải cam kết và gắn kết với Sprint Goal.
- Sprint Backlog phải minh bạch, tức phải đáp ứng đủ 3 điều: ai cũng có thể xem, luôn được cập nhật, ai cũng có thể hiểu.
- Sprint Backlog được quản lý bởi Developer, và như là bản kế hoạch của họ cho Sprint đó.
- Sprint Backlog có thể bao gồm: Tasks, User Stories, Bugs, non-functional requirement...
- Sprint Backlog sẽ được update bất cứ khi nào có sự thay đổi.
3. Chức năng:
Nhằm cung cấp sự linh hoạt để xác định các công việc cần làm để đạt được mục tiêu. Mục tiêu Sprint cũng tạo ra sự gắn kết và tập trung, khuyến khích Nhóm Scrum làm việc cùng nhau thay vì dựa trên các sáng kiến riêng biệt.
4. Cam kết:
Mục tiêu Sprint là mục tiêu duy nhất của Sprint.
Increment (Phần tăng trưởng):
1.Định nghĩa:
- Product Increment là tổng của tất cả các Product Backlog Items (PBIs) được hoàn thành trong Sprint đó, cộng với những giá trị của sản phẩm đã hoàn thành trong những Sprint trước đó.
- Product Increment phải Done (hoàn thành) vào cuối mỗi Sprint.
2. Đặc điểm:
Phần tăng trưởng là một bước đệm cụ thể để hướng tới mục tiêu Sản phẩm. Công việc không thể được coi là một phần của phần tăng trưởng trừ khi nó đáp ứng Định nghĩa Hoàn thành. Và cả team phải cam kết với định nghĩa Hoàn thành đó.
3. Chức năng:
Mỗi phần tăng trường là phụ gia cho tất cả các phần tăng trưởng trước đó và được xác minh kỹ lưỡng, đảm bảo rằng tất cả các phần tăng trưởng phải hoạt động tốt cùng nhau. Để cung cấp giá trị, phần tăng trưởng phải sử dụng được.
4. Cam kết:
- Cam kết là định nghĩa hoàn thành. Là một mô tả chính thức về trạng thái của phần tăng trưởng khi nó đáp ứng chất lượng được yêu cầu cho sản phẩm. Thời điểm một hạng mục Product Backlog đáp ứng định nghĩa hoàn thành thì phần tăng trưởng được sinh ra.
- Product Owner sẽ là người quyết định khi nào là thời điểm cần thiết để phát hành sản phẩm ra thị trường. Nhưng để có được quyết định này Product Owner luôn nên tham khảo ý kiến Scrum Team và các bên liên quan.