Scrum là gì?

Scrum là một khung quản lý được các đội ngũ sử dụng để tự tổ chức và hoạt động vì một mục tiêu chung. Khung này mô tả một loạt các cuộc họp, công cụ và vai trò để bàn giao dự án hiệu quả. Cũng giống như một đội thể thao tập dượt cho trận đấu quan trọng, thực hành Scrum tạo điều kiện cho đội ngũ tự quản lý, học hỏi từ kinh nghiệm và thích nghi với sự thay đổi. Các đội ngũ phát triển phần mềm sử dụng Scrum để giải quyết những vấn đề phức tạp một cách tiết kiệm và bền vững. 

Phương pháp Scrum là gì?

Phương pháp Scrum có một số nguyên tắc và giá trị đặc trưng sau đây: 

Các nguyên tắc để dự án thành công của Scrum

Tính minh bạch

Các đội ngũ làm việc trong môi trường mà mọi người đều hiểu rõ về những thách thức mà người khác có thể gặp phải. Các cuộc trò chuyện trực tiếp định kỳ giữa các thành viên đội ngũ đa chức năng và người chịu trách nhiệm dự án sẽ ngăn chặn tình trạng truyền đạt không rõ ràng và nghẽn thông tin.

Đánh giá nhìn nhận

Các điểm đánh giá nhìn nhận thường xuyên được tích hợp vào khung để thành viên trong đội ngũ có thể đánh giá tiến độ của họ. Các quản lý dự án dùng thông tin chuyên sâu từ những cuộc họp đánh giá này để ước tính và lên kế hoạch trong tương lai. Từ đó, các dự án có thể diễn ra hiệu quả hơn, trong giới hạn ngân sách và đúng tiến độ.

Điều chỉnh

Các thành viên trong đội ngũ có thể điều chỉnh mức độ ưu tiên của các công việc dựa trên nhu cầu hay thay đổi của khách hàng. Họ sẽ quyết định xem công việc nào cần hoàn thành trước và công việc nào cần xem xét sửa đổi trong tương lai.

Các giá trị của Scrum áp dụng cho đội ngũ dự án

Các Đội ngũ Scrum cần tuân thủ năm giá trị cốt lõi.

Cam kết

Các thành viên trong Đội ngũ Scrum cam kết thực hiện công việc và mục tiêu đúng thời gian đề ra, đồng thời quyết tâm cải thiện không ngừng để tìm ra giải pháp tốt nhất.

Dũng cảm

Các thành viên trong Đội ngũ Scrum thể hiện lòng dũng cảm bằng cách đặt ra những câu hỏi khó, thẳng thắn. Họ sẽ thảo luận một cách trung thực và minh bạch để đi đến giải pháp tốt nhất.

Tập trung

Trong bất kỳ khoảng thời gian cụ thể nào, các thành viên trong đội ngũ đều sẽ làm việc theo một Danh sách ý tưởng sản phẩm gồm nhiều công việc. Họ sẽ tập trung vào những công việc đã chọn để bàn giao thành phẩm trong khung thời gian giới hạn.

Cởi mở

Các thành viên trong Đội ngũ Scrum luôn đón nhận những ý tưởng và cơ hội mới hỗ trợ hoạt động học hỏi của cá nhân và chất lượng tổng thể của dự án.

Tôn trọng

Các thành viên trong đội ngũ luôn tôn trọng người quản lý dự án, tôn trọng lẫn nhau và quy trình Scrum. Văn hóa tôn trọng này sẽ tạo ra tinh thần cộng tác và phối hợp trong đội ngũ.

Scrum hoạt động như thế nào?

Scrum là một khung dễ học nhưng khó giỏi. Jeff Sutherland và Ken Schwaber – hai nhà đồng sáng tạo ra Scrum – đã giải thích những khái niệm nền tảng của Scrum trong Hướng dẫn Scrum. Hướng dẫn này trình bày tổng quan chi tiết về các quy trình của Scrum cũng như cách triển khai chúng hiệu quả.

Yếu tố căn bản của Scrum là một nhóm tự tổ chức đem lại giá trị cho khách hàng trong một khung thời gian cố định gọi là Sprint (tạm dịch: Vòng lặp phát triển). Scrum xác định các tạo tác, vai trò và sự kiện liên quan đến mỗi chu kỳ Sprint. Hãy cùng xem xét chi tiết từng yếu tố này.

Tạo tác Scrum là gì?

Các Đội ngũ Scrum sử dụng những công cụ gọi là tạo tác Scrum để giải quyết vấn đề và quản lý dự án. Tạo tác Scrum cung cấp thông tin kế hoạch và công việc quan trọng cho các thành viên trong đội ngũ cùng những bên liên quan. Có ba tạo tác chính:

Danh sách ý tưởng sản phẩm

Danh sách ý tưởng sản phẩm là một danh sách không cố định gồm các tính năng, yêu cầu, cải tiến và sửa lỗi phải hoàn thành để dự án thành công. Về cơ bản, đây là danh sách việc cần làm của đội ngũ và sẽ liên tục được xem xét sửa đổi cũng như sắp xếp lại thứ tự ưu tiên để thích ứng với thay đổi của thị trường. Người phụ trách dự án sẽ duy trì và cập nhật danh sách, xóa những hạng mục không liên quan hoặc bổ sung yêu cầu mới từ phía khách hàng.

Danh sách công việc trong Sprint

Danh sách công việc trong Sprint là danh sách các hạng mục mà đội ngũ phát triển cần hoàn thành trong chu kỳ Sprint hiện tại. Trước mỗi Sprint, đội ngũ sẽ chọn những hạng mục cần bắt tay vào làm từ Danh sách ý tưởng sản phẩm. Danh sách công việc trong Sprint có tính chất linh hoạt và có thể thay đổi trong một chu kỳ Sprint.

Phần tăng trưởng

Phần tăng trưởng là một bước tiến tới một mục tiêu hoặc tầm nhìn. Nó là thành phẩm dùng được từ một chu kỳ Sprint. Các đội ngũ có thể áp dụng những phương pháp khác nhau để xác định và biểu diễn Mục tiêu Sprint của họ. Mặc dù có sự linh hoạt song Mục tiêu Sprint cơ bản – tức là điều mà đội ngũ muốn đạt được từ chu kỳ Sprint hiện tại – không được thay đổi.

Ví dụ: một số đội ngũ chọn cách cung cấp nội dung nào đó cho khách hàng vào cuối chu kỳ Sprint, như vậy Mục tiêu Sprint của họ sẽ hoàn thành sau khi áp dụng thay đổi đối với phần mềm. Các đội ngũ khác có thể tập trung hoàn thành một nhóm tính năng sẽ được cho ra mắt cùng lúc. Trong trường hợp này, Mục tiêu Sprint sẽ hoàn thành khi một tính năng được kiểm thử thành công. 

Vai trò Scrum là gì?

Một Đội ngũ Scrum cần ba vai trò cụ thể: Người phụ trách dự án, nhà lãnh đạo Scrum và đội ngũ phát triển.

Người phụ trách dự án

Người phụ trách dự án tập trung đảm bảo rằng đội ngũ phát triển mang lại nhiều giá trị nhất cho doanh nghiệp. Họ tìm hiểu và ưu tiên những nhu cầu hay thay đổi của người dùng cuối và khách hàng. Người phụ trách dự án hiệu quả sẽ thực hiện những công việc sau:

  • Đưa ra hướng dẫn rõ ràng cho đội ngũ về việc sẽ cung cấp tính năng nào tiếp theo.
  • Thu hẹp khoảng cách giữa nhu cầu của doanh nghiệp và hiểu biết của đội ngũ.
  • Quyết định thời điểm và tần suất ra mắt các bản phát hành.

Nhà lãnh đạo Scrum

Nhà lãnh đạo Scrum là những người hỗ trợ về Scrum trong các đội ngũ của họ. Họ chịu trách nhiệm về hiệu quả của Đội ngũ Scrum. Họ hướng dẫn cho các đội ngũ, Người phụ trách dự án và doanh nghiệp cách cải thiện các quy trình Scrum cũng như tối ưu hóa sản phẩm bàn giao. Nhà lãnh đạo Scrum cũng có trách nhiệm thực hiện các công việc sau đây:
 
  • Điều độ các tài nguyên cần thiết cho mỗi chu kỳ Sprint.
  • Tạo điều kiện cho các sự kiện Sprint và cuộc họp đội ngũ khác.
  • Dẫn dắt sự chuyển đổi kỹ thuật số trong đội ngũ.
  • Tạo điều kiện cho mọi hoạt động đào tạo đội ngũ khi áp dụng công nghệ mới.
  • Trao đổi với các nhóm bên ngoài để giải quyết mọi thách thức mà cả đội ngũ có thể phải đối mặt.

Đội ngũ phát triển Scrum

Đội ngũ Scrum gồm có kỹ sư kiểm thử, nhà thiết kế, chuyên viên về trải nghiệm người dùng (UX), kỹ sư vận hành sản xuất và nhà phát triển. Các thành viên trong đội ngũ có những bộ kỹ năng khác nhau và có thể đào tạo chéo cho nhau, như vậy sẽ không ai trở thành “vật cản trở” khi bàn giao công việc. 

Jeff Bezos – nhà sáng lập của Amazon – đã đề xuất quy tắc hai chiếc bánh pizza khi quyết định quy mô của đội ngũ: Một đội ngũ chỉ nên vừa đủ để chia đều hai chiếc bánh pizza. 

Các đội ngũ phát triển Scrum sẽ thực hiện những công việc sau:

  • Cộng tác với nhau để đảm bảo hoàn thành suôn sẻ chu kỳ Sprint.
  • Ủng hộ những biện pháp thực hành phát triển bền vững.
  • Tự tổ chức và tiếp cận dự án với tinh thần tập thể rõ ràng.
  • Thúc đẩy việc lên kế hoạch và ước tính họ có thể hoàn thành bao nhiêu phần việc trong mỗi chu kỳ Sprint.

Sự kiện Scrum là gì?

Sự kiện Scrum hay cuộc họp Scrum cụ thể là tập hợp các cuộc họp liên tiếp mà Đội ngũ Scrum định kỳ tổ chức. Một số sự kiện Scrum bao gồm:

Lên kế hoạch cho chu kỳ Sprint

Trong sự kiện này, đội ngũ sẽ ước tính công việc cần hoàn thành trong chu kỳ Sprint tiếp theo. Các thành viên sẽ xác định những Mục tiêu Sprint cụ thể, có thể đo lường và có thể đạt được. Vào cuối cuộc họp lên kế hoạch, mọi thành viên Scrum đều sẽ biết được cách bàn giao từng Phần tăng trưởng trong chu kỳ Sprint.

Sprint

Sprint là một khoảng thời gian thực tế mà Đội ngũ Scrum phối hợp để hoàn thành một Phần tăng trưởng. Một chu kỳ Sprint thường kéo dài hai tuần nhưng có thể khác tùy vào nhu cầu của dự án và đội ngũ. Công việc càng phức tạp và yếu tố không xác định càng nhiều thì càng nên rút ngắn chu kỳ Sprint.

Họp Scrum hàng ngày hoặc cuộc họp đứng

Họp Scrum hàng ngày là một cuộc họp ngắn gọn để các thành viên đội ngũ hỏi thăm tiến độ và lên kế hoạch trong ngày. Họ báo cáo về công việc đã hoàn thành và nêu ra bất kỳ thách thức nào mình có trong việc đáp ứng các Mục tiêu Sprint. Hoạt động này được gọi là cuộc họp đứng vì có mục tiêu diễn ra ngắn gọn hết mức có thể, như trong lúc mọi người vẫn đang đứng.

Đánh giá chu kỳ Sprint

Tại cuối chu kỳ Sprint, đội ngũ sẽ tập hợp trong một buổi họp không chính thức để đánh giá công việc đã hoàn thành và giới thiệu về phần công việc đó cho các bên liên quan. Người phụ trách dự án cũng có thể sửa lại Danh sách ý tưởng sản phẩm dựa trên chu kỳ Sprint hiện tại.

Nhìn lại về chu kỳ Sprint

Cả đội ngũ tập hợp để ghi chép và thảo luận về những gì đã làm được và chưa làm được trong chu kỳ Sprint. Những ý tưởng được nêu ra sẽ được sử dụng để cải thiện các chu kỳ Sprint trong tương lai.

Vì sao Scrum lại có vai trò quan trọng với hoạt động phát triển phần mềm?

Tất cả loại hình đội ngũ như nhân sự, tiếp thị và thiết kế đều có thể sử dụng Scrum hiệu quả. Tuy nhiên, Scrum phổ biến hơn trong các đội ngũ phát triển phần mềm và kỹ thuật. Khung này cho phép đội ngũ phản ứng nhanh hơn trước những yêu cầu hay thay đổi mà không bị mất kiểm soát về chi phí và ngân sách. Scrum có vai trò quan trọng vì những lý do sau:

Khả năng duy trì chất lượng trong những tình huống khó khăn

Tính năng kiểm tra đảm bảo chất lượng được tích hợp vào khung Scrum. Các đội ngũ xác định được yêu cầu tại thời điểm bắt đầu mỗi chu kỳ Sprint. Các đội ngũ cũng có thể đánh giá toàn diện vòng đời của phần mềm hoặc sản phẩm đồng thời xác định điều kiện hoàn thành công việc của cả đội. Điều này tức là các yêu cầu vẫn có sự liên quan và có thể đạt được trong một khung thời gian ngắn. Phản hồi định kỳ của Người phụ trách dự án và các đánh giá chu kỳ Sprint cho phép đội ngũ không ngừng cải thiện trong suốt dự án. 

Tăng lợi nhuận trên vốn đầu tư

Các Đội ngũ Scrum ưu tiên các yêu cầu dựa trên giá trị của khách hàng và phân tích rủi ro. Trọng tâm của họ là phát triển một sản phẩm công việc sơ cấp để có thể tung ra thị trường và thu thập phản hồi ban đầu của khách hàng. Hoạt động phát triển theo khung Scrum có đặc trưng là ít lỗi gây tốn kém hơn, hiệu quả làm việc nhóm và cách tiếp cận “nhanh chóng thất bại” tiết kiệm được chi phí trong dài hạn. 

Đội ngũ cảm thấy thoải mái hơn, làm việc năng suất hơn

Cấu trúc đội ngũ tự quản lý, tự tổ chức cho phép các thành viên làm việc sáng tạo và đổi mới hơn. Các thành viên có khả năng tổ chức công việc của mình một cách linh hoạt theo phong cách làm việc, tính cách và mục tiêu sống cá nhân của họ. Khi làm việc theo hướng đa chức năng, các thành viên có thể học được kỹ năng mới và hướng dẫn nhau. Do đó, Scrum đã tạo ra một môi trường hỗ trợ và tin tưởng, nâng cao động lực và tinh thần tổng thể của mọi người. 

Các chỉ số phù hợp cải thiện kết quả ước tính

Đội ngũ Scrum chọn chỉ số của riêng họ để đo lường hiệu quả dự án. Họ ước tính khung thời gian, ngân sách và chỉ số chất lượng dựa trên kinh nghiệm và năng lực của mình. Người phụ trách dự án có khả năng kiểm soát vì ước tính chỉ là tương đối. Các đội ngũ sẽ nhận được nhiều sự hỗ trợ hơn khi bắt đầu dự án và thường sẽ tăng tốc theo thời gian. Các bên liên quan đến dự án sẽ đánh giá sản phẩm công việc và cung cấp phản hồi thường xuyên để đảm bảo dự án diễn ra đúng tiến độ.

Sự khác biệt giữa Scrum và tính linh hoạt là gì?

Tính linh hoạt đề cập đến một lối tư duy hoặc cách nghĩ trong phát triển phần mềm. Đây là triết lý được áp dụng ở cấp độ tổ chức để đảm bảo mọi thành viên trong đội ngũ đều tập trung vào cải thiện không ngừng và mang lại giá trị cho khách hàng. Scrum là khung để hoàn thành công việc trong phạm vi tính linh hoạt. Scrum sử dụng tất cả những nguyên tắc cốt lõi của tính linh hoạt để xác định phương pháp tạo điều kiện thuận lợi cho dự án. Tuy nhiên, cần lưu ý rằng tính linh hoạt không phải lúc nào cũng đồng nghĩa với Scrum. Nhiều phương pháp khác nhau có cách tiếp cận linh hoạt đối với hoạt động quản lý dự án.

Làm thế nào để đội ngũ phát triển Scrum có thể áp dụng DevOps?

DevOps kết hợp các triết lý văn hóa, biện pháp thực hành và công cụ để tăng cường khả năng nhanh chóng ra mắt ứng dụng và dịch vụ của một tổ chức. DevOps loại bỏ rào ngăn cách giữa các đội ngũ vận hành và phát triển. Các kỹ sư làm việc trong toàn bộ vòng đời của ứng dụng, từ phát triển cho đến kiểm thử, triển khai và vận hành. Điều này góp phần phát triển một loạt những kỹ năng không bị giới hạn trong một chức năng duy nhất.
 
Các Đội ngũ Scrum ở vị trí thuận lợi để áp dụng DevOps. Họ đã có sẵn tính chất đa chức năng và lặp lại. Một số ý tưởng tích hợp DevOps bao gồm:
  • Tự động hóa việc kiểm thử phần mềm và viết các bài kiểm thử mới cho mọi hoạt động phát triển tính năng
  • Sử dụng một tập hợp công nghệ và các công cụ hỗ trợ triển khai liên tục
  • Áp dụng những thay đổi đối với hoạt động sản xuất ở cuối mỗi chu kỳ Sprint
AWS DevOps mang đến nhóm dịch vụ linh hoạt được thiết kế để giúp bạn xây dựng và phân phối sản phẩm một cách nhanh chóng, đáng tin cậy. Bắt đầu sử dụng bằng cách thiết lập một tài khoản AWS miễn phí ngay hôm nay.

Các bước tiếp theo trên AWS

Tham khảo các tài nguyên bổ sung liên quan đến sản phẩm
Tìm hiểu thêm về Scrum tại AWS 
Đăng ký tài khoản miễn phí

Nhận ngay quyền sử dụng Bậc miễn phí của AWS.

Đăng ký 
Bắt đầu xây dựng trong bảng điều khiển

Bắt đầu xây dựng trong AWS Management Console.

Đăng nhập