Waterfall và Agile là hai phương pháp phát triển phần mềm phổ biến được nhiều doanh nghiệp sử dụng hiện nay. Waterfall là mô hình phát triển tuyến tính, có nghĩa là mỗi giai đoạn chỉ bắt đầu sau khi giai đoạn trước đó hoàn thành. Khác với Waterfall, Agile lại là một mô hình phát triển linh hoạt, với các vòng lặp ngắn và thường xuyên để đáp ứng đầy đủ nhu cầu của khách hàng. Cả 2 mô hình đều có những ưu điểm và nhược điểm riêng biệt. Tuy nhiên, sẽ rất hữu ích nếu các nhà quản lý dự án (PM), nhà phân tích nghiệp vụ (BA) hiểu được sự khác biệt tương đối giữa các mô hình và cách chúng tác động đến phân tích nghiệp vụ – đặc biệt nếu bạn làm việc trong môi trường sử dụng cả hai phương pháp.
Bài viết sau, BAC sẽ cung cấp những quan điểm để so sánh tác động tương quan giữa mô hình Waterfall và Agile nên chớ đừng bỏ lỡ nhé!
1. Tổng quan về mô hình Waterfall và Agile
Phương thức thác nước truyền thống (traditional Waterfall method) đi qua các giai đoạn xác định bao gồm Yêu cầu, Thiết kế, Triển khai và Xác minh, với một cổng để biểu thị điểm mà tại đó phương thức chuyển giao từ giai đoạn này sang giai đoạn tiếp theo.
Một phương pháp Agile phù hợp với 12 nguyên tắc của Tuyên ngôn Agile.
Các phương pháp được so sánh trên ba lĩnh vực quan trọng đối với các nhà phân tích nghiệp vụ:
- Nỗ lực tương đối liên quan đến việc xác định và quản lý các yêu cầu.
- Rủi ro tương đối của các yêu cầu không được xác định rõ ràng.
- Thời gian để thực hiện hóa lợi ích.
BA nên cân nhắc các yếu tố như tính linh hoạt, phản hồi khách hàng, thời gian và chi phí để quyết định lựa chọn phương pháp phát triển phù hợp cho dự án của mình.
2. Quản lý yêu cầu
Khung thời gian để thu thập, chỉ định và quản lý yêu cầu khác nhau rất nhiều giữa hai phương pháp. Phương pháp thác nước truyền thống có giai đoạn thu thập yêu cầu ở đầu dự án, trong đó trọng tâm là các hoạt động quản lý và đặc tả yêu cầu. Vào cuối giai đoạn này, khả năng thay đổi yêu cầu sẽ bị hạn chế. Do đó, hầu hết các nỗ lực để thu thập và quản lý các yêu cầu đều xảy ra trong giai đoạn đầu tiên.
So với Waterfall, các hoạt động thu thập, khơi gợi và quản lý yêu cầu cho một dự án Agile được phân bổ đồng đều hơn trong suốt vòng đời thực hiện dự án vì các yêu cầu được xem xét, đánh giá, cập nhật và ưu tiên liên tục.
3. Rủi ro
Các yêu cầu bị thiếu sót, không chính xác hoặc không được xác định rõ ràng sẽ khiến việc phân phối các sản phẩm phù hợp với mục đích ban đầu có nguy cơ gặp rủi ro cao. Tuy nhiên, rủi ro liên quan đến việc các yêu cầu không được xác định rõ ràng khác nhau đáng kể khi so sánh giữa hai phương pháp Waterfall và Agile.
Rủi ro được đặt ra bởi yêu cầu không được xác định rõ ràng đối với phương pháp Waterfall truyền thống thấp hơn trong giai đoạn yêu cầu của dự án vì đây là thời điểm yêu cầu có thể được thêm và thay đổi mà không ảnh hưởng đến các giai đoạn khác. Sau giai đoạn này, rủi ro do yêu cầu không được xác định rõ ràng tăng đáng kể và tiếp tục tăng trong suốt thời gian thực hiện dự án. Đối với phương pháp Agile, rủi ro do yêu cầu không được xác định rõ ràng tương đối ổn định trong suốt dự án.
Tuy nhiên, nó sẽ rất hữu ích để xem xét rủi ro tương đối theo các thành phần cấu thành nên nó như khả năng các yêu cầu không được xác định rõ ràng và tác động của việc tồn tại những yêu cầu này trong dự án.
Đối với cách tiếp cận Wartefall truyền thống, tất cả nỗ lực để thu thập và tài liệu hóa các yêu cầu xảy ra ở giai đoạn đầu dự án với quy định hạn chế trong việc sửa đổi hoặc xem xét, đánh giá lại yêu cầu trong các giai đoạn sau. Điều này có nghĩa là khả năng có yêu cầu không được xác định rõ ràng tương đối cao. Khả năng có các yêu cầu không được xác định rõ ràng khá ổn định trong suốt dự án vì nó là kết quả của các ràng buộc hạn chế được áp đặt bởi phương pháp.
Ngược lại, tác động của các yêu cầu không xác định khá thấp đối với các phương pháp thác nước trong giai đoạn yêu cầu ban đầu của dự án vì đây là thời điểm có cơ chế để đánh giá và thay đổi yêu cầu. Sau đó, tác động của các yêu cầu không được xác định rõ ràng có thể tăng lên đáng kể (đặc biệt là đối với các dự án liên quan đến việc mua tài nguyên hay các sản phẩm theo yêu cầu như là một phần của giai đoạn tiếp theo) và tiếp tục tăng trong suốt vòng đời của dự án. Điều này là do chi phí thay đổi sản phẩm tăng lên khi sáng kiến tiến triển thông qua các giai đoạn thiết kế, triển khai và xác nhận.
Để so sánh, các phương pháp Agile bao gồm các cơ chế để kết hợp thông tin mới vào các yêu cầu trong suốt dự án, nghĩa là khả năng các yêu cầu không được xác định rõ sẽ giảm dần khi dự án tiến triển. Đồng thời, tác động của các yêu cầu này sẽ tăng lên trong suốt vòng đời dự án khi các sản phẩm được phát hành dần dần.
Cuối cùng, tác động của yêu cầu không được xác định rõ ràng đối với các dự án tương đương là tương đối giống nhau đối với cả hai phương pháp Waterfall và Agile - đó chính là khả năng góp phần vào sự khác biệt tổng thể về rủi ro tương đối.
4. Hiện thực hóa lợi ích
Một điểm khác biệt chính giữa phương pháp Waterfall và Agile là khi lợi ích được thực hiện. Đối với các dự án Waterfall, lợi ích không thể được thực hiện cho đến khi các sản phẩm chính được hoàn thành. Có cơ hội hạn chế để thực hiện lợi ích sớm trong các dự án Waterfall truyền thống. So sánh với đó, các phương pháp Agile cung cấp cơ hội nhận ra lợi ích sớm với việc phân phối sản phẩm gia tăng.
5. Tại sao việc so sánh lại quan trọng?
Vậy tại sao việc hiểu sự khác biệt tương đối giữa các phương pháp Waterfall và Agile lại hữu ích? Có một số cách mà việc này có thể giúp ích, bao gồm:
- Lập kế hoạch nguồn lực: giúp bạn lập kế hoạch và phân bổ nguồn lực vào những nơi cần thiết dựa trên phương pháp đang được sử dụng.
- Giao tiếp: giúp bạn mô tả được các ưu điểm và rủi ro tương đối của một cách tiếp cận với các bên liên quan.
- Chứng minh quan điểm của bạn: cung cấp một số luận điểm để giúp bạn đưa ra lập luận cho một cách tiếp cận khác.
- Đánh giá các phương án thay thế: cung cấp cơ sở để đánh giá các phương pháp thay thế và tùy chỉnh các phương pháp phù hợp.
Như vậy, bài viết này BAC đã cung cấp một so sánh tương đối giữa Waterfall và Agile trên ba lĩnh vực. Bằng cách so sánh các khía cạnh của các phương pháp Waterfall và Agile theo quan điểm tương đối, bài viết này không nhằm mục đích thúc đẩy phương pháp này tốt hơn phương pháp khác vì cả hai đều có vai trò riêng của nó. Ngoài ra, phân tích này chưa tính đến tất cả các biến thể, sự kết hợp giữa các phương pháp tiếp cận. Tuy nhiên, việc hiểu được sự khác biệt tương đối giữa các mô hình cơ bản có thể hỗ trợ khi chuẩn bị và lập kế hoạch làm việc với một phương pháp cụ thể – đặc biệt là trong môi trường mà các nhà phân tích nghiệp vụ có thể được mong đợi làm việc với nhiều phương pháp khác nhau. Đừng quên đồng hành cùng BAC để tìm hiểu thêm nhiều kiến thức bổ ích về thế giới BA tại BAC's Blog nhé!
Nguồn tham khảo:
Nhu cầu đào tạo doanh nghiệp
BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển.
CÁC KHOÁ HỌC BUSINESS ANALYST BACs.VN DÀNH CHO BẠN
Khoá học Online:
Khoá học Offline:
Tại Tp.HCM:
Tại Hà Nội:
Tham khảo lịch khai giảng TẤT CẢ các khóa học mới nhất
Ban biên tập nội dung - BAC