Mô hình Hybrid Agile là gì?
Giờ đây, mô hình Agile đã nhân rộng sang các tổ chức lớn hơn trong nhiều lĩnh vực, chúng ta cũng đang thấy rất nhiều biến thể của Agile. Chúng ta đã quen với nhiều framework, kỹ thuật và phương pháp được sử dụng, từ XP đến Scrum, Kanban đến cách thức phân phối liên tục các kết quả (continuous delivery). Tuy nhiên, gần đây chúng ta ngày càng nghe nhiều hơn về việc sử dụng các phương pháp “Hybrid”.

Có thể bạn đã nghe một giám đốc một doanh nghiệp nói, “Chúng ta chưa thực sự chuyển đổi linh hoạt (Agile), nhưng chúng ta đang sử dụng phương pháp lai (Hybrid)”. Hoặc có thể bạn đã nghe một số chuyên gia tư vấn khẳng định rằng "Chúng ta không sử dụng duy nhất phương pháp Hybrid, chúng ta sử dụng phương pháp kết hợp nhiều mô hình (blended approach)".

Vậy Hybrid Agile là gì và khác với Blended như thế nào? Trước hết hãy cùng tìm hiểu các kỹ thuật lặp và gia tăng dưới đây.

“Iterative” (Lặp Đi Lặp Lại),  “Incremental” (Gia Tăng) Hay “Agile” (Linh Hoạt)?

Các vòng đời của dự án tồn tại liên tục, từ một điểm đầu là dựa trên kế hoạch, cuốn chiếu từng giai đoạn, cho đến linh hoạt ở đầu kia. Để hiểu được tính liên tục này, hãy giả sử 2 trong số các khía cạnh chính của Agility là “Bàn giao sớm và thường xuyên” và “Thích ứng với thay đổi”. Nếu chúng ta vẽ biểu đồ đó trên biểu đồ hai chiều, chúng ta sẽ nhận ra một số mối quan hệ tương quan.

Ảnh: agilealliance.org

Dòng chảy liên tục bắt đầu từ phương pháp tiếp cận định hướng phát triển theo kế hoạch định sẵn Plan-Driven (phía dưới bên trái) sang phương pháp tiếp cận linh hoạt Agile (phía trên bên phải), có các cấp độ bàn giao (gia tăng) và mức độ thay đổi (lặp đi lặp lại) khác nhau. Những kỹ thuật đạt được cả cấp độ bàn giao liên tục và mức độ thích ứng cao được gọi là “Agile”.

Hybrid Agile Là Gì?

Theo định nghĩa gốc tiếng Anh: 

 Hybrid Agile is the combination of Agile methods with other non-Agile techniques.

Ảnh: agilealliance.org

Thí dụ:

  • Các yêu cầu chi tiết (User Requirement Spec) được làm rõ dần sau từng Sprint. 
  • Quá trình "làm mịn" các prototypes chỉ được thực hiện sau khi triển khai giai đoạn 1 với các kế hoạch được tuân thủ nghiêm ngặt (plan-driven). 
Công thức như sau:
Hybrid = non-Agile + Agile = something in between that makes sense

Blended Agile Là Gì?

Blended Agile là sự kết hợp của hai hoặc nhiều phương pháp, kỹ thuật hoặc các nguyên tắc trong Agile.

Với phương pháp này, chúng ta sẽ bổ sung Kanban và WIP Limits (áp suất/ngưỡng giới hạn công việc) vào Sprint. Hoặc có thể bạn muốn pha trộn "bộ tản nhiệt thông tin" (information radiator) với trạng thái bàn giao liên tục các kết quả công việc (continuous delivery).

Công thức:
Blended = Agile + Agile = Better Agile

Ảnh: agilealliance.org

“Blended” (Kết Hợp) Hay “Hybrid” (Lai)?

Về lý thuyết, phương pháp nào cũng có ưu và nhược điểm. Trong thực tế, chúng ta không chỉ sử dụng một cách tiếp cận; chúng ta hầu như luôn kết hợp các kỹ thuật khác nhau với nhau. Để hiểu các kết hợp khác nhau, chúng ta sẽ giải quyết một số định nghĩa đang hoạt động.

Khi Nào Nên Sử Dụng Các Phương Pháp Hybrid?

Cũng giống như bất cứ mô hình nào khác, luôn có một lý do đúng và một lý do sai. Sẽ là sai lầm nếu áp dụng phương pháp Hybrid chỉ để theo "trend" mà không biết rằng không phải mô hình nào cũng phù hợp với thực tế hiện tại của doanh nghiệp. Triển khai các kỹ thuật Agile không phải là mục tiêu. Mục tiêu là mang lại kết quả kinh doanh phù hợp bằng cách sử dụng các kỹ thuật và mô hình phù hợp.

Hai kịch bản tiếp cận cho kỹ thuật Hybrid:

  • Hybrid as Fit-For-Purpose (ưu tiên tính phù hợp với mục tiêu doanh nghiệp): Đối với các dự án có rủi ro thấp hơn, sử dụng các phương pháp Tiếp cận lập kế hoạch chi tiết để có được chi phí thấp. Đối với các dự án có rủi ro cao hơn, sử dụng các kỹ thuật Iterative để lặp lại các hoạt động cho đến khi các vấn đề được phát hiện và giải quyết sau đó. Đối với các dự án đòi hỏi nâng cấp liên tục, các kỹ thuật Incremental sẽ bàn giao từng kết quả nhỏ sớm hơn để khách hàng có thể tham gia vào chuỗi phát triển đầu-cuối. Cuối cùng, để chuyển đổi linh hoạt trong các môi trường phức tạp, các kỹ thuật Agile có thể có chi phí ban đầu cao hơn, nhưng về tổng thể, dự án tiết kiệm chi phí hơn so với không thực hiện Agile. Mỗi cách tiếp cận đều có một thế mạnh riêng. Nếu trộn các kỹ thuật với nhau theo đúng cách sẽ phù hợp với thực trạng hiện tại hơn là chỉ sử dụng một kỹ thuật từ đầu đến cuối.
  • Hybrid as Transition-to-Agile (chuyển dịch từng bước, không đột ngột): Không thể chuyển đổi sang mô hình Agile trong một sớm một chiều. Tổ chức càng lớn, càng nhiều bộ phận thì càng mất nhiều thời gian để chuyển đổi. Nếu doanh nghiệp của bạn quen thuộc với mô hình lập kế hoạch, thì các phương pháp Agile sẽ là một sự phá cách, một sự tiếp cận khác hoàn toàn. Do đó, bước chuyển đổi đột phá nên bắt đầu từ sự kết hợp của cả hai phương pháp: có kế hoạch và không theo kế hoạch. 

Phát triển dự án kết hợp phương pháp dự báo có kế hoạch (Predictive/Planning) và phương pháp thích ứng linh hoạt (Adaptive/Agile)

Mỗi dự án có nhu cầu khác nhau. Đối với những người quen với làm việc theo kế hoạch, cách tiếp cận Hybrid có thể là bước chuyển đổi sang khả năng thích ứng và bàn giao từng phần (delivery). Đối với những người đã quen với phương pháp bàn giao liên tục và thích ứng chủ động, việc kết hợp một số kỹ thuật mới có thể nâng khả năng quản lý của bạn lên cao hơn nữa.

Via TIGO Solutions
Tham khảo: agilealliance.org



Kinh phí bảo trì phần cứng, phần mềm nội bộ tối thiểu 5% giá trị mua sắm, đầu tư
Chi phí bảo trì các phần mềm kể từ sau khi hết thời hạn bảo hành là: 10 - 20% giá trị hợp đồng/năm hoặc tùy theo từng phần mềm cụ thể có thể có bảng giá riêng