Khi trí tuệ nhân tạo đang biến đổi việc phát triển phần mềm bằng cách cho phép tạo code nhanh chóng, một phương pháp bất ngờ từ cuối những năm 1990 đang nhận được sự chú ý mới. Extreme Programming ( XP ), từng được coi là cực đoan với các thực hành như pair programming bắt buộc, đang được xem xét lại như một giải pháp cho các vấn đề được tạo ra bởi việc phát triển được tăng tốc bởi AI.
Vấn đề cốt lõi không còn là về tốc độ gõ phím hay đầu ra code nữa. Các công cụ AI giờ đây có thể tạo ra toàn bộ ứng dụng trong vài giờ, nhưng sự tăng tốc này đã tạo ra một thách thức mới: các đội đang sản xuất phần mềm nhanh hơn khả năng xác thực xem nó có thực sự hữu ích hay chính xác không.
Thách thức trong Tạo mã AI
- Độ chính xác của LLM giảm khi cửa sổ ngữ cảnh dài hơn
- Rủi ro tạo ra phần mềm nhanh hơn khả năng xác thực
- Các agent tự động có thể xếp chồng logic chưa được xác thực
- Mã nguồn mỏng manh, rối rắm trở nên tốn kém để thay đổi
Quan Điểm Phát Triển Của Kent Beck Về AI Và Lập Trình
Người tạo ra Extreme Programming đã tích cực khám phá cách AI phù hợp với các thực hành phát triển hiện đại. Kent Beck đã thừa nhận rằng trong khi 90% kỹ năng lập trình truyền thống có thể trở nên lỗi thời với AI, 10% còn lại trở nên có giá trị theo cấp số nhân. Sự thay đổi này làm nổi bật chính xác những gì XP được thiết kế để giải quyết: các yếu tố con người trong phát triển phần mềm mà không có lượng tự động hóa nào có thể thay thế.
Các cuộc thảo luận cộng đồng cho thấy nhiều developer đang thấy cách tiếp cận test-first của XP đặc biệt có giá trị khi làm việc với code do AI tạo ra. Thực hành này cung cấp một cách đáng tin cậy để xác thực đầu ra của AI và giúp tạo ra code có ý nghĩa từ các công cụ AI ngay từ đầu.
Vấn Đề Với Việc Tăng Tốc AI Không Giới Hạn
Nghiên cứu cho thấy các mô hình ngôn ngữ lớn trở nên kém chính xác hơn khi cửa sổ ngữ cảnh phát triển dài hơn, có nghĩa là các phiên coding AI kéo dài có xu hướng tạo ra kết quả ngày càng mong manh. Điều này tạo ra một vấn đề tích lũy khi logic do AI tạo ra chưa được xác thực xây dựng dựa trên chính nó, tạo ra các hệ thống phức tạp trở nên tốn kém để sửa đổi sau này.
Sự nhấn mạnh của XP vào các batch nhỏ, phản hồi liên tục và các ràng buộc có chủ ý trực tiếp giải quyết vấn đề này. Bằng cách chậm lại vừa đủ để xác thực từng bước, các đội có thể khai thác tốc độ của AI trong khi tránh cái bẫy xây dựng các hệ thống phức tạp hoàn toàn bỏ lỡ mục tiêu.
Tỷ lệ thành công của các dự án phần mềm theo thời gian
- 1994: 16% dự án được giao đúng thời hạn và đúng ngân sách
- 2012: Tỷ lệ thành công 37%
- 2020: Tỷ lệ thành công 31%
- Cải thiện ròng trong 26 năm: +15 điểm phần trăm
Pair Programming Có Ý Nghĩa Mới
Thực hành pair programming, mà XP đã làm nổi tiếng vì giảm một nửa sản lượng thô nhưng tăng gấp đôi hiểu biết chung, đang được diễn giải lại cho kỷ nguyên AI. Một số developer đang khám phá các cách tiếp cận pairing kết hợp sự hợp tác của con người với hỗ trợ AI, mặc dù những người theo chủ nghĩa thuần túy cho rằng lợi ích pair programming thực sự chỉ xảy ra giữa con người có thể xây dựng ngữ cảnh chung lâu dài.
Tôi nghĩ kịch bản lý tưởng thường là hai programmer làm cặp sử dụng một bộ AI agent chung trên cùng một working branch. Đó là một vòng phản hồi lý tưởng của việc lập kế hoạch, đánh giá, xây dựng và kiểm thử theo cặp.
Insight quan trọng là trong khi AI có thể tăng tốc việc tạo code, nó không thể thay thế khả năng phán đoán của con người cần thiết để xác định xem code đó có giải quyết các vấn đề thực cho người dùng thực hay không.
Các Giá Trị XP Chủ Chốt Cho Kỷ Nguyên AI
- Đơn giản hóa: Giảm độ phức tạp của hệ thống
- Giao tiếp: Duy trì sự gắn kết trong nhóm
- Phản hồi: Thúc đẩy việc học hỏi và thích ứng
- Tôn trọng: Xây dựng sự an toàn và tin tưởng
- Can đảm: Tạo điều kiện cho sự minh bạch và thay đổi
Tại Sao Phương Pháp Vẫn Quan Trọng Sau Nhiều Thập Kỷ Đổi Mới
Mặc dù có những làn sóng tiến bộ công nghệ từ ngôn ngữ lập trình cấp cao đến nền tảng cloud và giờ là AI, tỷ lệ thành công của dự án phần mềm chỉ cải thiện một cách khiêm tốn trong 30 năm qua. Nghiên cứu Standish Chaos cho thấy tỷ lệ giao hàng dự án thành công tăng từ chỉ 16% năm 1994 lên 31% năm 2020 - một mức tăng khiêm tốn mặc dù có những thay đổi cách mạng trong công cụ.
Thách thức dai dẳng này cho thấy rằng nút thắt cổ chai trong giao hàng phần mềm không phải là khả năng kỹ thuật, mà là các yếu tố con người và tổ chức mà XP đặc biệt nhắm đến: giao tiếp, vòng phản hồi, hiểu biết chung và sự phù hợp với nhu cầu người dùng.
Các giá trị cốt lõi của phương pháp về sự đơn giản, giao tiếp, phản hồi, tôn trọng và can đảm vẫn có liên quan ngày nay như chúng đã có trong những năm 1990. Những nguyên tắc này giúp các đội điều hướng sự phức tạp gia tăng đi kèm với việc phát triển được hỗ trợ bởi AI, đảm bảo rằng việc tạo code nhanh hơn chuyển thành kết quả tốt hơn thay vì chỉ nhiều sản lượng hơn.
Tham khảo: Should we revisit Extreme Programming in the age of AI?