0
0
Lập trình
Flame Kris
Flame Krisbacodekiller

Tại sao WIP là lãng phí trong quy trình làm việc

Đăng vào 6 ngày trước

• 4 phút đọc

Giới thiệu

Trong môi trường phát triển phần mềm, khái niệm Work In Progress (WIP) thường gây ra nhiều tranh cãi. Bài viết này sẽ phản ánh quan điểm về việc WIP là lãng phí và cách tối ưu hóa quy trình làm việc của bạn để đạt được hiệu quả cao hơn.

Tại sao WIP là lãng phí

Theo bài viết "WIP is waste" của Jared Turner trên Thoughtbot, WIP là một dạng lãng phí. Thời gian mà các nhiệm vụ nằm trong trạng thái WIP không chỉ tiêu tốn tài nguyên mà còn trì hoãn việc tạo ra giá trị thực. Dưới đây là những quan điểm chính từ bài viết:

Những ví dụ về WIP

  • "Nó đã hoàn thành, tôi chỉ đang chờ xem xét"
  • "Nó đã xong, tôi chỉ cần thực hiện một số kiểm tra cuối cùng"
  • "Nó đã sẵn sàng, tôi chỉ cần hợp nhất và triển khai"

Kết luận từ bài viết

  • Trước khi một nhiệm vụ được giao, nó không tạo ra giá trị.
  • Mọi công việc đang tiến hành chỉ là chi phí.
  • Hai nhiệm vụ đang tiến hành sẽ làm tăng chi phí mà không tạo ra giá trị.
  • Chỉ sau khi giao hàng bạn mới tạo ra giá trị. Luôn luôn giao hàng.
  • Một nhiệm vụ đã giao hàng tốt hơn vô hạn so với 4 nhiệm vụ “hầu như hoàn thành”.
  • Hãy giao hàng một cái gì đó có giá trị trước, rồi hãy bắt đầu cái mới.

Kinh nghiệm cá nhân

Kinh nghiệm của tôi cũng phản ánh những điểm trên. Dưới đây là một số ví dụ bổ sung:

  • Trong một thiết lập với nhiều vai trò, việc chuyển giao giữa các vai trò gây ra sự chậm trễ.
  • Chạy quá nhiều việc song song hoặc đa nhiệm sẽ gây ra sự chậm trễ.
  • Thiếu tập trung sẽ dẫn đến chậm trễ.
  • Mã không được hợp nhất vào nhánh chính sẽ không tạo ra giá trị.
  • Pull Requests không được xem xét và hợp nhất không tạo ra giá trị.
  • Công việc chưa được triển khai không tạo ra giá trị.

Tập trung vào kết quả

Điều này không có nghĩa là mọi thứ phải được thực hiện nhanh chóng, mà là rằng cần phải tập trung vào việc hoàn thành và đưa mọi thứ ra khỏi trạng thái WIP càng nhanh càng tốt. Nếu một nhiệm vụ không tiến triển, cần đánh giá xem nó có đáng tiếp tục hay không, hoặc có nên ngừng lại.

Một lập luận khác cho việc hoàn thành công việc là công việc trong tương lai sẽ dựa trên những gì được giao hiện tại. Cả việc học hỏi và các sản phẩm thực tế. Do đó, càng sớm giao hàng, càng sớm nó có thể được sử dụng làm nền tảng cho công việc tiếp theo.

Cân bằng giữa khởi đầu và kết thúc nhiệm vụ

Bạn cần tìm ra sự cân bằng giữa việc bắt đầu và kết thúc nhiệm vụ. Nếu bạn bắt đầu quá nhiều thứ, bạn sẽ có quá nhiều thứ trong WIP và không đủ thứ đã hoàn thành. Nếu bạn kết thúc quá nhiều thứ, bạn sẽ không có đủ thứ trong WIP để làm việc. Hãy tìm ra sự cân bằng phù hợp cho bạn và nhóm của bạn.

Một ví dụ về sự thiếu tập trung

Tôi đã chứng kiến một nhóm khởi đầu quá nhiều sửa lỗi, dẫn đến các sửa lỗi bị trì hoãn và không được triển khai. Việc phân loại và ưu tiên sửa lỗi đúng cách sẽ giúp ích rất nhiều. Tập trung vào việc hoàn thành và triển khai một vài sửa lỗi sẽ hiệu quả hơn so với việc có quá nhiều sửa lỗi đang tiến hành mà ít được triển khai, và cuối cùng những lỗi tương tự lại được báo cáo một lần nữa, dẫn đến tình trạng quản lý lỗi rối rắm.

Một ví dụ khác về sự thiếu tập trung là một đồng nghiệp liên tục bắt đầu các sáng kiến và tính năng mới, nhưng khi chúng được phát triển và thử nghiệm, chúng lại không được triển khai trong nhiều sprint chỉ vì chờ UAT. Dường như trọng tâm là bắt đầu những việc mới, nhưng khi đã bắt đầu, nó không còn thú vị nữa. So với các ví dụ WIP khác, điều này rất tốn kém vì công việc đã được thực hiện.

Kết luận

  • Tập trung vào việc hoàn thành và đưa mọi thứ ra khỏi WIP càng nhanh càng tốt, từ khóa là tập trung.
  • Nếu một cái gì đó không tiến triển, hãy đánh giá xem có đáng tiếp tục hay không hoặc có nên ngừng lại.
  • Ưu tiên và phân loại nhiệm vụ để tránh có quá nhiều thứ trong WIP.
  • Tập trung vào việc tiến triển, hoàn thành và triển khai một vài thứ, thay vì nhiều thứ đang chậm tiến.
  • Tìm ra sự cân bằng giữa việc bắt đầu và kết thúc nhiệm vụ.
  • Sử dụng những gì đã được giao làm nền tảng cho công việc tiếp theo.
Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào