NGUỒN GỐC CỦA AGILE
Trước 2001 dân phần mềm đã loay hoay thế nào
Trước năm 2001, mấy dự án phần mềm kiểu truyền thống toàn dính đủ thứ rắc rối: trễ deadline, vượt ngân sách, làm xong khách bảo “ủa không phải cái này”. Nên nhiều người tự mày mò ra cách làm khác, và có mấy cái tên nổi bật:
- Extreme Programming (XP): lập trình cực hạn. Tập trung vào phản hồi nhanh, viết test, lập trình cặp (2 người ngồi code chung) và giữ chất lượng kỹ thuật.
- Scrum: framework làm sản phẩm theo từng chu kỳ ngắn.
- Crystal: nhóm phương pháp coi trọng con người và giao tiếp.
- DSDM (Dynamic Systems Development Method): phương pháp phát triển hệ thống linh hoạt.
- FDD (Feature-Driven Development): làm phần mềm dựa trên từng chức năng cụ thể.
Mấy cái này đều là đúc kết từ kinh nghiệm thực tế của dân làm phần mềm qua nhiều năm. Và sau này, nhiều người trong số họ gặp nhau ở Snowbird để viết ra Agile Manifesto.
Snowbird, cuộc gặp lịch sử
- Thời gian: 11–13/02/2001
- Địa điểm: The Lodge at Snowbird, bang Utah, Hoa Kỳ
- Số người: 17 người
17 người này đến từ đủ các phe: XP, Scrum, DSDM, Crystal, Adaptive Software Development, FDD. Danh sách (theo trang chính thức của Agile Manifesto):
Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas.
Vậy Scrum có đẻ ra ở Snowbird không?
Không Chỗ này nhiều người hay nhầm.
Scrum có từ trước đó rồi. Ken Schwaber với Jeff Sutherland đã trình bày Scrum công khai ở hội nghị OOPSLA năm 1995, và gốc gác của nó còn từ đầu thập niên 1990. Nên phải hiểu thế này:
- Scrum là một trong những phương pháp có trước Agile Manifesto.
- Agile Manifesto ra đời năm 2001, từ cuộc gặp của những người theo nhiều trường phái khác nhau.
- Agile không sinh ra Scrum. Ngược lại, Scrum là một trong những thứ góp phần tạo nên phong trào Agile.
Timeline cho dễ nhớ
- 1960s: Software Crisis. Làm phần mềm lớn khó quá, ai cũng than.
- 1970: Winston W. Royce công bố bài nghiên cứu về quản lý phát triển hệ thống phần mềm lớn.
- 1980s–1990s: Nhiều cách làm mới liên tục xuất hiện để khắc phục điểm yếu của quy trình cũ.
- 1990s: Scrum, XP, Crystal… lần lượt ra đời.
- 1995: Schwaber và Sutherland giới thiệu Scrum tại OOPSLA.
- 2001: 17 chuyên gia họp ở Snowbird, công bố Agile Manifesto.








Khoá học lập trình game con rắn cho trẻ em




