Hướng dẫn

Quản Lý Dự Án Agile/Scrum Bằng Google Sheets [Không Cần Jira 2026]

Tuân HoangTuân Hoang
9 tháng 6, 2026
10 phút đọc
Ảnh minh họa bài viết: Quản Lý Dự Án Agile/Scrum Bằng Google Sheets [Không Cần Jira 2026]

Khi Nào Không Cần Jira? (Và Tại Sao Google Sheets Đủ Dùng)

Jira là công cụ quản lý dự án mạnh mẽ — nhưng không phải team nào cũng cần đến nó. Với mức giá $8–15/user/tháng, một team 10 người đã tốn hơn $1.000/năm chỉ cho phần mềm quản lý. Chưa kể thời gian thiết lập 2–4 giờ, vô số tùy chọn phức tạp và đường cong học tập dốc.

Google Sheets phù hợp thay thế Jira khi team của bạn thuộc một trong các trường hợp sau:

  • Team ≤15 người: Đủ nhỏ để quản lý trong bảng tính mà không bị mất kiểm soát.
  • Startup hoặc SMB không muốn trả $8–15/user/tháng: Google Sheets miễn phí với mọi tài khoản Google.
  • Dự án không quá phức tạp: Không cần custom workflow nâng cao, tích hợp CI/CD, hay automation pipeline.
  • Team không quen tool phức tạp: Sheets là thứ mọi người đã biết dùng — không cần đào tạo thêm.

Bài viết này sẽ hướng dẫn bạn xây dựng hệ thống quản lý Agile/Scrum đầy đủ trong Google Sheets, gồm 6 sheet chức năng từ Product Backlog đến Retrospective — tất cả trong vòng 30 phút setup.

Tổng Quan Template 6 Sheet

Hệ thống Agile/Scrum trong Google Sheets được tổ chức thành 6 sheet, mỗi sheet phục vụ một mục đích cụ thể trong quy trình Scrum:

  1. Product Backlog — Kho chứa toàn bộ user story và yêu cầu
  2. Sprint Board — Bảng Kanban cho sprint hiện tại
  3. Sprint Planning — Lập kế hoạch và quản lý capacity
  4. Burndown Chart — Theo dõi tiến độ sprint theo ngày
  5. Velocity Tracking — Lịch sử tốc độ hoàn thành của team
  6. Retrospective — Ghi chép bài học và hành động cải thiện

Tạo một Google Sheets mới, đặt tên file theo project (ví dụ: "Project X — Agile Board"), rồi tạo 6 tab tương ứng theo hướng dẫn dưới đây.

Sheet 1: Product Backlog

Product Backlog là trái tim của Agile — nơi chứa toàn bộ những gì team cần xây dựng, sắp xếp theo mức độ ưu tiên.

Cấu trúc cột

Cột Mô tả Ví dụ
Story ID Mã định danh duy nhất US-001, US-002
User Story Câu chuyện người dùng theo format chuẩn Là user, tôi muốn... để...
Priority Mức độ ưu tiên MoSCoW Must / Should / Could / Won't
Story Points Ước tính độ phức tạp (Fibonacci: 1,2,3,5,8,13) 3
Epic Nhóm tính năng lớn Authentication, Payment
Trạng thái Vị trí hiện tại trong quy trình Backlog / In Sprint / Done
Sprint Sprint được assign vào Sprint 3
Ghi chú Acceptance criteria hoặc ghi chú kỹ thuật Cần test trên mobile

Ví dụ user story chuẩn

Format chuẩn của user story theo Agile:

"Là [vai trò], tôi muốn [hành động] để [mục đích]"

Ví dụ thực tế:

  • "Là user, tôi muốn đăng nhập bằng Google để không phải nhớ mật khẩu"
  • "Là admin, tôi muốn xem báo cáo doanh thu theo tuần để theo dõi xu hướng"
  • "Là khách hàng, tôi muốn nhận email xác nhận đơn hàng để biết đơn đã được xử lý"

Prioritization với MoSCoW

MoSCoW giúp team đồng thuận về mức độ ưu tiên:

  • Must Have: Bắt buộc phải có — sản phẩm không thể ra mắt thiếu tính năng này
  • Should Have: Quan trọng nhưng không bắt buộc cho MVP
  • Could Have: Nice-to-have nếu còn thời gian
  • Won't Have: Đồng ý không làm trong giai đoạn này

Áp dụng Data Validation cho cột Priority: chọn cột → Data → Data Validation → List of items: Must,Should,Could,Won't.

Sheet 2: Sprint Board (Kanban Hiện Tại)

Sprint Board là nơi team nhìn vào mỗi ngày trong daily standup. Thiết kế theo phong cách Kanban với 4 cột trạng thái.

Cấu trúc Kanban 4 cột

Tổ chức sheet thành 4 vùng ngang tương ứng 4 trạng thái:

To Do In Progress Review Done
Chưa bắt đầu Đang làm Đang review/test Hoàn thành

Mỗi task trong Sprint Board gồm các thông tin:

  • Story ID: Liên kết về Product Backlog (ví dụ: US-001)
  • Mô tả: Tóm tắt ngắn gọn tác vụ cụ thể
  • Người làm: Tên thành viên được assign
  • Story Points: Điểm phức tạp đã estimate
  • Ngày bắt đầu: Khi nào task được pick up
  • Ngày xong thực tế: Khi nào task chuyển sang Done

Conditional Formatting để nhìn trực quan

Thiết lập màu sắc để trạng thái nổi bật ngay lập tức:

  1. Chọn vùng dữ liệu → Format → Conditional Formatting
  2. Thêm rule: Text contains "In Progress" → nền xanh lá nhạt (#e8f5e9)
  3. Thêm rule: Text contains "Done" → nền xám nhạt (#f5f5f5), chữ mờ
  4. Thêm rule cho cột Ngày xong: Custom formula: =AND(F2="",E2<TODAY()) → nền đỏ nhạt (task bị trễ)

Counter tự động theo trạng thái

Thêm một vùng tóm tắt ở đầu sheet để xem nhanh tình trạng sprint:

// Đặt ở ô H1:K2
To Do:     =COUNTIF(D:D,"To Do")
In Progress: =COUNTIF(D:D,"In Progress")
Review:    =COUNTIF(D:D,"Review")
Done:      =COUNTIF(D:D,"Done")

Sheet 3: Sprint Planning

Sprint Planning sheet giúp Product Owner và Scrum Master chuẩn bị cho mỗi sprint — từ chọn story đến tính toán capacity team.

Thông tin Sprint Header

Sprint Number:    Sprint 5
Start Date:       01/07/2026
End Date:         14/07/2026
Sprint Goal:      Hoàn thiện tính năng thanh toán và email thông báo
Sprint Duration:  14 ngày
Working Days:     10 ngày (trừ cuối tuần)

Tính Capacity Team

Capacity = số giờ thực tế team có thể làm việc trong sprint:

// Bảng capacity từng thành viên
Tên          | Giờ/ngày | Ngày làm | Capacity (giờ)
-----------  | -------- | -------- | ---------------
Minh         | 6        | 10       | 60
Thu          | 7        | 8        | 56
Khoa         | 6        | 10       | 60
Tổng capacity:                      176 giờ

// Velocity sprint trước để ước tính
Velocity Sprint 4: 34 SP
Velocity trung bình 3 sprint gần nhất: 31 SP

// Story points planned cho Sprint 5
Planned SP:  32  (trong khoảng velocity ± 20%)

Danh sách Story Được Chọn

Liệt kê các story sẽ đưa vào sprint với tổng story points:

Story ID | User Story (tóm tắt)           | SP  | Người nhận
-------- | ------------------------------ | --- | ----------
US-012   | Tích hợp cổng thanh toán       | 8   | Minh
US-013   | Email xác nhận đơn hàng         | 5   | Thu
US-014   | Trang lịch sử giao dịch         | 5   | Khoa
US-015   | Dashboard admin — doanh thu     | 8   | Minh
US-016   | Xử lý lỗi thanh toán thất bại   | 3   | Thu
US-017   | Unit test module payment        | 3   | Khoa
                                   Tổng: 32 SP

Sheet 4: Burndown Chart

Burndown Chart là biểu đồ quan trọng nhất trong Scrum — nó cho thấy team đang đi đúng hướng hay đang trễ so với kế hoạch.

Cấu trúc dữ liệu Burndown

Tạo bảng dữ liệu với hai cột chính: đường lý tưởng và đường thực tế.

Ngày (Cột A) SP Lý Tưởng (Cột B) SP Thực Tế (Cột C)
Ngày 0 (Start)3232
Ngày 128.830
Ngày 225.627
Ngày 322.425
......Cập nhật hàng ngày
Ngày 10 (End)0?

Công thức tính đường lý tưởng

// Ô B1 (ngày 0): =TongSP  (ví dụ: 32)
// Ô B2 (ngày 1): =B1 - (TongSP / WorkingDays)
// Kéo công thức xuống đến ngày cuối sprint

// Hoặc dùng công thức tổng quát cho ô B(n):
=TongSP * (1 - (ROW()-2) / WorkingDays)

Công thức tính story points còn lại mỗi ngày

// Story points còn lại = Tổng SP - SP của các task đã Done
// Cập nhật ô C tương ứng mỗi ngày sau standup:
=C_hôm_qua - SUMIFS(SprintBoard!D:D,"Done", SprintBoard!F:F, A_ngày_hôm_nay, SprintBoard!C:C)

// Đơn giản hơn: sau standup, nhập thủ công số SP Done vào cột E
// rồi C(n) = C(n-1) - E(n)
Ví dụ:
Ngày 4: Done thêm 5 SP → C4 = C3 - 5 = 25 - 5 = 20

Tạo biểu đồ Burndown

  1. Chọn vùng dữ liệu A1:C11 (hoặc tương ứng số ngày sprint)
  2. Insert → Chart
  3. Chọn Line chart
  4. Chart type: Line (không phải Smooth line)
  5. X-axis: Cột A (ngày)
  6. Series 1: Cột B — đặt tên "Ideal Burndown", màu xanh dương, đường đứt nét
  7. Series 2: Cột C — đặt tên "Actual Burndown", màu cam, đường liền
  8. Title: "Sprint 5 Burndown Chart"

Đọc kết quả burndown:

  • Đường thực tế trên đường lý tưởng → team đang chậm, cần action
  • Đường thực tế dưới đường lý tưởng → team đang ahead of schedule
  • Đường thực tế phẳng nhiều ngày → có blocker, cần escalate

Sheet 5: Velocity Tracking

Velocity là thước đo quan trọng nhất để dự đoán khả năng delivery của team. Theo dõi velocity qua các sprint giúp team estimate chính xác hơn theo thời gian.

Cấu trúc Velocity Sheet

Sprint SP Committed SP Completed Velocity Ghi chú
Sprint 1201818Sprint đầu, team mới quen
Sprint 2252222Một thành viên nghỉ 2 ngày
Sprint 3303030Sprint tốt nhất
Sprint 4353434Technical debt ảnh hưởng nhẹ
Sprint 532......Đang chạy

Công thức Velocity hữu ích

// Velocity trung bình toàn bộ sprint
=AVERAGE(C2:C10)

// Velocity trung bình 3 sprint gần nhất (rolling average)
=AVERAGE(OFFSET(C2,COUNT(C2:C10)-3,0,3,1))

// % hoàn thành so với committed
=C2/B2  // Format ô này thành Percentage

// Dự đoán SP cho sprint tiếp (dựa trên rolling average)
=ROUND(AVERAGE(OFFSET(C2,COUNT(C2:C10)-3,0,3,1)),0)

Biểu đồ Velocity

  1. Chọn cột Sprint (A) và SP Completed (C)
  2. Insert → Chart → Column chart
  3. Thêm SP Committed (B) làm series thứ 2 — đường ngang hoặc cột mờ
  4. Điều này giúp thấy rõ sprint nào team bị under-deliver

Cách dùng velocity để plan sprint: Nếu rolling average 3 sprint là 28 SP, hãy plan sprint tiếp ở mức 26–30 SP. Không nên commit quá 110% velocity trung bình.

Sheet 6: Retrospective

Retrospective là buổi họp cuối sprint, giúp team liên tục cải thiện quy trình. Ghi lại kết quả retro trong sheet để theo dõi action items.

Template Retro Start/Stop/Continue

Sprint START (Nên bắt đầu làm) STOP (Nên ngừng làm) CONTINUE (Tiếp tục làm tốt)
Sprint 4 Code review trước khi merge; Viết test trước khi code Họp ad-hoc không cần thiết; Commit thẳng vào main Daily standup đúng giờ 9h; Pair programming cho task khó

Cột Action Items

Phần quan trọng nhất của retro là action items cụ thể:

Sprint Action Item Owner Deadline Done?
Sprint 4Setup CI pipeline tự động chạy test khi có PRMinhSprint 5 ngày 3
Sprint 4Tạo template definition of done chung cho teamScrum MasterTrước Sprint 5 planning
Sprint 4Review và giảm technical debt trong module authThuSprint 5

Thêm checkbox vào cột Done bằng cách: chọn ô → Insert → Checkbox. Khi check xong action item, ô sẽ tick tự động.

Công Thức Tổng Hợp Cho Toàn Bộ Hệ Thống

Một số công thức hữu ích bạn sẽ dùng thường xuyên:

// % hoàn thành sprint hiện tại
=COUNTIF(SprintBoard!D:D,"Done") / COUNTA(SprintBoard!A2:A100)
// Format: Percentage → ví dụ 65%

// Story points còn lại trong sprint
=SUMIF(SprintBoard!D:D,"<>Done", SprintBoard!C:C)
// Trả về: tổng SP chưa Done

// Team capacity tổng (giờ)
=SUMPRODUCT(Planning!C2:C5 * Planning!D2:D5)
// C = giờ/ngày, D = ngày làm trong sprint

// Burndown — SP done hôm nay
=SUMIFS(SprintBoard!C:C, SprintBoard!D:D, "Done", SprintBoard!F:F, TODAY())
// C = Story Points, D = Trạng thái, F = Ngày hoàn thành

// Kiểm tra task nào bị trễ (chưa Done mà đã quá ngày)
=COUNTIFS(SprintBoard!D:D,"<>Done", SprintBoard!E:E,"<"&TODAY())
// Trả về số task đang bị trễ

Quy Trình Hàng Ngày Với Hệ Thống Này

Để hệ thống thực sự hoạt động, mọi người phải cập nhật đều đặn. Đây là quy trình đề xuất:

Daily Standup (15 phút)

  1. Mở Sprint Board — mọi người nhìn chung một màn hình
  2. Lần lượt từng người: "Hôm qua làm gì? Hôm nay làm gì? Có blocker không?"
  3. Người làm di chuyển task sang trạng thái mới (In Progress → Review → Done)
  4. Update Burndown Chart: nhập số SP Done hôm nay vào cột C
  5. Nếu có blocker → ghi vào cột Ghi chú, assign người giải quyết

Cuối Sprint

  1. Sprint Review: Demo sản phẩm cho stakeholder, review Sprint Board
  2. Velocity Update: Tổng kết SP completed vào Velocity Sheet
  3. Retrospective: Họp 1 giờ, điền vào Retro Sheet, tạo action items
  4. Sprint Planning mới: Chọn story từ Backlog, tính capacity, tạo Sprint Board mới

Tips Để Mọi Người Thực Sự Cập Nhật

  • Pin link Google Sheets vào Slack/Teams channel của team
  • Đặt Scrum Master làm người check và nhắc cập nhật mỗi ngày
  • Giữ Sprint Board đơn giản — đừng thêm quá nhiều cột không cần thiết
  • Review Burndown Chart cùng nhau trong standup để mọi người thấy ý nghĩa

So Sánh Sheets vs Jira: Khi Nào Nên Nâng Cấp?

Tiêu chí Google Sheets Jira
Chi phí Miễn phí $8–15/user/tháng
Setup time 30 phút 2–4 giờ
Automation Apps Script (cần code) Built-in automation rules
Reporting Tự xây biểu đồ Built-in dashboard, custom JQL
Integration API/Zapier/Make 1.000+ integrations
Custom Workflow Hạn chế Đầy đủ (state machine)
CI/CD Integration Không GitHub, Bitbucket, Jenkins
Phù hợp cho Team ≤15, dự án đơn giản Team lớn, workflow phức tạp

Dấu hiệu cần chuyển sang Jira

  • Team vượt 15 người và việc cập nhật Sheets trở nên hỗn loạn
  • Bạn cần tích hợp với GitHub, GitLab để link commit với task
  • Cần custom workflow phức tạp: nhiều trạng thái, điều kiện chuyển trạng thái
  • Cần permission phân cấp (dev chỉ thấy task của mình, manager thấy tất cả)
  • Cần audit trail — ai đã làm gì, lúc mấy giờ

Kết Luận

Agile không phải là về tool — nó là về mindset và quy trình. Google Sheets với 6 sheet trong bài này đủ sức hỗ trợ một team nhỏ chạy Scrum đúng nghĩa: có backlog, có sprint planning, có burndown chart theo dõi tiến độ hàng ngày, có retrospective để cải thiện liên tục.

Setup mất khoảng 30 phút. Chi phí: $0. Và vì mọi người đã quen Sheets, không cần thêm một buổi training nào.

Bắt đầu với Sprint 1 đơn giản — chỉ dùng Product Backlog và Sprint Board. Sau 2–3 sprint khi team đã quen quy trình, thêm Burndown Chart và Velocity Tracking. Đến lúc bạn thực sự cần nhiều hơn những gì Sheets có thể làm, bạn đã biết chính xác tính năng nào mình cần từ Jira — và đó là lúc hợp lý để nâng cấp.

Tài liệu tham khảo: The Scrum Guide 2020 | Google Sheets Help

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Google SheetsGoogle Apps ScriptCRMAutomationPhần mềm quản lý doanh nghiệp

Google Workspace Certified, 5+ years experience

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận