Kanban là gì? Hiểu nhanh về phương pháp quản lý công việc

Khi làm việc trong một team phát triển phần mềm, việc biết ai đang làm gì, công việc đang ở đâu và task nào đang bị tồn đọng rất quan trọng. Kanban được sử dụng để giúp team trực quan hóa và quản lý những công việc đó một cách hiệu quả.

Kanban là gì?

Kanban là một phương pháp quản lý công việc và workflow, trong đó các công việc được biểu diễn bằng các thẻ (card) và di chuyển qua các trạng thái khác nhau trên một bảng.

Một Kanban Board cơ bản có thể gồm:

TO DO → IN PROGRESS → REVIEW → DONE

Ví dụ, khi một Developer nhận task “Login Page”, task sẽ được chuyển từ To Do sang In Progress. Sau khi code xong, task chuyển sang Review và cuối cùng là Done khi hoàn thành.

Nhờ đó, cả team có thể dễ dàng nhìn thấy trạng thái của toàn bộ công việc.

Những khái niệm cần biết trong Kanban

1. Kanban Board

Là bảng dùng để trực quan hóa workflow.

┌─────────┬─────────────┬────────┬──────┐
│ To Do   │ In Progress │ Review │ Done │
└─────────┴─────────────┴────────┴──────┘

2. Card

Mỗi card đại diện cho một công việc cụ thể, chẳng hạn:

Create Login Page
Fix Navbar
Build Product List

3. Workflow

Là dòng chảy mà một công việc đi qua từ lúc bắt đầu đến khi hoàn thành.

To Do → Development → Review → Done

4. WIP Limit

WIP (Work In Progress) là số lượng công việc đang được thực hiện.

WIP Limit giúp giới hạn số task đang làm cùng lúc, tránh tình trạng một người nhận quá nhiều việc nhưng không hoàn thành được task nào.

Ví dụ:

IN PROGRESS
WIP LIMIT = 2

[Login]
[Header]

Khi đã đủ 2 task, nên hoàn thành một task trước khi bắt đầu task mới.

Kanban và Agile có gì liên quan?

Agile là một tư duy và cách tiếp cận phát triển sản phẩm linh hoạt. Kanban là một phương pháp quản lý workflow có thể được sử dụng theo tư duy Agile.

Ngoài Kanban, Scrum cũng là một cách tiếp cận phổ biến trong phát triển phần mềm.

Điểm khác biệt dễ nhớ:

Scrum  → tập trung vào Sprint
Kanban → tập trung vào Flow

Kanban không bắt buộc phải chia công việc thành các Sprint cố định mà cho phép công việc được xử lý liên tục.

Kanban kết hợp với Git như thế nào?

Kanban và Git có vai trò khác nhau:

Kanban → Quản lý công việc
Git    → Quản lý source code
GitHub → Lưu trữ code + Pull Request + Code Review

Ví dụ:

Kanban: To Do
     ↓
In Progress
     ↓
Developer tạo Git branch
     ↓
Code + Commit + Push
     ↓
Pull Request / Review
     ↓
Kanban: Done

Vì vậy, Kanban không thay thế Git mà kết hợp với Git trong quy trình phát triển phần mềm.

Kết luận

Kanban không đơn giản chỉ là một bảng To Do – Doing – Done. Bản chất của Kanban là giúp team nhìn thấy công việc, kiểm soát lượng công việc đang thực hiện và tối ưu dòng chảy từ lúc bắt đầu đến khi hoàn thành.

Nếu cần nhớ nhanh, chỉ cần nắm 4 từ khóa:

Board – Card – Workflow – WIP Limit

Đó là những khái niệm nền tảng giúp bạn có cái nhìn tổng quát về Kanban trước khi tìm hiểu sâu hơn.

Bài viết khác

Series 7 — Web Quality – Engineering :Testing – Unit Testing, Integration Testing, Web Performance – Core Web Vitals, Code Splitting, Lazy Loading

Series 7 — Web Quality – Engineering Bài 3: Testing – Unit Testing, Integration Testing và End-to-End Testing trong ứng dụng web 1. Vì sao ứng dụng web cần Testing? Trong quá trình phát triển Frontend, chúng ta thường kiểm tra ứng dụng bằng cách chạy website trên trình duyệt, nhấn vào các nút, nhập […]

Series 7 — Web Quality – Engineering : Authentication & Authorization

Series 7 — Web Quality – Engineering Bài 1: Authentication & Authorization – Xác thực và phân quyền trong ứng dụng web 1. Mở đầu Khi xây dựng một ứng dụng web có chức năng đăng nhập, chúng ta thường nghĩ rằng chỉ cần tạo biểu mẫu nhập email, mật khẩu và kiểm tra thông […]

Series 6 – Next.js Advanced – Production: Next.js Build & Deployment

Series 6 – Next.js Advanced & Production Bài 5: Next.js Build & Deployment – Từ mã nguồn đến môi trường Production 1. Mở đầu Trong quá trình phát triển một ứng dụng web, việc chạy thành công trên máy tính cá nhân chưa có nghĩa là ứng dụng đã sẵn sàng để đưa đến người […]

Series 6 – Next.js Advanced – Production: Next.js Internationalized Routing Next.js Static Export

Series 6 – Next.js Advanced & Production   Bài 3: Next.js Internationalized Routing – Tổ chức URL cho website đa ngôn ngữ 1. Mở đầu Sau khi xây dựng cơ chế dịch nội dung và định dạng theo locale, ứng dụng cần một cách để người dùng truy cập đúng phiên bản ngôn ngữ. Ví […]

Series 6 – Next.js Advanced & Production: Metadata & SEO, Internationalization (i18n) & Localization (l10n)

Series 6 – Next.js Advanced & Production Bài 1: Metadata & SEO trong Next.js – Tối ưu thông tin và khả năng hiển thị trên công cụ tìm kiếm 1. Mở đầu Khi xây dựng một website, việc hoàn thiện giao diện và chức năng mới chỉ là một phần của quá trình phát triển. […]

Series 5 – Next.js Fundamentals: CSR, SSR, SSG, ISR và cách lựa chọn

Series 5 – Next.js Fundamentals   Bài 7 : CSR, SSR, SSG và ISR – Các chiến lược Rendering trong Next.js 1. Mở đầu Khi xây dựng một website bằng React, chúng ta thường tập trung vào việc tạo component, quản lý state và hiển thị giao diện trên trình duyệt. Tuy nhiên, khi ứng dụng […]

Leave a Reply

Your email address will not be published. Required fields are marked *