Bài 3

Agile & Scrum

Scrum là khung Agile phổ biến nhất — nhịp làm việc theo sprint với vai trò, sự kiện, artifact rõ ràng. Bài này đi sâu vào cách Scrum vận hành, so sánh với Kanban, và cách mở rộng quy mô khi nhiều nhóm cùng làm một sản phẩm.

Tuyên ngôn Agile (nhắc lại)
4 giá trị cốt lõi & tư duy thực nghiệm

Tuyên ngôn Agile (Agile Manifesto, 2001) không phủ nhận vế bên phải, mà nói rằng vế bên trái được coi trọng hơn:

Coi trọng hơnHơn là
Cá nhân & sự tương tácquy trình & công cụ
Phần mềm chạy đượctài liệu đầy đủ
Hợp tác với khách hàngđàm phán hợp đồng
Phản hồi với thay đổibám theo kế hoạch

Scrum xây trên nền tảng quy trình thực nghiệm (empirical process control): ra quyết định dựa trên những gì quan sát được, qua 3 trụ cột:

Năm giá trị Scrum nâng đỡ ba trụ cột này: Cam kết, Tập trung, Cởi mở, Tôn trọng, Can đảm (Commitment, Focus, Openness, Respect, Courage).

Scrum — 3 vai trò
Một Scrum Team gọn nhẹ, thường 5–9 người

Scrum chỉ định nghĩa một nhóm (Scrum Team) gồm ba trách nhiệm, không có thứ bậc sếp–lính bên trong:

Vai tròTrách nhiệm
Product OwnerSở hữu và sắp xếp ưu tiên Product Backlog, diễn giải nhu cầu khách hàng/stakeholder, tối đa hóa giá trị mà nhóm tạo ra. Là một người duy nhất, có quyền quyết "làm gì trước".
Scrum MasterPhục vụ nhóm theo kiểu servant-leader: gỡ trở ngại (impediment), bảo vệ quy trình & giúp nhóm cải tiến, kèm cặp tổ chức áp dụng Scrum. Không phải sếp, không giao việc, không quản lý con người.
Developers / Development TeamNhững người trực tiếp tạo ra increment (lập trình, kiểm thử, thiết kế, phân tích...). Tự tổ chức — tự quyết cách biến Sprint Backlog thành sản phẩm. Là nhóm liên chức năng (cross-functional), đủ kỹ năng để giao hàng.
Mẹo phân biệt: Product Owner lo cái gì & tại sao; Developers lo như thế nào; Scrum Master lo cách cả nhóm làm việc cùng nhau.
5 sự kiện (events)
Sprint là vùng chứa của 4 sự kiện còn lại

Mọi sự kiện đều có hộp thời gian (time-box) cố định, tạo nhịp đều và giảm họp hành ngoài kế hoạch. Thời lượng dưới đây tính cho sprint chuẩn 1 tháng (co giãn theo độ dài sprint):

Khung Scrum — vòng đời một Sprint Scroll / zoom · Mở draw.io ↗
Sự kiệnMục đíchThời lượng
SprintNhịp làm việc cố định, khung chứa mọi sự kiện khác. Mỗi sprint tạo ra ít nhất một increment dùng được. Không thay đổi mục tiêu giữa chừng theo hướng phá vỡ Sprint Goal.1–4 tuần (cố định, lặp lại)
Sprint PlanningLập kế hoạch cho sprint: PO trình mục tiêu, nhóm chọn các hạng mục từ Product Backlog đưa vào Sprint Backlog và đặt Sprint Goal. Trả lời: vì sao, làm gì, làm thế nào.Tối đa 8 giờ (sprint 1 tháng)
Daily ScrumĐồng bộ nhanh trong nhóm Developers: tiến độ tới Sprint Goal, kế hoạch 24 giờ tới, phát hiện trở ngại. Là cuộc họp lập kế hoạch, không phải báo cáo cho sếp.15 phút mỗi ngày
Sprint ReviewTrình diễn increment cho stakeholder, lấy phản hồi và điều chỉnh Product Backlog. Là buổi làm việc cộng tác, không phải buổi nghiệm thu hình thức.Tối đa 4 giờ
Sprint RetrospectiveNhóm nhìn lại cách làm việc (con người, quan hệ, quy trình, công cụ): cái gì tốt, cái gì cần cải tiến, chọn hành động cải tiến cho sprint sau.Tối đa 3 giờ

Backlog Refinement (chải chuốt backlog) là hoạt động liên tục, không phải sự kiện chính thức — giúp các hạng mục đầu backlog luôn rõ ràng và đủ nhỏ để chọn vào sprint.

3 artifact
Mỗi artifact gắn một cam kết (commitment)
ArtifactMô tảCam kết
Product BacklogDanh sách ưu tiên mọi việc cần làm cho sản phẩm — luôn sống, liên tục được bổ sung & sắp lại.Product Goal (mục tiêu sản phẩm dài hạn)
Sprint BacklogCác hạng mục chọn cho sprint + kế hoạch thực hiện. Do Developers sở hữu & cập nhật hằng ngày.Sprint Goal (mục tiêu chung của sprint)
IncrementPhần sản phẩm có thể chuyển giao, cộng dồn qua các sprint. Mỗi increment phải đạt Definition of Done mới được coi là xong.Definition of Done (định nghĩa hoàn thành)

Definition of Done (DoD) là bộ tiêu chí chất lượng chung cho mọi hạng mục: ví dụ đã code xong, có unit test, qua code review, qua kiểm thử, cập nhật tài liệu, deploy được lên môi trường staging. Một việc chỉ "Done" khi thỏa toàn bộ DoD — nhờ đó "xong" có cùng một nghĩa với cả nhóm, đảm bảo minh bạch.

Definition of Ready (DoR) là tiêu chí để một hạng mục đủ rõ để đưa vào sprint: đã có mô tả, acceptance criteria, ước lượng, không phụ thuộc chặn. DoR canh đầu vào, DoD canh đầu ra. DoR là thông lệ tốt (không nằm trong Scrum Guide); tránh dùng nó như cổng quan liêu cứng nhắc.

User Story & ước lượng
Cách diễn đạt nhu cầu theo góc nhìn người dùng

User Story mô tả một nhu cầu nhỏ, có giá trị, theo góc nhìn người dùng, theo công thức kinh điển:

# mẫu user story
Là <vai trò>, tôi muốn <mục tiêu> để <lợi ích>.

# ví dụ
Là khách mua hàng, tôi muốn lưu giỏ hàng giữa các lần đăng nhập
để không phải chọn lại sản phẩm.

Một story tốt thỏa tiêu chí INVEST:

ChữÝ nghĩa
IndependentĐộc lập — ít phụ thuộc story khác
NegotiableCó thể thương lượng — không phải hợp đồng cứng
ValuableCó giá trị rõ ràng cho người dùng/doanh nghiệp
EstimableƯớc lượng được kích cỡ
SmallĐủ nhỏ để hoàn thành trong một sprint
TestableKiểm thử được — có cách xác nhận đã đạt

Mỗi story đi kèm acceptance criteria (tiêu chí chấp nhận) — các điều kiện cụ thể để coi là làm đúng, thường viết theo dạng Given / When / Then. Kích cỡ tương đối của story được biểu thị bằng story point (thường dùng dãy Fibonacci 1, 2, 3, 5, 8...) thay vì giờ — sẽ đi sâu ở Bài 4.

Kanban
Tối ưu dòng chảy công việc, không theo sprint

Kanban là phương pháp dòng chảy liên tục (continuous flow): không chia sprint, việc được kéo qua quy trình khi có năng lực. Bốn thực hành cốt lõi:

So sánh nhanh Scrum và Kanban:

Tiêu chíScrumKanban
NhịpSprint cố định 1–4 tuầnDòng chảy liên tục, không sprint
Vai tròPO, Scrum Master, Developers (bắt buộc)Không quy định vai trò cố định
Thay đổi giữa chừngHạn chế trong sprint (bảo vệ Sprint Goal)Linh hoạt — đổi ưu tiên bất cứ lúc nào
Giới hạn công việcTheo dung lượng sprint (sprint capacity)Giới hạn WIP theo từng cột
Chỉ số chínhVelocity, burndownLead time, cycle time, throughput
Scrumban: nhiều nhóm kết hợp khung sự kiện của Scrum với giới hạn WIP và bảng trực quan của Kanban.
Mở rộng quy mô (Scaling)
Khi nhiều nhóm cùng làm một sản phẩm

Khi một sản phẩm cần nhiều nhóm cùng làm, có vài khung điều phối phổ biến:

KhungĐặc điểm
Scrum of ScrumsCách nhẹ nhất: đại diện mỗi nhóm họp định kỳ để đồng bộ phụ thuộc & gỡ trở ngại liên nhóm.
LeSS (Large-Scale Scrum)Giữ Scrum tối giản: nhiều nhóm chia sẻ một Product Backlog và một Product Owner, ít thêm vai trò/quy trình.
SAFe (Scaled Agile Framework)Khung quy mô lớn, nhiều tầng (Team / Program / Portfolio), nhiều vai trò & nghi thức — mạnh ở doanh nghiệp lớn nhưng nặng và phức tạp.
Cảnh báo "Agile hình thức": Nhiều tổ chức làm đủ nghi lễ — daily, planning, retro — nhưng thiếu tinh thần Agile: vẫn ra lệnh từ trên xuống, không thật sự minh bạch, retro không dẫn tới thay đổi, "Done" mỗi người hiểu một kiểu. Đó là cargo-cult Agile: copy hình thức mà bỏ giá trị. Hãy bám 3 trụ cột minh bạch – thanh tra – thích nghi thay vì đếm số cuộc họp.
← Bài trước
Bài 2: Phương pháp luận