Menu
ESC

Nhập từ khóa để tìm kiếm

↑↓ Di chuyển
Enter Mở
ESC Đóng

Đang tải...

Bài 30 — Sprint Goal Crafting Mastery

Advanced Scrum Master PSM II Bài 30/60

Mở đầu — vì sao bài này quan trọng

Nếu bạn hỏi mười Scrum Master "Sprint Goal là gì?", có lẽ chín người sẽ trả lời đúng định nghĩa trong Scrum Guide. Nhưng nếu bạn nhìn vào mười Sprint Goal thật mà các team của họ đang dùng, có lẽ tám trong số đó… không phải là Sprint Goal. Chúng chỉ là một danh sách công việc được viết lại cho có vẻ trang trọng: "Hoàn thành 8 user story", "Cải thiện chất lượng", "Làm phần checkout".

Đây là một trong những khoảng cách lớn nhất giữa một Scrum Master cấp PSM I và một người ở cấp PSM II. Ở cấp độ cao, bạn không chỉ biết Sprint Goal "nên có"; bạn hiểu rằng Sprint Goal chính là cơ chế tạo ra sự tập trung (focus), sự cam kết (commitment) và quyền tự chủ (autonomy) cho team. Một Sprint Goal tốt biến một nhóm người làm task rời rạc thành một đội ngũ cùng theo đuổi một mục tiêu chung. Nó là sợi dây kết nối Sprint với Product Goal, là tiêu chí để team đàm phán phạm vi khi gặp khó khăn, và là thứ Product Owner dùng để trình bày tại Sprint Review.

Trong Scrum Guide 2020, Sprint Goal được nâng lên thành một trong ba "commitment" của ba artifact: Product Backlog có Product Goal, Sprint Backlog có Sprint Goal, và Increment có Definition of Done. Điều đó nói lên tầm quan trọng của nó. Vậy mà rất nhiều team vẫn coi Sprint Goal là một dòng chữ phải điền cho đủ thủ tục. Bài học này tập trung hoàn toàn vào một kỹ năng: làm thế nào để chế tác (craft) một Sprint Goal thực sự có giá trị — và làm thế nào để bạn, với vai trò Scrum Master, coach Product Owner và Developers cùng tạo ra nó.

Khái niệm cốt lõi

Sprint Goal thực sự là gì

Sprint Goal là mục tiêu duy nhất (single objective) cho Sprint. Nó trả lời câu hỏi: "Tại sao Sprint này đáng để thực hiện?" Chứ không phải "Sprint này làm những gì?". Đây là điểm phân biệt cốt lõi — Sprint Goal nói về kết quả mong muốn (outcome), không phải về danh sách đầu ra (output).

Khi team chọn các Product Backlog Item cho Sprint, các item đó là phương tiện để đạt Goal, không phải bản thân Goal. Nếu giữa Sprint phát hiện một story không cần thiết để đạt Goal, team có thể bỏ nó. Nếu phát hiện cần thêm một việc chưa nằm trong kế hoạch để đạt Goal, team có thể thêm vào. Sprint Goal cố định, còn phạm vi cụ thể thì linh hoạt. Đó chính là lý do "Hoàn thành 8 story" không bao giờ là Sprint Goal đúng nghĩa — nó khóa cứng output và bỏ qua outcome.

Vì sao những Sprint Goal "xấu" lại xấu

Hãy mổ xẻ vài ví dụ kinh điển:

  • "Hoàn thành 8 user story." Đây là cam kết về số lượng, không phải về giá trị. Nếu hoàn thành 6 story nhưng giải quyết được vấn đề kinh doanh thì sao? Goal này khiến team đo lường sai và mất khả năng đàm phán phạm vi.
  • "Cải thiện chất lượng." Quá mơ hồ. Chất lượng nào? Đo bằng gì? Khi nào biết là đã đạt? Một Goal mà cuối Sprint không ai dám khẳng định "đạt" hay "không đạt" thì vô dụng.
  • "Làm phần checkout." Đây là một chủ đề (theme), không phải mục tiêu. "Làm" tới đâu? Để làm gì? Người dùng được lợi gì?
  • "Bàn giao các Backlog Item." Đây là mô tả lại định nghĩa của Sprint, không mang thông tin gì.
Điểm chung của các Goal xấu: chúng tập trung vào hoạt động chứ không vào kết quả, không kiểm chứng được, và không tạo ra lý do để team cùng nhau hy sinh hay đánh đổi.

Đặc điểm của một Sprint Goal tốt

Một Sprint Goal tốt thường có những tính chất sau:

  • Hướng kết quả (outcome-oriented): nói về sự thay đổi mà người dùng hoặc doanh nghiệp cảm nhận được.
  • Cô đọng và duy nhất: chỉ một mục tiêu, đủ để cả team thuộc lòng mà không cần nhìn bảng.
  • Kiểm chứng được: cuối Sprint có thể trả lời rõ ràng "đạt" hay "chưa đạt".
  • Tạo sự tập trung và cho phép đánh đổi: khi gặp khó, Goal giúp team biết việc nào quan trọng, việc nào có thể bỏ.
  • Kết nối với Product Goal: mỗi Sprint Goal là một bước tiến rõ ràng về phía mục tiêu sản phẩm lớn hơn.
Một khuôn mẫu hữu ích là tư duy theo công thức "Để [đối tượng/giá trị], chúng ta sẽ [thay đổi/khả năng mới], được kiểm chứng bằng [tín hiệu]." Ví dụ: "Để giảm tỷ lệ bỏ giỏ hàng, chúng ta cho phép khách thanh toán mà không cần tạo tài khoản, và xác nhận bằng việc 20 khách hàng thực hoàn tất đơn qua luồng mới."

Tình huống thực tế

Tình huống 1 — Tiki và bài toán bỏ giỏ hàng

Một team thuộc một sàn thương mại điện tử lớn ở Việt Nam (gọi là team Checkout của Tiki) liên tục đặt Sprint Goal kiểu "Hoàn thành các story của module thanh toán". Trong ba Sprint liền, họ giao đủ story, velocity ổn định 34–38 điểm, nhưng tỷ lệ bỏ giỏ hàng vẫn đứng ở mức 68%. Stakeholder bắt đầu hỏi: "Các bạn làm nhiều thế mà sao con số không nhúc nhích?"

Scrum Master nhận ra vấn đề không nằm ở năng suất mà ở việc team không có một outcome để hướng tới. Trong Sprint Planning kế tiếp, cô coach Product Owner đặt lại Goal: "Giảm ma sát ở bước thanh toán cho khách vãng lai — cho phép guest checkout và rút luồng thanh toán từ 5 bước xuống 3 bước, đo bằng tỷ lệ hoàn tất của nhóm khách chưa đăng nhập." Lập tức cuộc thảo luận thay đổi. Hai story về "tối ưu trang quản lý tài khoản" bị loại khỏi Sprint vì không phục vụ Goal. Một việc nhỏ nhưng quan trọng — tự động điền địa chỉ — được thêm vào dù ban đầu không có trong kế hoạch.

Kết quả: cuối Sprint, tỷ lệ hoàn tất của khách vãng lai tăng từ 22% lên 31%. Quan trọng hơn, tại Sprint Review, Product Owner trình bày được một câu chuyện rõ ràng thay vì đọc danh sách story.

Bài học: Khi Goal chuyển từ output sang outcome, team tự nhiên ra quyết định tốt hơn về việc làm gì và bỏ gì. Sprint Goal không chỉ định hướng — nó là công cụ ra quyết định ngay trong Sprint.

Tình huống 2 — Startup fintech và Sprint Goal "kỹ thuật thuần"

Một startup fintech ở TP.HCM có team backend đặt Sprint Goal: "Migrate database từ MySQL sang PostgreSQL." Thoạt nhìn có vẻ ổn — cụ thể, kiểm chứng được. Nhưng Scrum Master đặt câu hỏi đắt giá trong Planning: "Nếu migrate xong mà người dùng không cảm nhận được gì, tại sao Sprint này đáng giá hơn việc khác ta có thể làm?"

Câu hỏi đó mở ra một cuộc thảo luận. Hóa ra lý do thật sự cần migrate là vì hệ thống hiện tại không chịu nổi tải khi phát hành lương cuối tháng, gây timeout cho hàng nghìn người dùng. Goal được viết lại: "Đảm bảo hệ thống xử lý được đỉnh tải ngày trả lương (mục tiêu 3.000 giao dịch/phút không timeout), trong đó việc chuyển sang PostgreSQL là phương án kỹ thuật chính."

Sự thay đổi nhỏ về câu chữ tạo ra khác biệt lớn: team thêm vào Sprint một bài kiểm thử tải (load test) để chứng minh Goal đạt được — điều mà phiên bản "migrate database" thuần túy không bao giờ ép họ phải làm. Cuối Sprint, họ không chỉ migrate xong mà còn chứng minh được hệ thống chịu được 3.200 giao dịch/phút.

Bài học: Ngay cả những Sprint nặng kỹ thuật cũng có outcome đằng sau. Nhiệm vụ của Scrum Master là giúp team đào tới cái "tại sao" đó, vì chính nó định nghĩa thế nào là "xong".

Tình huống 3 — Team mới và cái bẫy gộp nhiều mục tiêu

Một team agency phần mềm nhận dự án cho khách hàng Singapore. Trong Sprint đầu, Product Owner đề xuất Goal: "Hoàn thành đăng nhập, tích hợp thanh toán, và thiết kế trang dashboard." Ba mục tiêu trong một dòng. Scrum Master cảnh báo đây không phải một Goal mà là ba — và khi có ba ưu tiên thì thực chất không có ưu tiên nào.

Anh dùng một bài tập đơn giản: hỏi cả team "Nếu chỉ kịp làm xong một trong ba việc này, việc nào khiến Sprint vẫn được coi là thành công?". Câu trả lời đồng thuận là "thanh toán", vì đó là thứ khách hàng cần để demo cho nhà đầu tư. Goal được chốt: "Cho phép khách hàng thực hiện một giao dịch thanh toán đầu-cuối thành công trên môi trường staging, sẵn sàng để demo với nhà đầu tư." Đăng nhập và dashboard vẫn nằm trong Sprint Backlog như công việc hỗ trợ, nhưng không còn là mục tiêu cạnh tranh.

Bài học: Một Sprint, một Goal. Khi bị cám dỗ gộp nhiều mục tiêu, hãy dùng câu hỏi "nếu chỉ làm được một thì là gì?" để buộc team lựa chọn ưu tiên thật sự.

Hướng dẫn từng bước

Dưới đây là quy trình thực tế để chế tác Sprint Goal cùng team, áp dụng được ngay trong Sprint Planning:

Bước 1 — Bắt đầu từ Product Goal, không phải từ Backlog. Trước khi nhìn vào các story, hãy hỏi: "Bước tiến lớn nhất về phía Product Goal mà Sprint này có thể tạo ra là gì?" Điều này đảo ngược thói quen sai phổ biến là chọn story trước rồi viết Goal sau cho khớp.

Bước 2 — Để Product Owner đề xuất outcome, không phải output. Coach PO trình bày vấn đề kinh doanh hoặc giá trị người dùng cần đạt, thay vì danh sách tính năng. Bạn có thể gợi ý: "Nếu Sprint này thành công rực rỡ, người dùng/doanh nghiệp sẽ cảm nhận được điều gì khác?"

Bước 3 — Thử nghiệm Goal bằng câu hỏi kiểm chứng. Đặt ba câu hỏi: (a) Cuối Sprint, làm sao biết Goal đạt hay không? (b) Goal này cho phép ta đánh đổi phạm vi khi gặp khó không? (c) Có thể đọc Goal mà không cần nhìn danh sách story không? Nếu một câu trả lời "không", hãy mài lại.

Bước 4 — Để Developers phản biện tính khả thi. Goal phải đủ tham vọng để tạo động lực nhưng đủ thực tế để đạt được. Developers là người đánh giá điều này. Đây là cuộc đàm phán hai chiều giữa "điều ta muốn" (PO) và "điều ta làm được" (Developers).

Bước 5 — Chọn Product Backlog Item phục vụ Goal. Bây giờ mới chọn story — và mỗi story phải trả lời được câu hỏi "việc này giúp đạt Goal như thế nào?". Story nào không trả lời được thì cân nhắc loại ra.

Bước 6 — Viết Goal ở dạng ngắn gọn, dán nơi ai cũng thấy. Một Goal tốt nên đủ ngắn để cả team nhớ. Đặt nó lên đầu bảng Sprint, nhắc lại mỗi Daily Scrum: "Hôm nay chúng ta có đang tiến gần Goal hơn không?"

Bước 7 — Dùng Goal làm la bàn suốt Sprint. Khi có yêu cầu thay đổi phạm vi giữa Sprint, dùng Goal làm tiêu chí: thay đổi này có giúp đạt Goal nhanh hơn hay làm chệch hướng?

Lỗi thường gặp & mẹo

Lỗi 1 — Viết Goal sau khi đã chọn xong story. Đây là cái bẫy phổ biến nhất. Goal trở thành bản tóm tắt của danh sách công việc thay vì kim chỉ nam. Mẹo: ép thứ tự ngược lại — Goal trước, story sau.

Lỗi 2 — Goal là danh sách trá hình. "Làm A, B, C và D" không phải một Goal. Mẹo: dùng câu hỏi "nếu chỉ làm được một việc thì việc nào?" để tìm ra mục tiêu thật.

Lỗi 3 — Goal không kiểm chứng được. "Cải thiện", "tối ưu", "nâng cao" mà không kèm tín hiệu đo lường. Mẹo: luôn gắn một câu "biết là đạt khi…".

Lỗi 4 — Goal quá an toàn hoặc quá viển vông. Goal quá dễ thì không tạo focus; quá khó thì team buông xuôi giữa chừng. Mẹo: nhắm tới mức "thử thách nhưng tin là làm được", và để Developers hiệu chỉnh.

Lỗi 5 — Coi Goal là việc của riêng Product Owner. Sprint Goal là sản phẩm của cả Scrum Team. Nếu Developers không tham gia tạo ra nó, họ sẽ không cảm thấy cam kết với nó. Mẹo: dành thời gian co-create trong Planning, đừng để PO mang Goal "đóng gói sẵn" tới.

Lỗi 6 — Quên Goal ngay sau Planning. Nếu Goal chỉ xuất hiện một lần rồi biến mất, nó vô dụng. Mẹo: nhắc Goal mỗi Daily, và mở đầu Sprint Review bằng việc đánh giá Goal đã đạt tới đâu.

Một mẹo nâng cao cho cấp PSM II: với những Sprint mang tính khám phá (discovery, spike, nghiên cứu), Goal vẫn có thể hướng kết quả bằng cách định nghĩa "câu hỏi cần trả lời" hoặc "quyết định cần đưa ra". Ví dụ: "Đủ dữ liệu để quyết định có nên tự xây hệ thống đề xuất hay dùng dịch vụ bên thứ ba." Outcome ở đây là một quyết định, không phải một tính năng.

Bài tập thực hành

Bài 1 — Chẩn đoán Goal xấu. Lấy 3 Sprint Goal gần nhất của team bạn (hoặc dùng các ví dụ trong bài). Với mỗi cái, trả lời: Nó là outcome hay output? Có kiểm chứng được không? Có cho phép đánh đổi phạm vi không? Chấm điểm từng cái trên thang 1–5.

Bài 2 — Viết lại. Chọn một Goal xấu nhất từ Bài 1 và viết lại theo công thức "Để [giá trị], chúng ta sẽ [thay đổi], kiểm chứng bằng [tín hiệu]." So sánh hai phiên bản và ghi lại điều bạn nhận thấy khác biệt.

Bài 3 — Mô phỏng Planning. Trong Sprint Planning tới, thử quy trình 7 bước ở trên. Cố tình đặt câu hỏi "nếu chỉ làm được một việc thì việc nào?" và quan sát cuộc thảo luận thay đổi ra sao. Ghi lại Goal trước và sau khi áp dụng.

Bài 4 — Kiểm tra giữa Sprint. Vào giữa Sprint hiện tại, hỏi cả team: "Không nhìn bảng, ai có thể nói lại Sprint Goal?" Nếu phần lớn không nhớ được, đó là tín hiệu Goal chưa đủ rõ hoặc chưa được nhắc đủ. Lên kế hoạch khắc phục.

Tóm tắt

Sprint Goal không phải dòng chữ điền cho đủ thủ tục — nó là cơ chế tạo focus, commitment và quyền tự chủ cho cả Scrum Team. Sự khác biệt cốt lõi giữa Goal tốt và Goal xấu là outcome thay vì output: một Goal tốt nói về sự thay đổi mà người dùng hoặc doanh nghiệp cảm nhận, kiểm chứng được, duy nhất, và cho phép team đánh đổi phạm vi khi cần.

Những Goal như "Hoàn thành 8 story", "Cải thiện chất lượng" hay "Làm phần checkout" thất bại vì chúng khóa cứng đầu ra, mơ hồ, hoặc gộp nhiều mục tiêu. Cách chữa là: bắt đầu từ Product Goal, để PO đề xuất outcome, kiểm chứng Goal bằng ba câu hỏi (đo được không, đánh đổi được không, nhớ được không), để Developers phản biện khả thi, rồi mới chọn story phục vụ Goal.

Với vai trò Scrum Master cấp PSM II, giá trị bạn mang lại không nằm ở việc tự viết Goal hộ team, mà ở việc đặt đúng câu hỏi để cả team cùng chế tác ra một Goal đáng theo đuổi — và giữ cho Goal đó sống động suốt Sprint như một chiếc la bàn thật sự.