Menu
ESC

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

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

Đang tải...

Bài 27 — Scrum and Product Discovery

Advanced Scrum Master PSM II Bài 27/60

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

Có một câu hỏi mà tôi luôn đặt ra cho các Scrum Master trong lớp PSM II: "Đội của bạn rất giỏi giao hàng đúng hạn. Nhưng bạn có chắc những thứ họ giao đúng là những thứ đáng giao không?"

Hầu hết im lặng. Vì đó chính là điểm mù lớn nhất của Scrum khi triển khai non tay: chúng ta tối ưu hóa cho việc làm ra sản phẩm (delivery) mà quên mất việc tìm ra cái đáng làm (discovery). Đội chạy Sprint đều như vắt chanh, velocity đẹp, burndown mượt — nhưng sáu tháng sau khách hàng không dùng tính năng nào cả. Đây không phải lỗi kỹ thuật. Đây là lỗi của một tổ chức chỉ biết build mà không biết discover.

Với Scrum Master cấp PSM II, bạn được kỳ vọng phải nhìn ra điều này và giúp đội thoát khỏi cái bẫy "feature factory" — nhà máy sản xuất tính năng. Bài học này nói về cách Scrum kết hợp với Product Discovery, cụ thể là mô hình Dual-Track của Marty Cagan, để đội không chỉ làm nhanh mà còn làm đúng. Đây là một trong những chủ đề phân biệt rõ ràng giữa một Scrum Master "chạy ceremony" và một Scrum Master thực sự tạo ra giá trị kinh doanh.

Lưu ý: bài này tập trung vào mối quan hệ giữa discovery và Scrum delivery. Việc thiết kế Sprint Goal, refinement chi tiết hay cách viết powerful questions thuộc về các bài khác. Ở đây chúng ta nhìn ở tầng "what to build".

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

Discovery và Delivery — hai dòng công việc song song

Marty Cagan (tác giả Inspired, đồng sáng lập Silicon Valley Product Group) đưa ra một cách nhìn rất rõ ràng:

  • Discovery (Khám phá) — trả lời câu hỏi WHATWHY: Chúng ta nên xây cái gì? Vấn đề của khách hàng có thật không? Giải pháp này có khả thi và có giá trị không? Đây là công việc giảm thiểu rủi ro trước khi tốn công sức kỹ thuật.
  • Delivery (Giao hàng) — trả lời câu hỏi HOW: Xây cái đã được xác nhận đó một cách chất lượng, có thể release được, đáng tin cậy. Đây chính là phần Scrum truyền thống làm rất tốt — biến Product Backlog Item thành Increment.
Điểm mấu chốt mà nhiều người hiểu sai: Discovery không phải là một "giai đoạn" xảy ra trước Delivery. Nó không phải kiểu "tháng đầu discovery, rồi từ tháng hai trở đi delivery". Cả hai diễn ra liên tục và song song trong suốt vòng đời sản phẩm. Đó là lý do người ta gọi là Dual-Track — hai đường ray chạy cùng lúc.

Bốn rủi ro mà Discovery phải gỡ

Cagan nói Discovery tồn tại để gỡ bốn loại rủi ro trước khi đội bỏ công xây dựng:

  • Value risk (Rủi ro giá trị) — Khách hàng có thực sự muốn/mua cái này không?
  • Usability risk (Rủi ro khả dụng) — Người dùng có biết cách dùng không?
  • Feasibility risk (Rủi ro khả thi) — Đội kỹ thuật có làm được với công nghệ/thời gian hiện có không?
  • Business viability risk (Rủi ro kinh doanh) — Giải pháp có phù hợp với pháp lý, tài chính, thương hiệu, vận hành của công ty không?
Một Product Backlog Item lý tưởng nên là thứ đã được "rửa" qua bốn câu hỏi này — nghĩa là rủi ro đã được kiểm chứng bằng prototype, phỏng vấn, thử nghiệm, chứ không phải vì sếp bảo làm.

Mối liên hệ với khung Scrum

Scrum Guide không dùng từ "discovery", nhưng nếu đọc kỹ, tinh thần discovery nằm khắp nơi:

  • Product Backlog là một artifact "sống" — nó liên tục được refine và sắp xếp lại dựa trên những gì ta học được. Discovery chính là nguồn cung cấp insight để định hình backlog đó.
  • Empiricism (chủ nghĩa thực nghiệm) — Scrum dựa trên ba trụ cột: minh bạch, thanh tra, thích nghi. Discovery là cách ta thanh tra giả định về giá trị chứ không chỉ thanh tra sản phẩm đã làm.
  • Sprint Review không chỉ để demo cái đã xây — nó là điểm thu thập feedback để feed ngược lại track discovery.
  • Product Owner là người chịu trách nhiệm tối đa hóa giá trị, nên về lý thuyết PO là chủ của discovery. Nhưng thực tế, PO không làm một mình — cần cả designer, vài lập trình viên giỏi, và Scrum Master tạo điều kiện.

Vai trò của Scrum Master trong Dual-Track

Đây là phần quan trọng với bạn. Scrum Master không tự làm discovery thay PO, nhưng bạn:

  • Giúp đội dành dung lượng (capacity) cho discovery — ví dụ dành 10–20% thời gian Sprint cho việc kiểm chứng giả định, không nhồi 100% vào delivery.
  • Giúp tổ chức hiểu rằng "spike", prototype, phỏng vấn khách hàng là công việc hợp lệ, không phải "lãng phí".
  • Bảo vệ đội khỏi áp lực "cứ build cho nhiều vào" từ stakeholder.
  • Tạo điều kiện cho các buổi làm việc giữa PO, designer và developer — vì discovery tốt nhất khi cả ba góc nhìn (giá trị, trải nghiệm, kỹ thuật) cùng ngồi lại.

Tình huống thực tế

Tình huống 1 — Tiki và cái bẫy feature factory

Giả định một đội tại một sàn thương mại điện tử lớn của Việt Nam (lấy cảm hứng từ bối cảnh Tiki). Đội "Trang sản phẩm" chạy Scrum rất kỷ luật: velocity ổn định 45 điểm/Sprint, 12 Sprint liên tiếp không trượt cam kết. Lãnh đạo khen ngợi. Nhưng khi PO mới về, cô phát hiện trong 6 tháng đội đã ship 30 tính năng, mà chỉ 4 tính năng có người dùng thực sự chạm vào theo dữ liệu analytics. 26 tính năng kia gần như chết.

Diễn giải: Đội này có delivery xuất sắc nhưng zero discovery. Họ nhận backlog từ phòng kinh doanh, chuyển thành story, làm sạch sẽ, ship. Không ai hỏi "khách hàng có cần cái này không" trước khi build. Scrum Master cũ tự hào về velocity mà không nhận ra mình đang điều hành một nhà máy sản xuất phế phẩm rất hiệu quả.

Scrum Master mới đề xuất: mỗi Sprint dành ra một "discovery slot" — 2 ngày cho PO + 1 designer + 2 dev đi phỏng vấn 5 khách hàng và làm prototype giấy cho tính năng tiếp theo trước khi đưa vào backlog. Sau 3 Sprint, tỷ lệ tính năng "có người dùng" tăng từ 13% lên 60%, và quan trọng hơn, đội bắt đầu từ chối xây những thứ không qua được kiểm chứng.

Bài học: Velocity cao mà không có discovery là tối ưu hóa nhầm thứ. Việc đầu tiên của bạn không phải làm đội nhanh hơn, mà giúp đội chắc chắn mình đang làm đúng việc.

Tình huống 2 — Startup fintech và việc kiểm chứng trước khi code

Một startup fintech ở TP.HCM (khoảng 25 người) muốn làm tính năng "trả góp khi mua sắm" (Buy Now Pay Later). Bình thường họ sẽ ước tính 3 tháng dev. Scrum Master gợi ý chạy discovery trước trong khi track delivery vẫn xử lý các việc khác.

Trong 2 tuần discovery: PO + 1 designer làm một prototype Figma bấm được, đem cho 15 người dùng thật thử, đồng thời dựng một "landing page giả" (fake door test) để đo tỷ lệ bấm nút "Đăng ký trả góp". Kết quả: chỉ 4% bấm, và phỏng vấn cho thấy người dùng sợ nợ và không tin tưởng. Value risk quá cao.

Diễn giải: Nếu không có track discovery, đội đã đốt 3 tháng × 5 người để xây một thứ thị trường không muốn. Thay vào đó, họ tiêu 2 tuần × 2 người và học được sự thật đắt giá với chi phí rẻ. Đội xoay hướng sang tính năng "chia nhỏ hóa đơn cho nhóm bạn" — vốn ra đời từ chính các cuộc phỏng vấn — và lần này fake door test đạt 22% click.

Bài học: Discovery không làm chậm đội. Nó tiết kiệm thời gian bằng cách giết những ý tưởng tồi khi chúng còn rẻ. "Fail cheap" trong discovery để "win big" trong delivery.

Tình huống 3 — Khi discovery và delivery lệch nhịp

Một công ty SaaS B2B ở Singapore có hai track nhưng tổ chức sai: nhóm "discovery" (gồm PO và designer) chạy trước delivery tận 4 Sprint. Họ thiết kế hàng loạt thứ rất đẹp, rồi "ném qua tường" cho đội dev. Kết quả: dev liên tục phát hiện những thiết kế đó bất khả thi về kỹ thuật hoặc tốn gấp 5 lần ước tính. Hàng đống công discovery thành công cốc.

Diễn giải: Đây là lỗi kinh điển — biến Dual-Track thành "two silos" (hai ốc đảo). Discovery tách rời khỏi delivery thì rủi ro feasibility không bao giờ được kiểm chứng cho đến khi quá muộn. Scrum Master can thiệp bằng cách kéo 1–2 engineer vào ngay từ các buổi discovery, để feasibility được kiểm tra song song với value. "Big design up front" bị loại bỏ; discovery chỉ chạy trước delivery tối đa 1 Sprint.

Bài học: Dual-Track chỉ hiệu quả khi cùng một đội sở hữu cả hai track, không phải hai nhóm người khác nhau. Discovery mà thiếu tiếng nói kỹ thuật là discovery dở dang.

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

Đây là cách bạn — với tư cách Scrum Master — giúp đội đưa discovery vào nhịp Scrum:

  • Chẩn đoán hiện trạng. Hỏi đội: trong Product Backlog hiện tại, bao nhiêu phần trăm item đã được kiểm chứng giá trị, bao nhiêu chỉ là "ai đó bảo làm"? Con số này thường gây sốc và là đòn bẩy để thay đổi.
  • Đưa "discovery" thành công việc hợp lệ. Làm việc với PO để tạo ra các loại item rõ ràng: discovery spike, prototype, user interview, experiment. Chúng có trong backlog, có thời lượng giới hạn (timebox), và có "kết quả học được" làm Definition of Done — không phải "đã làm xong" mà là "đã trả lời được câu hỏi gì".
  • Phân bổ capacity. Đề xuất một tỷ lệ cụ thể — ví dụ 80% delivery / 20% discovery mỗi Sprint. Tỷ lệ tùy độ bất định: sản phẩm mới thì discovery nhiều hơn, sản phẩm trưởng thành thì ít hơn. Đừng để 100% rơi vào delivery.
  • Kéo đủ ba góc nhìn vào discovery. Đảm bảo mỗi nỗ lực discovery có mặt: PO (value/business), designer (usability), và ít nhất một developer (feasibility). Đây là "product trio" của Teresa Torres — bộ ba quyết định sản phẩm.
  • Gắn discovery vào các sự kiện Scrum sẵn có. Dùng Sprint Review để thu feedback feed ngược discovery. Dùng Refinement để biến insight từ discovery thành PBI sẵn sàng. Không cần đẻ ra một mớ họp mới — lồng vào nhịp đang có.
  • Đo lường bằng outcome, không bằng output. Thay câu hỏi "Sprint này ship được bao nhiêu story?" bằng "Sprint này ta học/kiểm chứng được giả định gì, và nó thay đổi backlog ra sao?". Đây là cú chuyển tư duy quan trọng nhất.
  • Bảo vệ track discovery khỏi áp lực delivery. Khi stakeholder muốn nhồi thêm tính năng, hãy giúp họ thấy chi phí của việc build sai. Discovery là tấm khiên, không phải sự xa xỉ.

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

Lỗi: Coi discovery là một "phase" trước delivery. Đây là tư duy waterfall trá hình. Discovery và delivery phải chạy song song, liên tục. Mẹo: nếu đội nói "chúng tôi đang trong giai đoạn discovery", hãy hỏi "vậy track delivery đang làm gì?".

Lỗi: Discovery do một mình PO làm. PO không phải nhà tiên tri. Discovery một mình dẫn đến thiên kiến và bỏ sót feasibility. Mẹo: luôn yêu cầu product trio (PO + designer + developer).

Lỗi: "Big design up front". Làm discovery cho 6 tháng tính năng cùng lúc rồi ném qua cho dev. Mẹo: chỉ discover vừa đủ cho 1–2 Sprint tới; discovery là dòng chảy đều, không phải một cú dồn lớn.

Lỗi: Không có Definition of Done cho discovery. Một spike kéo dài vô tận vì không ai biết "xong" là gì. Mẹo: mỗi nỗ lực discovery phải bắt đầu bằng một câu hỏi và kết thúc bằng một câu trả lời/quyết định.

Lỗi: Đo discovery bằng velocity. Discovery không tạo Increment shippable, nên đừng ép nó vào điểm story. Mẹo: đo discovery bằng số giả định được kiểm chứng và quyết định được đưa ra.

Mẹo vàng: Khi gặp một PBI lớn, mơ hồ, rủi ro cao — đừng để nó vào Sprint Planning ngay. Đẩy nó qua track discovery trước. "Khi nghi ngờ, hãy kiểm chứng, đừng xây."

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

  • Audit backlog. Lấy 20 item đầu trong Product Backlog của đội bạn. Với mỗi item, đánh dấu: "đã kiểm chứng giá trị" hay "chỉ là yêu cầu". Tính tỷ lệ. Nếu trên 50% là "chỉ là yêu cầu", bạn đang có vấn đề discovery.
  • Thiết kế một discovery spike. Chọn một tính năng sắp tới còn nhiều bất định. Viết: câu hỏi cần trả lời, phương pháp (phỏng vấn / prototype / fake door), timebox (tối đa 1 tuần), và "kết quả học được" là gì để coi spike đã xong.
  • Phân bổ capacity. Đề xuất tỷ lệ delivery/discovery cho Sprint tới của đội bạn và viết một đoạn 3–4 câu thuyết phục PO/stakeholder vì sao tỷ lệ đó hợp lý với độ bất định hiện tại.
  • Map bốn rủi ro. Lấy một tính năng đội đang định làm, viết ra cụ thể value/usability/feasibility/viability risk của nó, và với mỗi rủi ro hãy đề xuất một cách kiểm chứng rẻ.

Tóm tắt

  • Scrum làm rất tốt phần delivery (build đúng cách) nhưng tự thân không đảm bảo discovery (build đúng thứ). Thiếu discovery, đội biến thành feature factory.
  • Mô hình Dual-Track của Marty Cagan: discovery (WHAT/WHY) và delivery (HOW) chạy song song và liên tục, không phải hai giai đoạn nối tiếp.
  • Discovery tồn tại để gỡ bốn rủi ro: value, usability, feasibility, viability — trước khi tốn công kỹ thuật.
  • Scrum Master không tự làm discovery thay PO, nhưng tạo điều kiện: phân bổ capacity, hợp pháp hóa spike/prototype, kéo đủ product trio (PO + designer + developer), và lồng discovery vào các sự kiện Scrum sẵn có.
  • Chuyển trọng tâm từ output (ship bao nhiêu) sang outcome (học và thay đổi backlog ra sao). "Fail cheap" trong discovery để "win big" trong delivery.
  • Tránh ba bẫy lớn: coi discovery là một phase, để PO làm một mình, và biến dual-track thành hai ốc đảo tách rời.