Kanban là gì?

Kanban là một phương pháp quản lý công việc tập trung vào việc trực quan hóa công việc, kiểm soát lượng công việc đang thực hiện và cải thiện dòng chảy của công việc. Kanban giúp team nhìn thấy toàn bộ công việc đang ở trạng thái nào, công việc nào đang bị tồn đọng, công việc nào đang được xử lý và công việc nào đã hoàn thành. Từ đó team có thể phát hiện vấn đề trong quá trình làm việc và tìm cách cải thiện. Kanban có thể được sử dụng trong phát triển phần mềm nhưng không chỉ giới hạn ở lĩnh vực này. Marketing, thiết kế, chăm sóc khách hàng, vận hành, nhân sự hay các công việc cá nhân đều có thể áp dụng Kanban.

Tư duy cốt lõi của Kanban

Tư duy quan trọng nhất của Kanban là không cố gắng làm thật nhiều việc cùng lúc, mà tập trung vào việc đưa công việc hoàn thành một cách đều đặn và hiệu quả.

Ví dụ một team có 10 task cần làm. Nếu cả team cùng lúc bắt đầu cả 10 task thì nhìn bên ngoài có vẻ mọi người đang rất bận rộn. Nhưng thực tế có thể xảy ra tình trạng task nào cũng đang làm nhưng không có task nào hoàn thành. Một số công việc còn phải chờ người khác, một số bị bỏ dở và mọi người liên tục phải chuyển đổi giữa các công việc.

Kanban nhìn vấn đề theo hướng khác. Thay vì liên tục đưa thêm việc vào, team sẽ hạn chế số lượng công việc đang được thực hiện, tập trung hoàn thành những việc đang làm rồi mới lấy công việc tiếp theo.

Khi một công việc bị đứng lại quá lâu, team không chỉ cố gắng “làm cho xong” mà sẽ tìm hiểu tại sao công việc bị kẹt. Có thể do thiếu thông tin, chờ review, thiếu người kiểm thử hoặc một bước nào đó trong quy trình đang xử lý quá chậm.

Từ đó, Kanban hướng team đến việc cải thiện dòng chảy của công việc (Flow). Mục tiêu không phải là làm cho tất cả mọi người lúc nào cũng bận, mà là làm cho công việc di chuyển ổn định từ lúc bắt đầu đến khi hoàn thành, giảm thời gian chờ và giảm lượng công việc dang dở.

Kanban là gì? 5 nguyên tắc cốt lõi của phương pháp Kanban - ACCESSTRADE  Việt Nam

Workflow trong Kanban

Workflow là cách một Work Item đi từ lúc bắt đầu cho đến khi hoàn thành.

Đây là một phần rất quan trọng của Kanban.

Ví dụ một team phát triển phần mềm có workflow:

Backlog → Ready → Development → Code Review → Testing → Done

Khi một task đang ở Development thì developer đang làm.

Khi code xong, task chuyển sang Code Review.

Sau khi review xong, task chuyển sang Testing.

Nếu tester phát hiện bug thì task có thể quay lại Development.

Điều này phản ánh quá trình thực tế thay vì chỉ đơn giản chia thành To Do, Doing và Done.

Vì vậy, Kanban Board nên phản ánh workflow thật của team, chứ không nên tạo board chỉ vì “team nào cũng có To Do / Doing / Done”.

WIP và WIP Limit

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

WIP Limit là giới hạn số lượng công việc được phép thực hiện cùng lúc.

Ví dụ, team đặt WIP Limit của Development là 3 thì khi đã có 3 task đang Development, team không nên tiếp tục đưa task thứ 4 vào mà nên tập trung hoàn thành một trong những task hiện tại.

Mục đích của WIP Limit là giảm việc làm dở dang, hạn chế chuyển đổi giữa nhiều công việc và giúp team tập trung hoàn thành task.

Ưu và nhược điểm

Kanban có ưu điểm là linh hoạt, trực quan và dễ áp dụng vào quy trình hiện tại. Team có thể nhìn thấy công việc, kiểm soát WIP và phát hiện vấn đề trong quá trình làm việc mà không cần thay đổi toàn bộ cơ cấu tổ chức.

Tuy nhiên, vì Kanban không quy định quá nhiều về cách tổ chức team nên nếu thiếu kỷ luật, Kanban Board rất dễ trở thành một bảng quản lý task bình thường. Nếu team chỉ kéo task từ cột này sang cột khác mà không kiểm soát WIP và cải thiện Flow thì chưa thực sự áp dụng được tư duy Kanban.

 

tóm lại kaban không đơn giản là to do – doing – done mà bản chất nó là quản lí dòng chảy của công việc và liên tục cải thiện team làm việc hiệu quả hơn

 

Bài viết khác

BÀI 5: TÌM HIỂU CHUYÊN SÂU VỀ LANGUAGE SWITCHING TRONG FLUTTER

1. Language Switching là gì? Trong một ứng dụng hỗ trợ nhiều ngôn ngữ, việc có sẵn các bản dịch chưa đủ để tạo ra trải nghiệm đa ngôn ngữ hoàn chỉnh. Ứng dụng còn cần xác định ngôn ngữ nào sẽ được sử dụng và cho phép thay đổi ngôn ngữ khi cần thiết. […]

TÌM HIỂU CHUYÊN SÂU VỀ UTC & LOCAL TIME CONVERSION TRONG FLUTTER

1. UTC & Local Time Conversion là gì? Trong một ứng dụng Flutter, thời gian xuất hiện ở rất nhiều chức năng như ngày tạo tài khoản, thời gian đặt hàng, lịch sử giao dịch, lịch hẹn, thời gian gửi thông báo và thời hạn của chương trình khuyến mãi. Khi ứng dụng chỉ chạy […]

TÌM HIỂU CHUYÊN SÂU VỀ DATE / NUMBER / CURRENCY FORMATTING TRONG FLUTTER

1. Date / Number / Currency Formatting là gì? Trong một ứng dụng Flutter, dữ liệu thường được lưu trữ và xử lý dưới dạng số, ngày giờ hoặc các kiểu dữ liệu có cấu trúc. Tuy nhiên, dữ liệu dùng để tính toán không nhất thiết giống với cách dữ liệu được hiển thị […]

TÌM HIỂU CHUYÊN SÂU VỀ LOCALIZATION (l10n) TRONG FLUTTER

1. Localization (l10n) là gì? Khi một ứng dụng được sử dụng ở nhiều quốc gia, sự khác biệt không chỉ nằm ở ngôn ngữ mà còn ở cách người dùng đọc ngày tháng, số, tiền tệ, đơn vị đo lường và các thông tin trên giao diện. Ví dụ, một ứng dụng bán hàng […]

TÌM HIỂU CHUYÊN SÂU VỀ INTERNATIONALIZATION (i18n) TRONG FLUTTER

1. Internationalization (i18n) là gì? Trong quá trình phát triển ứng dụng, lập trình viên thường xây dựng giao diện bằng một ngôn ngữ ban đầu, chẳng hạn như tiếng Việt. Khi ứng dụng được sử dụng bởi người dùng ở nhiều quốc gia, việc chỉ hỗ trợ một ngôn ngữ có thể khiến người […]

TÌM HIỂU CHUYÊN SÂU VỀ APP RELEASE & DEPLOYMENT TRONG FLUTTER

1. App Release & Deployment là gì? Trong quá trình phát triển ứng dụng Flutter, sau khi hoàn thành các chức năng, lập trình viên cần đưa ứng dụng đến người dùng thực tế. Ví dụ, một nhóm đã xây dựng xong ứng dụng bán hàng với những chức năng như đăng nhập, xem sản […]