KHÔNG CÓ VIÊN ĐẠN BẠC –
BẢN CHẤT VÀ NHỮNG SỰ CỐ CỦA KỸ THUẬT PHẦN MỀM
Frederick P. Brooks Jr. Giáo sư Khoa học Máy tính Kenan University of North Carolina at Chapel Hill New West Hall 035A Chapel Hill, North Carolina 27514 USA
Tóm tắt
Mọi hoạt động xây dựng phần mềm đều bao gồm các nhiệm vụ bản chất, là việc tạo dựng các cấu trúc khái niệm phức tạp tạo nên thực thể phần mềm trừu tượng, và các nhiệm vụ ngẫu nhiên, là sự biểu diễn các thực thể trừu tượng này trong các ngôn ngữ lập trình và sự ánh xạ chúng sang các ngôn ngữ máy trong các ràng buộc về không gian và tốc độ. Phần lớn những tiến bộ lớn trong năng suất phần mềm trước đây đến từ việc loại bỏ các rào cản nhân tạo khiến các nhiệm vụ ngẫu nhiên trở nên khó khăn quá mức, chẳng hạn như các hạn chế nghiêm ngặt về phần cứng, các ngôn ngữ lập trình vụng về, thiếu thời gian máy. Bao nhiêu phần trong những gì các kỹ sư phần mềm hiện nay làm vẫn còn dành cho cái ngẫu nhiên, trái ngược với cái bản chất? Trừ khi nó chiếm hơn 9/10 toàn bộ nỗ lực, việc thu nhỏ mọi hoạt động ngẫu nhiên xuống thời gian bằng không sẽ không mang lại sự cải thiện theo cấp độ lớn.
Vì vậy, có vẻ như thời điểm đã đến để giải quyết những phần bản chất của nhiệm vụ phần mềm, những phần liên quan đến việc tạo dựng các cấu trúc khái niệm trừu tượng có độ phức tạp lớn. Tôi đề xuất:
• khai thác thị trường đại chúng để tránh xây dựng những gì có thể mua được. • sử dụng tạo mẫu nhanh như một phần của một lần lặp có kế hoạch trong việc thiết lập các yêu cầu phần mềm. • phát triển phần mềm một cách hữu cơ, bổ sung ngày càng nhiều hàm vào các hệ thống khi chúng được chạy, sử dụng và kiểm thử. • xác định và phát triển những nhà thiết kế khái niệm vĩ đại của thế hệ đang lên.