Scrum là gì? Tạo sao nên dùng Scrum?

Hiện nay, trong mô hình phát triển phần mềm ta nghe đâu đó có rất nhiều mô hình phát triển như mô hình thác nước, mô hình xoắn ốc, mô hình tiếp cận lặp,… Vậy có bao giờ bạn nghe đến mô hình Scrum chưa?

Nếu chưa nghe hoặc đã nghe rồi nhưng chưa rõ thì bài viết này sẽ chia sẻ cho bạn những khái niệm cơ bản về “Scrum là gì” và lý do tại sao nên dùng Scrum trong mô hình phát triển phần mềm nhé!

Scrum là gì?

Scrum là một quy trình phát triển sản phẩm theo phương pháp Agile và được xây dựng trên thuyết thực nghiệm. Scrum là khung làm việc để phát triển, chuyển giao và duy trì các sản phẩm phức tạp theo cách thức lặp và tăng trưởng (Theo Scrum Guide).

scrum-la-gi

Trong Scrum, công việc được thực hiện bởi Nhóm Scrum thông qua từng phân đoạn lặp liên tiếp nhau được gọi là Sprint. Mỗi Sprint có độ dài cố định nhưng thời gian không quá 1 tháng. Đầu mỗi Sprint nhóm sẽ lên kế hoạch cho 1 sprint. Công việc đã được lên kế hoạch sẽ được các thành viên nhận trong mỗi buổi Daily. Sau mỗi Sprint, nhóm phát triển sẽ đưa ra một phần tăng trưởng. Khi 1 sprint kế thúc thì 1 sprint mới bắt đầu ngay sau đó.

Trong mô hình Scrum công việc thực hiện bởi nhóm Scrum bao gồm 3 vai trò:

  • Product Owner
  • ScrumMaster
  • Nhóm phát triển
scrum là gì

Với 3 vai trò trên thì mỗi vai trò sẽ góp một phần vào công việc tạo ra sản phẩm:

  • Product backlog: là nơi lưu trữ các tính năng mong muốn của sản phẩm, các hạng mục có dộ ưu tiên hơn sẽ nằm ở phía trên danh sách, sẽ được nhóm phát triển lựa chọn phát triển sớm và các hạng mục có độ ưu tiên thấp hơn sẽ nằm ở phía dưới và được phát triển muộn hơn
  • Sprint backlog: là bảng công việc được nhóm phát triển sử dụng để quản lý quá trình sản xuất trong 1 sprint. Bao gồm danh sách các hạng mục đã lựa chọn từ Product backlog và danh sách công việc cần hoàn thành trong sprint hiện tại
  • Gói tăng trưởng: là phần tăng trưởng sản phẩm có thể chuyển giao được và được nhóm phát triển chuyển giao cuối sprint

Mỗi sprint sẽ có các sự kiện là 4 cuộc họp với các cơ chế cộng tác có cấu trúc để cộng tác hiệu quả hướng đến mục tiêu chung.

  • Sprint planning: là sự kiện tổ chức đầu sprint với mục đích đưa ra mục tiêu của sprint, lựa chọn các hạng mục sẽ làm trong sprint và lên kế hoạch hoàn thành chúng như thế nào
  • Daily scrum: là sự kiện tổ chức 15 phút hàng ngày với mục đích đồng bộ công việc và tái lập kế hoạch cho ngày tiếp theo
  • Sprint review: được tổ chức cuối mỗi sprint để xem xét kiểm tra phần tăng trưởng của sản phẩm trong Sprint và điều chỉnh Product backlog nếu cần thiết
  • Sprint retrospective: diễn ra sau Sprint review và trước Sprint planning. Sự kiện này diễn ra với mục đích Scrum team tự xem xét, kiểm tra chính họ và lập ra những kế hoạch cho cải tiến sẽ được thực hiện trong Sprint tiếp theo

Tại sao nên dùng Scrum?

Scrum được xây dựng từ rất sớm để quản lý và phát triển sản phẩm. Đến những năm 90s đã được áp dụng rộng rãi không chỉ ở phát triển phần mềm mà còn ở cả marketing và giáo dục.

Tại sao Scrum lại được ứng dụng rộng rãi như vậy? Và dưới đây là lý do:

  • Scrum chỉ là khung cơ bản để tổ chức có thể hoạt động hiệu quả, có thể thay đổi tùy từng tình huống
  • Scrum dễ học và dễ sử dụng
  • Scrum tăng độ trực quan của sản phẩm
  • Scrum cho phép khách hàng thấy và sử dụng sản phẩm sớm hơn
  • Scrum làm giảm rủi ro (so với phương pháp phát triển truyền thống)
  • Không ngại thay đổi
  • Tối ưu hóa giá trị của sản phẩm
  • Tối ưu nỗ lực của nhóm phát triển

Trên đây, đã giới thiệu về những khái niệm cơ bản về Scrum là gì. Trong phần sau mình sẽ nói rõ hơn về các vai trò trong Scrum.

Author: Thái Thị Duyên


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Leave a Reply

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

%d bloggers like this: