Có phương pháp tốt nhất cho phát triển phần mềm không?

Curtis Tsang   4 tháng 8, 2016 0 Bình luận

Công muốn giỏi việc, phải trước tiên phải mài sắc dụng cụ《Luận Ngữ. Vị Linh Công》

Để làm tốt việc, người thợ cần có công cụ tốt nhấtCác đoạn văn Khổng Tử

Phương pháp phần mềm là việc áp dụng các kỹ thuật quy trình được chọn để cải thiện chất lượng của nỗ lực phát triển phần mềm, dẫn đến ít lỗi hơn và do đó, cuối cùng cung cấp thời gian giao hàng ngắn hơn và giá trị tốt hơn. Một phương pháp phần mềm thường được cho là tốt hơn các phương pháp khác luôn là chủ đề tranh luận không dứt. Tôi phải nói rằng không có một phương pháp phát triển nào là tốt nhất, các phương pháp khác nhau là tốt nhất trong các bối cảnh dự án khác nhau.Phương pháp nào là tốt nhất phụ thuộc vào đối tượng phương pháp đó dành cho, trong hoàn cảnh nào, vì mục đích gì, v.v.; nói rằng không có phương pháp nào là tốt nhất cho các nhà phát triển phần mềm cũng đồng nghĩa với việc các phương pháp khác nhau là tốt nhất cho các đội khác nhau hoặc cho các loại dự án khác nhau.

Grady Booch nói về điều này:

“Nếu bạn muốn xây một cái chuồng chó, bạn có thể bắt đầu với một đống gỗ, vài chiếc đinh và một vài công cụ cơ bản như búa, cưa và thước dây. Trong vài giờ, bạn có thể sẽ có một cái chuồng chó khá hoạt động… Nếu bạn muốn xây một tòa nhà văn phòng cao tầng, bạn sẽ cần lên kế hoạch kỹ lưỡng… Bạn chỉ là một phần của một nhóm lớn hơn, chịu trách nhiệm phát triển và triển khai tòa nhà, do đó đội ngũ sẽ cần rất nhiều bản vẽ và mô hình để giao tiếp với nhau….”

Bạn có dùng cùng một phương pháp cho một ứng dụng web nhỏ và một tàu vũ trụ của NASA không? Có lẽ không. Bạn có dùng cùng một phương pháp với một đội sáu người như với một đội sáu mươi người không? Một lần nữa, có lẽ không. Các tình huống khác nhau rõ ràng đòi hỏi các phương pháp khác nhau như đã được Scott Amber lưu ý. Không có một kích cỡ phù hợp với tất cả giải pháp cho phát triển phần mềm, thực tế, các nhà thiết kế cần có một loạt công cụ đa dạng để sử dụng, hiểu được ưu và nhược điểm của từng công cụ, và có thể nhanh chóng quyết định công cụ phù hợp nhất để áp dụng trong một quy trình làm việc mong muốn trong bối cảnh cụ thể.

Leave a Reply