Scrum hoạt động như thế nào?
Bài đăng này đã không được cập nhật trong 3 năm
1. Lý do sử dụng scrum
Theo mô hình phát triển truyền thống, việc xây dựng sản phẩm phải đi qua nhiều công đoạn -> do phải đi qua toàn bộ các quy trình này nên sản phẩm cần nhiều tháng hoặc nhiều năm mới có thể đi vào hoạt động -> không đáp ứng được nhu cầu của người dùng và giảm tính cạnh tranh. Do đó cần các phương pháp phát triển Agile mà Scrum là một trong số đó
2. Scrum là gì?
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 Agile Manifesto (xem thêm Tuyên ngôn Agile). Ngoài ra Scrum hoạt động dựa trên ba giá trị cốt lõi, còn gọi là Ba chân của Scrum bao gồm Minh bạch, Thanh tra và Thích nghi.
Scrum là một khung làm việc cho phát triển sản phẩm với các nhóm list chức năng làm việc theo cách thức lặp và tăng trưởng
Quy trình phát triển được thực hiện thông qua các phân đoạn nối tiếp nhau được gọi là sprint. Kết thúc mỗi sprint nhóm phát triển sẽ cho ra đời 1 phần tăng trưởng chuyển giao được của sản phẩm
Mỗi sprint kéo dài không quá 4 tuần và diễn ra liên tiếp không bị gián đoạn. Các sprint có độ dài không đổi và sprint này bắt đầu ngay sau khi sprint khác hoàn thành.
Các sprint đóng khung về thời gian và kết thúc vào 1 ngày xác định bất kể công việc đã hoàn thành hay chưa và không được phép kéo dài thêm thời gian
Các công cụ (artifacts) Scrum
Scrum sử dụng các công cụ rất đơn giản nhưng hiệu quả để trợ giúp công việc. Chúng bao gồm bản yêu cầu của sản phẩm được gọi là Product backlog, bản kế hoạch của từng Sprint (Sprint Backlog) và biểu đồ Burndown Chart. Product backlog Đây là danh sách ưu tiên các tính năng (feature) hoặc đầu ra khác của dự án, có thể hiểu như là danh sách yêu cầu (requirement) của dự án. Product Owner chịu trách nhiệm sắp xếp độ ưu tiên cho từng hạng mục (Product Backlog Item) trong Product Backlog dựa trên các giá trị do Product Owner định nghĩa (thường là giá trị thương mại ) Sprint backlog Đây là bản kế hoạch cho một Sprint: là kết quả của buổi họp lập kế hoạch (Sprint Planning). Với sự kết hợp của Product Owner, nhóm sẽ phân tích các yêu cầu theo độ ưu tiên từ cao xuống thấp để hiện thực hóa các hạng mục trong Product Backlog dưới dạng danh sách công việc (TODO list). Burndown Chart Đây là biểu đồ hiển thị xu hướng của dự án dựa trên lượng thời gian cần thiết còn lại để hoàn tất công việc. Burndown Chart có thể được dùng để theo dõi tiến độ của Sprint (được gọi là Sprint Burndown Chart) hoặc của cả dự án (Project Burndown Chart).
3. Quá trình diễn ra một sprint
Đầu mỗi sprint, nhóm phát triển lựa chọn 1 số hạng mục từ 1 danh sách ưu tiên các yêu cầu của khách hàng nhằm thống nhất 1 số mục tiêu mà họ tin rằng có thể đạt được khi sprint kết thúc - Những thứ có thể thấy và thực sự hoàn thành được. Nhóm phát triển bắt tay vào thực hiện từng hạng mục đã lựa chọn Vai trò của từng cá nhân và sự cộng tác là rất quan trọng để hoàn thành các hạng mục như mong đợi Hằng ngày nhóm phát triển tập hợp trong 1 khoảng thời gian ngắn để thanh tra và điều chỉnh thực hiện các bước tiếp theo để hoàn thành công việc còn lại Trong suốt sprint không có hạng mục nào được phép thêm vào. Scrum cho phép thay đổi sprint tiếp theo. Nhưng với sprint hiện tại chỉ cho phép theo đuổi 1 mục tiêu cụ thể và ổn định Kết thúc sprint , nhóm sơ kết sprint trình bày với các bên liên quan các việc đã làm. Và tiếp nhận các phản hồi để đưa vào sprint tiếp theo Scrum quan tâm đến sản phẩm đã hoản thành ở mỗi cuối sprint. Đối với phần mềm thì đó là:
- Đã tích hợp hệ thống
- Đã kiểm thử đầy đủ
- Đã hoàn thành tài liệu
- Có thể chuyển giao được
* Đóng khung thời gian
- Xác định quãng thời gian hữu hạn cho từng hoạt động. Đi kèm với đó là thời hạn kết thúc và kết quả mong đợi. Hoạt động này sẽ chấm dứt khi khung thời gian kết thúc bất kể hoạt động đã hoàn thành hay chưa
- Hầu hết các sự kiện trong scrum đều là đóng khung thời gian(lập kế hoạch sprint,scrum hằng ngày, rà soát srpint, cải tiến sprint...) -> quá trình sản suất scrum là 1 loạt các hoạt động đóng khung thời gian khác nhau
* Lợi ích của đóng khung thời gian
- Tăng sự tập trung trong công việc
- Tối ưu hóa công việc
- Tăng năng suất công việc
- Nhanh chóng có được phản hồi: giúp cải tiến công việc trong các phần việc tiếp theo
- Quản lý được rủi ro
Nguồn tham khảo
All rights reserved