Thiết kế là gì?

Một phần của tài liệu các phương pháp luận trong psp về quy trình quản lý sai sót (Trang 138 - 139)

Trong việc xem xét các sai sót thiết kế, điều quan trọng là định nghĩa những gì ta muốn đề cập với từ “thiết kế”. Điều này hóa ra lại không dễ dàng, vì mọi thứ về cấu trúc và thực thi của một chương trình đều liên quan đến thiết kế của nó. Nó bao gồm luồng chương trình, cấu trúc và bản chất của ngôn ngữ xây dựng, và ngay cả hệ thống chấm câu của mã nguồn.

Vấn đề là thiết kế là một vấn đề về cách nhìn (perspective). Có thể thiết kế chi tiết và có thể thiết kếở một mức độ cao. Khi phát triển chương trình, bạn thực hiện công việc thiết kếở hầu hết mỗi bước. Khi thực hiện các chi tiết của một câu lệnh case hay vòng lặp, bạn chỉ rõ thiết kế chi tiết. Khi định nghĩa một cấu trúc dữ liệu hay thiết lập một giao diện module, bạn sẽ thực hiện ở một mức độ nào đó cao hơn.

Sự phân tách giữa thiết kế và cài đặt vì vậy không bị bó buộc. Việc chia các hoạt động theo mức độ chi tiết liên quan đến công việc giúp tập trung vào đúng vấn đề theo đúng trật tự. Ví dụ, kỹ sư phạm ít lỗi hơn và hiệu quả hơn khi họ nghĩ qua thiết kế trước khi thực thi chúng. Điều này không có nghĩa họ thực hiện tất cả công việc của mình từ trên xuống dưới mà họ thường bắt đầu với khái niệm ở mức độ cao trước khi đào sâu vào chi tiết.

Thuật ngữ sử dụng để mô tả cách tiếp cận khái niệm ở mức cao này là khái niệm trừu tượng (abstraction). Vì vậy khi nói về một số khái niệm trừu tượng như căn bậc hai, ta đang nói về một chức năng chương trình tính toán căn bậc hai. Tuy nhiên ở mức này ta không quan tâm về tất cả các chi tiết căn bậc hai này được tính toán như thế nào. Bằng cách theo chiến thuật khái niệm trừu tượng này, có thể tạo ra một thiết kế mức cao hoàn chỉnh trước khi đi sâu vào chi tiết của việc mỗi khái niệm trừu tượng hay mỗi hàm được xây dựng như thế nào.

Ví dụ, bạn có thể bắt đầu thiết kế một chương trình đơn giản bằng cách định nghĩa 4 khái niệm trừu tượng chức năng hay các thủ tục: Input, File, Calculate và Output. Khi đó bạn có thể thiết kế quy trình chính của chương trình sử dụng những khái niệm trừu tượng này. Bước kế tiếp tất nhiên là thiết kế mỗi khái niệm trừu tượng này. Với chương trình lớn

viện các khái niệm trừu tượng được phát triển trước đây để sử dụng trong các chương trình sau này.

Một phần của tài liệu các phương pháp luận trong psp về quy trình quản lý sai sót (Trang 138 - 139)