1. Agile software development là gì?
Agile (Agile software development) hay phương pháp phát triển phần mềm theo triết lý Agile là một phương phấp luận, một triết lí phát triển phần mềm dựa trên nguyên tắc phân đoạn vòng lặp (iterative) và tăng trưởng (incremental).
2. Quản lý dự án theo phương pháp Agile là gì?
Quản lý dự án theo phương pháp Agile là một cách tiếp cận lặp đi lặp lại để quản lý dự án. Trong phương pháp (hay mô hình) agile, có thể hoàn thành các bước nhỏ, được gọi là “lặp đi lặp lại” để hoàn thành một dự án.
Một sản phẩm thuộc loại nào đó thường lặp đi lặp lại, khách hàng có thể ngay lập tức đưa ra phản hồi về những sản phẩm này
Mục tiêu là tập trung vào một loạt các nhiệm vụ nhỏ hơn đáp ứng khéo léo hơn các mục tiêu dài hạn, đưa sản phẩm đến tay người dùng càng nhanh càng tốt
3. Sự khác biệt giữa quản lý dự án truyền thống và theo mô hình agile
Trong khi quy trình quản lý dự án truyền thống tuân theo một con đường tuyến tính, thì phương pháp agile là phi tuyến tính và do đó cho phép sai lệch so với một tập hợp các bước có thứ tự.
=> Quản lý dự án theo mô hình agile bao gồm các nhiệm vụ ngắn giúp tạo điều kiện cho các lộ trình phát triển sản phẩm nhanh hơn và phản hồi kỹ lưỡng, thường xuyên hơn từ khách hàng. Đổi lại, làm việc theo nhóm và cộng tác trở nên dễ dàng hơn vì có nhiều phản hồi về sản phẩm nhiều hơn.
4. Agile gồm có 12 nguyên lý
1. ”Ưu tiên cao nhất là làm hài lòng khách hàng thông qua việc bàn giao sớm và liên tục các phần mềm có giá trị.” Vì một số khách hàng có thể cảm thấy khó chịu khi họ không nhìn thấy bất kỳ thành phẩm nào hoặc các bản cập nhật rõ ràng khác sau thời gian dài làm việc.
2. “Hoan nghênh các yêu cầu thay đổi, ngay cả khi phát triển chậm. Các quy trình Agile khai thác sự thay đổi vì lợi thế cạnh tranh của khách hàng.” Bằng cách này, chúng ra không hướng tới một ý tưởng cứng nhắc về một giải pháp, mà là một sản phẩm luôn thích ứng để giải quyết vấn đề rõ ràng.
3. “Cung cấp phần mềm đang hoạt động thường xuyên, từ vài tuần đến vài tháng, với ưu tiên khoảng thời gian ngắn hơn.” Với mỗi sản phẩm mà bạn cung cấp cho khách hàng, giảm thiểu khả năng cần phải thực hiện những thay đổi lớn đối với một phần của dự án sẽ có ảnh hưởng đến các phần khác.
4. “Nhà kinh doanh và developer phải làm việc cùng nhau hàng ngày trong suốt dự án.” Nguyên tắc này nhắc nhở các nhóm dự án rằng những người ưu tiên kinh doanh có thể có quan điểm và nhu cầu khác với những người tập trung vào nghiên cứu và phát triển sản phẩm.
5. “Xây dựng các dự án xung quanh những cá nhân có động lực. Hãy cho họ môi trường và sự hỗ trợ mà họ cần, và tin tưởng để họ hoàn thành công việc.” Tạo ra một không gian trong đó các thành viên trong nhóm có các công cụ và sự hỗ trợ của giám sát để di chuyển qua các lần lặp lại
6. ”Phương pháp hiệu quả nhất để truyền tải thông tin đến nhóm developer là trò chuyện trực tiếp.” Các cuộc trò chuyện thực có thể là tốt nhất để xác định các thách thức và suy nghĩ tìm ra các giải pháp khả thi
7. ”Phần mềm làm việc là thước đo chính của sự tiến bộ.” Hiển thị kết quả và sản phẩm là cách dễ nhất để chứng minh rằng bạn đang giải quyết các nhu cầu đã xác định
8. “Các quy trình Agile thúc đẩy sự phát triển bền vững. Các nhà tài trợ, developer và người dùng sẽ có thể duy trì một tốc độ liên tục vô thời hạn.” Thiết lập các quy trình làm việc nhất quán. Với những quy trình làm việc này, các thành viên trong nhóm sẽ không bị quá tải và sẽ có thể tiến hành một dự án đúng cách.
9. “Sự quan tâm liên tục đến kỹ thuật và thiết kế tốt giúp tăng cường sự nhanh nhẹn.” Quản lý dự án Agile là lặp đi lặp lại, không dài hạn. Do đó, các thành viên trong nhóm có thể thấy dễ dàng hơn khi luôn tập trung vào chất lượng chứ không phải số lượng. Điều này có nghĩa là ít sai lầm hơn để sửa chữa sau này và do đó hoàn thành dự án sớm hơn.
10. “Sự đơn giản – nghệ thuật tối đa hóa khối lượng công việc là điều cần thiết.” Quản lý dự án Agile tìm cách tối đa hóa hiệu quả và hạn chế số lượng các thay đổi lớn cần phải thực hiện sau khi dự án kết thúc.
11. “Các kiến trúc, yêu cầu và thiết kế tốt nhất xuất hiện từ các nhóm tự tổ chức.” Nhóm của bạn nên tự quyết định cách phân chia công việc tốt nhất và đáp ứng nhu cầu của khách hàng.
12. “Theo định kỳ, nhóm nghiên cứu phản ánh về cách trở nên hiệu quả hơn, sau đó điều chỉnh và điều chỉnh hành vi của mình cho phù hợp.” Quá trình lặp đi lặp lại, trong khi một phần nhằm mục đích tránh những thay đổi lớn vào thời điểm cuối cùng. Đó là lý do tại sao các nhóm nên thường xuyên xem xét các quy trình và tìm ra cách cải thiện trong tương lai
Link tham khảo: https://viblo.asia/p/agile-software-development-oaKYMNPbv83E