Agile và Lean có phải là một? Vì sao chúng thường đi liền với nhau?

Agile vs lean

Agile Lean trong phát triển phần mềm có rất nhiều điểm chung, nhưng là hai khái niệm khác nhau và có sự khác biệt. Dưới đây, chúng ta sẽ làm một phép so sánh những điểm giống và khác nhau.

AgileLean có nguyên lý tương đồng với nhau ở nhiều điểm.

  1. Nhấn mạnh vào lập kế hoạch theo cách thích ứng thông qua phát hành sản phẩm sớm, liên tục để thoả mãn khách hàng:
    • Lean: Trì hoãn việc ra quyết định và Bàn giao sản phẩn nhanh. Với hai nguyên lý này, Lean muốn lập kế hoạch thích ứng chứ không phải lập mọi kế hoạch ban đầu cho toàn bộ quy trình và phát hành sớm và liên tục.
    • Agile: Ưu tiên cao nhất của chúng tôi là thỏa mãn khách hàng thông qua việc chuyển giao sớm và liên tục các phần mềm có giá trị. Chào đón việc thay đổi yêu cầu, thậm chí rất muộn trong quá trình phát triển. Các quy trình linh hoạt tận dụng sự thay đổi cho các lợi thế cạnh tranh của khách hàng.
  2. Nhấn mạnh vào phát triển con người:
    • Lean: Tôn trọng con người
    • Agile: Xây dựng các dự án xung quanh những cá nhân có động lực. Cung cấp cho họ môi trường và sựhỗ trợ cần thiết, và tin tưởng họ để hoàn thành công việc.
  3. Tối ưu hoá toàn cục và loại bỏ lãng phí:
    • Lean: Loại bỏ lãng phí, tối ưu hoá toàn cục.
    • Agile:  Phần mềm chạy tốt là thước đo chính của tiến độ. Và trong Tuyên ngôn Agile có đoạn: Phần mềm chạy tốt hơn là tài liệu đầy đủ. Hai điểm này có ý: bất cứ một công đoạn hoặc tạo tác nào mà không đem lại giá trị cho phần mềm đều có thể coi là lãng phí và không được tính.
  4. Xây dựng sản phẩm chất lượng cao tự thân.
    • Lean: Tạo chất lượng tự thân
    • Agile: Liên tục quan tâm đến các kĩ thuật và thiết kế tốt để gia tăng sự linh hoạt.

Lean có ảnh hưởng rất lớn tới sự hình thành của Agile. Lean và Agile có sự liên kết chắt chẽ trong phát triển phần mềm. Nếu bạn đang làm Agile, thì bạn đang làm Lean và ngược lại.

Khác nhau:

  • Lean, một cách tổng quát không phải là một phương pháp mà là cách nghĩ. Agile tuy có cái lõi là triết lí tổng quát, nhưng còn là tập những phương pháp khác nhau mà bạn có thể làm ngay được như Scrum, XP thoả mãn Tuyên Ngôn Agile và các nguyên lý cốt lõi.
  • Agile bao gồm cả những kỹ thuật khác nhau để làm trong phần mềm như các kỹ thuật ở XP (TDD, BDD, v.v).

Như vậy Lean và Agile không phải là tách biệt và đối ngược nhau, chúng ta có thể áp dụng Lean vào bất cứ một phương pháp phát triển Agile nào.

Nguồn: Học viện Agile

[sharify] [vivafbcomment]