Scrum: Giới thiệu nhanh

Scrum (Đội Rugby), một mô hình phát triển phần mềm là một loại phát triển linh hoạt, đã dần trở nên phổ biến trong mười năm qua.

Giả định cơ bản của Scrum

Phát triển phần mềm giống như phát triển một sản phẩm mới. Các quy trình cuối cùng của một sản phẩm phần mềm không thể được xác định từ đầu. Quá trình này yêu cầu R&D, sự sáng tạo, thử nghiệm và sai sót, vì vậy không có quy trình cố định nào có thể đảm bảo thành công của dự án.

Scrum so sánh một đội phát triển phần mềm với một đội bóng đá. Nó có một mục tiêu rõ ràng và cao nhất, quen thuộc với mô hình và công nghệ tốt nhất cần thiết trong quá trình phát triển, có mức độ tự chủ cao, giao tiếp và hợp tác chặt chẽ, và đảm bảo giải quyết các thách thức khác nhau mỗi ngày với mức độ linh hoạt cao; Mỗi giai đoạn có tiến trình rõ ràng hướng tới mục tiêu.

Quy trình Scrum

Quy trình phát triển Scrum thường bắt đầu với một giai đoạn 30 ngày (hoặc ngắn hơn), bắt đầu với việc xác định yêu cầu sản phẩm mới của khách hàng, với đội phát triển và khách hàng chọn những phần nào của đặc tả để hoàn thành vào đầu mỗi giai đoạn, đội phát triển phải cố gắng hết sức để cung cấp kết quả sau 30 ngày, và đội họp 15 phút mỗi ngày để xem xét tiến độ và lịch trình của từng thành viên, hiểu những khó khăn gặp phải và cố gắng khắc phục.

Lợi ích của phương pháp Agile

Lợi ích của Scrum so với mô hình phát triển truyền thống.Một đặc điểm nổi bật của mô hình Scrum là nó phản ứng với những thay đổi. Nó có thể phản ứng với những thay đổi một cách nhanh chóng nhất có thể.

Khi một hệ thống truyền thống tập trung vào lập kế hoạch trước, nơi các yếu tố như chi phí, phạm vi và thời gian được coi trọng, phương pháp linh hoạt nhấn mạnh vào làm việc nhóm, hợp tác với khách hàng và tính linh hoạt. Khi các yêu cầu thay đổi, đội ngũ linh hoạt có thể duy trì tính di động và có khả năng phản ứng với những thay đổi đó. Tuy nhiên, điều đó không nhất thiết có nghĩa là chiến lược lập kế hoạch thích ứng luôn tốt hơn chiến lược lập kế hoạch dự đoán. Hãy so sánh hai chiến lược phát triển dự án này một cách chi tiết hơn.

Do đó, phương pháp phát triển truyền thống (thác nước, còn được gọi là phương pháp lập kế hoạch) là tuyến tính, với tất cả các giai đoạn của quá trình diễn ra theo thứ tự. Phương pháp này phụ thuộc vào các công cụ có thể dự đoán và các kinh nghiệm có thể dự đoán. Mỗi dự án theo cùng một vòng đời, bao gồm tính khả thi, lập kế hoạch, thiết kế, xây dựng, kiểm tra, sản xuất, hỗ trợ, và nhiều hơn nữa, như được hiển thị dưới đây.

Toàn bộ dự án được lập kế hoạch trước mà không có chỗ cho việc thay đổi yêu cầu, ví dụ như PMBOK và PRINCE2 của PMI rất nghiêm ngặt và được kiểm soát cao. Chúng phác thảo các giai đoạn khác nhau của lập kế hoạch dự án từ đầu đến cuối và giả định rằng bạn đã có tất cả các yêu cầu và thông tin cần thiết từ trước.

Agile được coi là một chiến lược phát triển phần mềm hiện đại hơn, vì nó chủ yếu được thiết kế để khắc phục một số nhược điểm của phương pháp thác nước dự đoán. Đây là một mô hình phát triển phần mềm khuyến khích phát triển và kiểm tra lặp đi lặp lại trong suốt vòng đời phát triển phần mềm của một dự án.

Tổng quan về Quy trình Scrum

Scrum là một khuôn khổ quy định vai tròsự kiệntài liệu, và các quy tắc/hướng dẫn để thực hiện tư duy đó. Nói cách khác, Agile là tư duy và Scrum là khuôn khổ quy định một quy trình để thực hiện triết lý linh hoạt.

Scrum và agile không giống nhau nhưng scrum là một trong những quy trình agile. Chúng dựa trên phát triển lặp đi lặp lại. Các yêu cầu và giải pháp của agile đạt được thông qua sự kết hợp giữa các đội đa chức năng và tự tổ chức, và khi được thực hiện đúng cách có thể giúp các đội giải quyết các vấn đề phức tạp bằng cách cung cấp dần dần các sản phẩm có giá trị cao nhất trong khi giảm thiểu rủi ro.

Scrum liên quan đến việc kiểm tra và điều chỉnh kịp thời, làm việc nhóm được nâng cao bởi triết lý lãnh đạo, trách nhiệm và tự tổ chức, các phương pháp tốt nhất trong kỹ thuật giúp trong việc cung cấp phần mềm chất lượng cao kịp thời.

Thuật ngữ chính của Scrum

Danh sách công việc: tất cả các nhiệm vụ có thể dự đoán, bao gồm tất cả các nhiệm vụ chức năng và phi chức năng.

Sprint: Thời gian cho một phát triển thế hệ, thường tối đa là 30 ngày như một chu kỳ. Trong thời gian này, đội phát triển cần hoàn thành một danh sách công việc đã được lập, và kết quả cuối cùng là một sản phẩm có thể giao được và gia tăng.

Danh sách công việc Sprint: Các nhiệm vụ cần hoàn thành trong một chu kỳ sprint.

Thời gian giới hạn: Một khoảng thời gian cho cuộc họp. Ví dụ, thời gian giới hạn của mỗi cuộc họp scrum hàng ngày là 15 phút.

Cuộc họp lập kế hoạch Sprint: Được tổ chức trước khi bắt đầu mỗi sprint. Thường là một ngày (8 giờ). Nhiệm vụ được lập trong cuộc họp này là: chủ sở hữu sản phẩm và các thành viên trong đội phân tích danh sách công việc thành các mô-đun chức năng nhỏ, quyết định có bao nhiêu mô-đun chức năng nhỏ cần hoàn thành trong sprint sắp tới, và xác định ưu tiên nhiệm vụ của Danh sách Công việc Sản phẩm này. Ngoài ra, cuộc họp cần thảo luận chi tiết cách hoàn thành các mô-đun chức năng nhỏ này theo yêu cầu. Khối lượng công việc của các mô-đun này được tính bằng giờ.

Cuộc họp Scrum hàng ngày: được tổ chức bởi các thành viên trong đội phát triển, thường là 15 phút. Mỗi thành viên phát triển cần báo cáo ba dự án cho Scrum Master: Hôm nay đã hoàn thành gì? Bạn có gặp trở ngại không? Bạn sẽ làm gì? Thông qua cuộc họp này, các thành viên trong đội có thể hiểu tiến độ của dự án với nhau.

Cuộc họp đánh giá Sprint: Sau mỗi Sprint, đội sẽ trình bày kết quả của Sprint cho Chủ sở hữu sản phẩm và các nhân sự liên quan khác. Thông thường, cuộc họp này kéo dài 4 giờ.

Cuộc họp hồi tưởng Sprint diễn ra sau khi Đánh giá Sprint và trước khi bắt đầu Lập kế hoạch Sprint. Đây là một cuộc họp tối đa ba giờ cho một tháng Sprints. Phiên hồi tưởng cơ bản là một cuộc họp “cải tiến” được tổ chức để tìm ra cách thức và phương tiện để xác định những cạm bẫy tiềm ẩn, những sai lầm trong quá khứ, và tìm kiếm những cách mới để tránh những sai lầm đó, mà tất cả mọi người đều tham dự — chủ sản phẩmngười quản lý scrum, các thành viên trong nhóm phát triển, và tùy chọn với các bên liên quan.

Người quản lý Scrum:Một thành viên trong nhóm chịu trách nhiệm giám sát toàn bộ quy trình Scrum và điều chỉnh kế hoạch.

Chủ sản phẩm người sở hữu sản phẩm thay mặt cho công ty là một phần của nhóm Scrum. Tuy nhiên, một chủ sản phẩm không có quyền hạn đối với các thành viên khác trong nhóm, giống như Người quản lý Scrum. Một Chủ sản phẩm chịu trách nhiệm chăm sóc một sản phẩm trong một khoảng thời gian dài và phải chịu trách nhiệm về việc đạt được thành công của sản phẩm. Là chủ sản phẩm, bạn nên tương tác trực tiếp với khách hàng và người dùng, nhóm phát triển, và các bên liên quan chính khác, như hình ảnh dưới đây cho thấy.

Một Scrum Nhóm là một tập hợp các cá nhân (thường từ năm đến chín thành viên) làm việc cùng nhau để cung cấp các phần sản phẩm cần thiết. Khung Scrum khuyến khích một mức độ giao tiếp cao giữa các thành viên trong nhóm, để nhóm có thể:

  • Theo đuổi một mục tiêu chung
  • tuân thủ các quy tắc và chuẩn mực giống nhau
  • tôn trọng lẫn nhau

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

Một quy trình Scrum được phân biệt với các quy trình linh hoạt khác bởi các khái niệm và thực tiễn cụ thể, được chia thành ba loại vai trò (chủ sản phẩmngười quản lý scrum, nhóm phát triển và các bên liên quan khác), sự kiện, sản phẩm, và quy tắc.

Để bắt đầu một quy trình Scrum, một chủ sản phẩm tạo ra một danh sách mong muốn được ưu tiên gọi là danh sách tồn đọng sản phẩm. Trong lập kế hoạch sprintdanh sách tồn đọng được đánh giá về độ phức tạp và giá trị kinh doanh (ưu tiên). Chủ sản phẩm (khách hàng) và nhóm phát triển xác định các mục trong danh sách tồn đọng nào sẽ được thêm vào sprint. Nhóm có một khoảng thời gian nhất định (gọi là sprint, thường là từ hai đến bốn tuần) để hoàn thành công việc của mình, nhưng nhóm họp mỗi ngày để đánh giá tiến độ của mình (Scrum hàng ngày). Trên đường đi, Người quản lý Scrum giữ cho nhóm tập trung vào mục tiêu của mình. Vào cuối sprint, nhóm xem xét tiến độ của họ, cho khách hàng xem sản phẩm hoạt động, và xem xét những gì đã diễn ra tốt đẹp hoặc những gì họ cần cải thiện cho sprint tiếp theo. Sau đó, chu kỳ lặp lại.

This post is also available in Deutsch, English, Español, فارسی, Français, Bahasa Indonesia, 日本語, Polski, Portuguese, Ру́сский, 简体中文 and 繁體中文.

Leave a Reply

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *