Lộ trình phát hành Scrum là gì?

Mục đích của kế hoạch phát hành là nêu rõ thời điểm các tính năng khác nhau hoặc sản phẩm sẽ được giao cho khách hàng, giúp Scrumđội có thể trao đổi về lộ trình và lịch giao hàng cho sản phẩm đang phát triển. Thông qua lập kế hoạch dài hạn, đội có thể đáp ứng kỳ vọng của Người sở hữu sản phẩmvà các bên liên quan dự án, đồng thời giúp trả lời các câu hỏi quan trọng như:
  • Chúng tôi sẽ hoàn thành khi nào?
  • Tôi có thể có những tính năng nào vào cuối năm?
  • Chi phí này sẽ là bao nhiêu?
  • Xác định các mốc thời gian và cột mốc quan trọng
  • Điều phối các mốc thời gian phát triển cho các hệ thống phụ thuộc
  • Giúp cân bằng giá trị kinh doanh và chất lượng tổng thể trong giới hạn phạm vi, tiến độ và ngân sách

Các mẫu kế hoạch phát hành

Nhiều tổ chức có nhịp điệu riêng trong việc phát hành sản phẩm đến khách hàng. Một số chọn phát hành sau mỗi Sprint. Một số khác nhóm kết quả của nhiều Sprint thành một phiên bản duy nhất, như minh họa trong sơ đồ bên dưới. Một số khác phát hành ngay lập tức sau khi mỗi tính năng hoàn thành—phương pháp này thường được gọi là triển khai liên tục hoặc giao hàng liên tục.
Definition of Ready
Định nghĩa về sẵn sàng
Một kế hoạch phát hành là một lộ trình phản ánh kỳ vọng về những tính năng nào sẽ được triển khai và khi nào sẽ hoàn thành. Tùy thuộc vào chiến lược phát triển, nó có thể là định hướng theo tính năng—nơi mục tiêu là đưa ra một phiên bản khi một tập hợp các tính năng được xác định trước đã được phát triển—hoặc định hướng theo ngày, nơi phát hành diễn ra tại một điểm kiểm tra được xác định trước. Nếu dự án theo hướng tính năng, tổng số lượng tất cả các tính năng trong một phiên bản có thể được chia cho tốc độđể ước tính số Sprint cần thiết để hoàn thành các tính năng được yêu cầu.

Bạn có cần một kế hoạch phát hành trước không?

Lập kế hoạch phát hành là một chủ đề gây tranh cãi trong Agile. Mặc dù chúng ta thường được yêu cầu cung cấp dự báo về chi phí và tiến độ trong thế giới kinh doanh, Scrum không khuyến nghị tạo ra một kế hoạch phát hành cứng nhắc và được xác định trước. Dưới đây là một số lý do phản đối việc lập kế hoạch phát hành từ đầu:
  • Khách hàng thường không thấy giá trị trong các kế hoạch phát hành và coi chúng là lãng phí
  • Những thay đổi nhanh chóng trong nhiều lĩnh vực xác nhận nguyên tắc “Bạn sẽ không cần đến nó” (YAGNI)—nghĩa là việc lập kế hoạch trước cho các phiên bản là không cần thiết
  • Do đó, giá trị duy nhất trong một kế hoạch phát hành có thể chỉ là ngày khởi đầu và ngân sách—không có gì hơn

Tại sao chúng ta vẫn cần lập kế hoạch phát hành?

Tuy nhiên, các mốc giao hàng thực tế trong môi trường Agile thường không đạt được các mục tiêu đã hứa. Tuy nhiên, việc có một lộ trình phát hành tổng quát có thể xây dựng niềm tin và đặt kỳ vọng giữa đội của bạn và các bên liên quan. Ngoài ra, một phiên bản cần tính đến tất cả công việc bổ sung phải hoàn thành, chẳng hạn như cập nhật trang web công cộng và đào tạo đội ngũ hỗ trợ khách hàng. Dưới đây là những lý do chính để thực hiện lập kế hoạch phát hành trong Scrum:
  • Giao tiếp
  • Công cụ lập kế hoạch
  • Xác minh giá trị so với chi phí
  • Đặt bối cảnh tổng thể

Ví dụ về lập kế hoạch phát hành:

Các kế hoạch phát hành có nhiều định dạng khác nhau. Dưới đây là một ví dụ về lập kế hoạch dựa trên tính năng/dữ liệu:
Release Planning Example
Ví dụ về lập kế hoạch phát hành
Nếu dự án dựa trên thời hạn, chúng ta có thể đơn giản nhân tốc độ với số lượng Sprint để xác định tổng khối lượng công việc có thể hoàn thành trong một khoảng thời gian nhất định.
Release Planning Driven by Velocity
Lập kế hoạch phát hành dựa trên tốc độ
Một kế hoạch phát hành không phải là tài liệu tĩnh—nó cần được xem xét và cập nhật thường xuyên khi chúng ta quản lý Danh sách sản phẩm. Khi có thêm thông tin mới (ví dụ: các mục trong danh sách sản phẩm Scrum được cập nhật hoặc điều chỉnh), kế hoạch phát hành cần được xem xét và điều chỉnh phù hợp.

Leave a Reply