Scrum là gì và tại sao nên dùng Scrum

Trong mô hình phát triển phần mềm ngày này, bạn sẽ nghe tới rất nhiều những thuật ngữ như “Scrum”, “Agile”, “Scrum Master” … Vậy chúng là gì, có vai trò như thế nào trong phát triển phần mềm. Nội dung bài viết sẽ chia sẻ về

  1. Scrum là gì?
  2. Tại sao nên dùng Scrum

1. Scrum là gì

Bài viết trước mình có giới thiệu về mô hình phát triển Agile ở link sau https://viblo.asia/p/agile-la-gi-va-cac-phuong-phap-kiem-thu-agile-aWj53kpp56m, nhiều người thường có sự nhầm lẫn về Scrum và Agile, và cho rằng chúng là cùng 1 loại, điều đấy là không đúng. Thực tế Scrum là một trong những Framework phổ biến nhất dùng để thực thi Agile. Và cũng có rất nhiều Framework khác cũng có thể dùng để thực thi Agile như Kanban chẳng hạn. Tuy nhiên tại sao lại dùng Scrum, Scrum có gì đặc biệt thì hãy tiếp tục đọc phần dưới đây để hiểu rõ hơn về Scrum.

Scrum là một Framework về quy trình và quản lý giúp giải quyết các vấn đề phức tạp, nhưng vẫn đảm bảo tính hiệu quả, sáng tạo và sản phẩm được tạo ra phải đạt được giá trị cao nhất. Bản thân Scrum là một Framework đơn giản nhằm giúp việc phối hợp hiệu quả nhất giữa các thành viên trong đội phát triển khi thực hiện những sản phẩm phức tạp. Với Scrum, sản phẩm được xây dựng trên 1 chuỗi các quy trình lặp lại (gọi là Sprint). Các sprint diễn ra đều đặn, mỗi một sprint là cơ hội để học hỏi điều chỉnh nhằm đạt được sự phù hợp và kết quả tốt nhất.

Nhắc đến Scrum là:

  • Nhẹ nhàng
  • Dễ hiểu
  • Khó để quản lý và làm chủ

Khi áp dụng Scrum, có 4 cuộc họp (Meetings or Ceremonies) quan trọng tạo nên cấu trúc trong mỗi Sprint như sau:

  • Sprint planning: Cuộc họp lên kế hoạch của đội dự án, nhằm xác định những gì cần hoàn thành trong Spring sắp tới.
  • Daily stand-up: Cũng được biết đến như “Daily Scrum”, một cuộc họp nhỏ 15 phút mỗi ngày để trao đổi công việc giữa đội phát triển.
  • Sprint demo: Một cuộc họp chia sẻ, nơi mà các thành viên chỉ ra những gì họ đã làm được trong Sprint đó
  • Sprint retrospective: Sự đánh giá, nhìn lại những điều đã làm được và chưa làm được của Sprint hiện tại, và đưa ra giải pháp hành động cho Sprint tiếp theo được tốt và hoàn thiện hơn.

Một nhóm phát triển Scrum thì sẽ có những thành phần hơi khác biệt so với mô hình truyền thống Waterfall, với 3 vai trò sau:

  • Product Owner
  • Scrum Master
  • Development Team

Và bởi vì nhóm phát triển Scrum là đa chức năng, nên “Development Team” sẽ bao gồm Testers, Designers, và Ops Engineers.

2. Tại sao nên dùng Scrum

Nguồn gốc của Scrum xuất phát từ nghiên cứu những năm 1986 về quy trình phát triển sản phẩm thành công, tất cả đều có những đặc tính như yêu cầu mới và sự thay đổi yêu cầu thường xuyên và liên tục, thời gian để đưa sản phẩm ra thị trường rất ngắn. Trong nghiên cứu này, cách thức để đội phát triển làm việc với năng suất cao nhất được đưa ra so sánh với bộ môn bóng bầu dục và được gọi là Scrum. Tính minh bạch, kiểm tra, và thích nghi là 3 nền tảng cơ bản của Scrum. Và dưới đây là những lý do tại sao nên dùng Scrum.

  • Scrum cho phép việc tự do triển khai
  • Scrum dễ học và dễ sử dụng
  • Scrum chấp nhận sự thay đổi
  • Scrum làm giảm rủi ro khi xây dựng sản phẩm
  • Scrum tối ưu hóa hiệu quả và nỗ lực của đội phát triển
  • Scrum cho phép khách hàng sử dụng sản phẩm sớm hơn
  • Scrum cải tiến liên tục

Bài viết được tham khảo từ nhiều nguồn:
https://www.scrum.org/resources/what-is-scrum
https://www.linkedin.com/pulse/7-reasons-use-scrum-project-development-david-nos
https://www.atlassian.com/agile/scrum