1.  Scrum là gì?
Scrum là một framework được sử dụng để tổ chức và quản lý công việc theo cách tiếp cận Agile. Scrum thường được sử dụng trong phát triển phần mềm, đặc biệt là những dự án có nhiều công việc và yêu cầu có thể thay đổi trong quá trình thực hiện.

Theo em hiểu đơn giản, Scrum giúp một nhóm chia công việc lớn thành những phần nhỏ hơn và thực hiện theo từng khoảng thời gian nhất định. Sau mỗi khoảng thời gian, nhóm sẽ kiểm tra kết quả, nhận phản hồi và xem cần cải thiện gì cho phần tiếp theo.

Ví dụ, khi làm một website bán hàng, nhóm có thể không làm tất cả chức năng cùng lúc mà chia ra thành các phần như đăng nhập, sản phẩm, tìm kiếm, giỏ hàng và thanh toán. Mỗi phần sẽ được đưa vào kế hoạch và thực hiện theo từng giai đoạn nhỏ.

Scrum thường được sử dụng cùng với tư duy Agile vì nó giúp nhóm áp dụng những nguyên tắc như làm việc theo từng phần, nhận phản hồi thường xuyên và cải tiến liên tục.
  1.  Scrum hoạt động như thế nào?
Điểm dễ nhận biết nhất của Scrum là công việc được thực hiện trong các khoảng thời gian cố định gọi là Sprint.

Có thể hiểu quy trình đơn giản như sau:

Product Backlog → Sprint Planning → Sprint → Daily Scrum → Sprint Review → Sprint Retrospective → Sprint tiếp theo

Đầu tiên, nhóm có một danh sách những công việc cần thực hiện cho sản phẩm. Sau đó, nhóm lựa chọn những công việc phù hợp để đưa vào Sprint.

Trong thời gian Sprint, các thành viên thực hiện công việc và thường xuyên trao đổi với nhau. Khi Sprint kết thúc, nhóm xem lại kết quả, nhận phản hồi và tìm cách cải thiện cách làm việc trong Sprint tiếp theo.

Nhờ cách làm này, nhóm không cần chờ đến khi toàn bộ dự án hoàn thành mới kiểm tra kết quả.
  1.  Scrum Team
Một Scrum Team gồm các vai trò chính là:

Product Owner: là người chịu trách nhiệm tối đa hóa giá trị của sản phẩm và quản lý Product Backlog. Product Owner cần hiểu nhu cầu của khách hàng hoặc người dùng, từ đó xác định những công việc nào cần ưu tiên thực hiện trước.

Ví dụ với website bán hàng, Product Owner có thể xác định rằng chức năng đăng nhập, xem sản phẩm và đặt hàng cần được ưu tiên trước những chức năng khác.

Scrum Master: giúp mọi người hiểu và thực hiện Scrum đúng cách. Scrum Master cũng hỗ trợ nhóm loại bỏ những trở ngại đang ảnh hưởng đến công việc và giúp nhóm cải thiện cách làm việc. Scrum Master không đơn giản chỉ là người giao việc cho các thành viên.

Developers: là những người trực tiếp tạo ra sản phẩm. Trong dự án phần mềm, đây có thể là lập trình viên và những người có chuyên môn liên quan đến việc tạo ra sản phẩm. Các thành viên cùng phối hợp để hoàn thành công việc đã thống nhất trong Sprint.
  1.  Sprint
Sprint là một khoảng thời gian cố định trong Scrum, trong đó nhóm thực hiện một số công việc đã được lựa chọn. Một Sprint có thời gian tối đa 1 tháng và được lặp lại liên tục trong quá trình phát triển sản phẩm.

Trong mỗi Sprint, nhóm cố gắng tạo ra một phần sản phẩm có thể sử dụng hoặc đánh giá được. Sau khi Sprint kết thúc, nhóm sẽ xem lại kết quả và tiếp tục lên kế hoạch cho Sprint tiếp theo.
  1.  Các hoạt động chính trong Scrum
Trong Scrum có một số hoạt động chính:
  • Sprint Planning: Nhóm cùng nhau xác định mục tiêu của Sprint và lựa chọn những công việc cần thực hiện.
  • Daily Scrum: Là buổi trao đổi ngắn hằng ngày để Developers kiểm tra tiến độ và điều chỉnh kế hoạch làm việc khi cần thiết.
  • Sprint Review: Được thực hiện khi Sprint kết thúc. Nhóm xem xét kết quả đã hoàn thành và nhận phản hồi từ những người liên quan.
  • Sprint Retrospective: Nhóm cùng nhìn lại quá trình làm việc trong Sprint, xem những điểm nào làm tốt, điểm nào chưa tốt và cần cải thiện gì trong Sprint tiếp theo.
  1.  Product Backlog và Sprint Backlog
Product Backlog là danh sách các công việc và yêu cầu cần thực hiện cho sản phẩm. Danh sách này có thể được thay đổi hoặc sắp xếp lại khi nhu cầu của sản phẩm thay đổi.

Sprint Backlog là những công việc được nhóm lựa chọn từ Product Backlog để thực hiện trong Sprint hiện tại.

Có thể hiểu đơn giản:

Product Backlog = Tất cả những việc cần làm cho sản phẩm

Sprint Backlog = Những việc được chọn để làm trong Sprint hiện tại
  1.  Ví dụ thực tế
Ví dụ nhóm được giao làm một website bán hàng. Product Backlog có thể gồm đăng nhập, quản lý sản phẩm, tìm kiếm, giỏ hàng và thanh toán.

Trong Sprint đầu tiên, nhóm có thể chọn làm giao diện và chức năng hiển thị sản phẩm. Sau khi hoàn thành, nhóm kiểm tra kết quả và nhận phản hồi.

Ở Sprint tiếp theo, nhóm có thể tiếp tục làm đăng nhập và giỏ hàng. Nếu trong quá trình thực hiện có yêu cầu mới hoặc phát hiện vấn đề, nhóm có thể điều chỉnh kế hoạch cho những Sprint tiếp theo.
  1. Kết luận
Theo em hiểu, Scrum là một framework giúp nhóm tổ chức công việc theo từng Sprint thay vì thực hiện toàn bộ dự án cùng một lúc. Nhóm thường xuyên trao đổi, kiểm tra kết quả và nhận phản hồi để cải thiện sản phẩm cũng như cách làm việc trong quá trình phát triển.



Bài viết khác

TÌM HIỂU VỀ MÔ HÌNH WATERFAL

Waterfall là gì? Waterfall hay còn gọi là mô hình Thác nước, là một mô hình phát triển phần mềm dựa trên quy trình tuần tự và liên tiếp. Các giai đoạn trong dự án được thực hiện theo một trình tự nhất định, giai đoạn sau chỉ bắt đầu khi giai đoạn trước đã […]

TÌM HIỂU VỀ MÔ HÌNH KANBAN

TÌM HIỂU VỀ MÔ HÌNH KANBAN Kanban là gì? Kanban là một phương pháp quản lý và cải tiến công việc, trong đó công việc được trực quan hóa để các thành viên có thể dễ dàng theo dõi trạng thái và tiến độ của từng công việc. Trong phát triển phần mềm, Kanban thường […]

TÌM HIỂU VỀ MÔ HÌNH AGILE

TÌM HIỂU VỀ MÔ HÌNH AGILE Tổng quan về Agile Agile là một cách làm trong phát triển phần mềm, được sử dụng để giúp nhóm làm việc linh hoạt hơn trong quá trình xây dựng sản phẩm. Điểm em thấy dễ hiểu nhất ở Agile là không nhất thiết phải làm toàn bộ dự […]

Git

1. Git là gì? Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS) được sử dụng để quản lý, theo dõi và kiểm soát các thay đổi trong mã nguồn của một dự án. Git giúp lập trình viên lưu lại lịch sử phát triển của project, […]

Kanban

Kanban là gì? Kanban là một phương pháp quản lý công việc tập trung vào việc trực quan hóa công việc, kiểm soát lượng công việc đang thực hiện và cải thiện dòng chảy của công việc. Kanban giúp team nhìn thấy toàn bộ công việc đang ở trạng thái nào, công việc nào đang […]

Scrum

Scrum là gì? Scrum là một framework được sử dụng để tổ chức và quản lý quá trình phát triển sản phẩm, đặc biệt phổ biến trong phát triển phần mềm. Scrum giúp một team biến những nguyên tắc của Agile thành một cách làm việc cụ thể hơn. Nếu Agile là tư duy, thì […]

Leave a Reply

Your email address will not be published. Required fields are marked *