Bài giảng Nhập môn Công nghệ phần mềm: Chương 9 - ĐH Bách khoa TP HCM
Số trang: 28
Loại file: pdf
Dung lượng: 262.42 KB
Lượt xem: 10
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Nhập môn Công nghệ phần mềm: Chương 9 - Các mẫu thiết kế phục vụ tổ chức cấu trúc các đối tượng (Structural Patterns) bao gồm những nội dung về tổng quát mẫu thiết kế HĐT, mẫu Adapter, mẫu Composite, mẫu Proxy, mẫu Decorator, mẫu Facade, mẫu Flyweight.
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn Công nghệ phần mềm: Chương 9 - ĐH Bách khoa TP HCM Chương 9Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng (Structural Patterns) 9.1 Tổng quát về mẫu thiết kế HĐT 9.2 Mẫu Adapter 9.3 Mẫu Composite 9.4 Mẫu Proxy 9.5 Mẫu Decorator 9.6 Mẫu Facade 9.7 Mẫu Flyweight 9.8 Kết chương Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 19.1 Tổng quát về mẫu thiết kế HĐT Trong việc phát triển 1 phần mềm, ta thường thực hiện các hoạt ₫ộng chức năng sau ₫ây : 1. Nắm bắt yêu cầu phần mềm 2. Phân tích từng chức năng 3. Thiết kế 4. Hiện thực (hay viết code) 5. Kiểm thử Các hoạt ₫ộng trên có mối quan hệ phụ thuộc nhau, cụ thể kết quả của bước i là dữ liệu ₫ầu vào của bước thứ i+1. Do ₫ó nếu bước thứ i có lỗi, nghĩa là kết quả của nó không ₫úng thì sẽ kéo theo các bước sau ₫ó sẽ bị lỗi cho dù ta cố gắng thực hiện chúng tốt cách gì ₫i nữa. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 29.1 Tổng quát về mẫu thiết kế HĐT Như vậy, lỗi ở bước ₫ầu tiên là nguy hại nhất, kế ₫ó là lỗi ở bước thức 2, thứ 3, ... Tuy nhiên, các bước nắm bắt yêu cầu và phân tích chức năng thường chỉ tạo ra kết quả ít, chưa có ₫ộ phức tạp cao, do ₫ó ta vẫn có cách kiểm soát ₫ể những kết quả này ít có lỗi nhất. Còn bắt ₫ầu từ bước thiết kế trở ₫i, kết quả sẽ nhiều và có ₫ộ phức tạp cao hơn nên sẽ khó kiểm soát hơn. Và nếu có lỗi ở bước này thì rất nguy hại vì sẽ kéo theo hoạt ₫ộng hiện thực không có ý nghĩa gì nữa. Tóm lại, thiết kế phần mềm là một vấn ₫ề rất khó khăn, nhất là khi phần mềm lớn, mối quan hệ giữa các phần tử sẽ nhiều và phức tạp, bản thiết kế thường không hiệu quả và chứa nhiều lỗi khó biết. Hơn nữa, ta thường phải trả giá cao cho các lỗi thiết kế vì chúng ảnh hưởng nặng nề ₫ến các giai ₫oạn sau như viết code, kiểm thử…. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 39.1 Tổng quát về mẫu thiết kế HĐT Dùng phương pháp thiết kế hướng ₫ối tượng sẽ giúp ta có thể thiết kế ₫ược phần mềm có cấu trúc rõ ràng, mạch lạc, nhờ ₫ó ta dễ phát hiện lỗi nếu có, dễ hiệu chỉnh, dễ nâng cấp từng thành phần (thí dụ nhờ tính bao ₫óng, bao gộp, thừa kế, ₫a xạ, tổng quát hóa…). Tuy nhiên việc thiết kế phần mềm HĐT còn phụ thuộc nhiều vào khả năng người thiết kế, không phải ai thiết kế ₫ều tạo ₫ược những kết quả tích cực như ₫ã nêu trên. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 49.1 Tổng quát về mẫu thiết kế HĐT Hiện nay, hoạt ₫ộng thiết kế phần mềm là phải ₫ạt ₫ược 3 miêu tiêu chính sau ₫ây (trong nhiều mục tiêu khác) : Mục tiêu 1 : thiết kế ₫ược phần mềm giải quyết ₫úng các chức năng mà user yêu cầu. Đây là mục tiêu chính yếu nhất. Mục tiêu 2 : phải hạn chế ₫ược việc tái thiết kế lại trong tương lai, cho dù vì lý do gì. Mục tiêu 3 : bản thiết kế hiện hành phải hỗ trợ tốt nhất việc tái thiết kế lại nếu vì lý do gì ₫ó phải tái thiết kế lại phần mềm. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 59.1 Tổng quát về mẫu thiết kế HĐTCó nhiều nguyên nhân dẫn ₫ến tái thiết kế phần mềm (PM) : Do PM phụ thuộc vào phần cứng, hệ ₫iều hành (OS) hay PM khác : PM càng dùng trực tiếp các thông số phần cứng hay PM liên quan sẽ phải thay ₫ổi khi các thông số này thay ₫ổi. Do PM phụ thuộc vào giải thuật : khi PM có nhiều giải pháp, nhiều mức ₫ộ xử lý cho cùng một vấn ₫ề, việc ràng buộc chặt chẽ PM với giải pháp cụ thể sẽ ...
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn Công nghệ phần mềm: Chương 9 - ĐH Bách khoa TP HCM Chương 9Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng (Structural Patterns) 9.1 Tổng quát về mẫu thiết kế HĐT 9.2 Mẫu Adapter 9.3 Mẫu Composite 9.4 Mẫu Proxy 9.5 Mẫu Decorator 9.6 Mẫu Facade 9.7 Mẫu Flyweight 9.8 Kết chương Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 19.1 Tổng quát về mẫu thiết kế HĐT Trong việc phát triển 1 phần mềm, ta thường thực hiện các hoạt ₫ộng chức năng sau ₫ây : 1. Nắm bắt yêu cầu phần mềm 2. Phân tích từng chức năng 3. Thiết kế 4. Hiện thực (hay viết code) 5. Kiểm thử Các hoạt ₫ộng trên có mối quan hệ phụ thuộc nhau, cụ thể kết quả của bước i là dữ liệu ₫ầu vào của bước thứ i+1. Do ₫ó nếu bước thứ i có lỗi, nghĩa là kết quả của nó không ₫úng thì sẽ kéo theo các bước sau ₫ó sẽ bị lỗi cho dù ta cố gắng thực hiện chúng tốt cách gì ₫i nữa. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 29.1 Tổng quát về mẫu thiết kế HĐT Như vậy, lỗi ở bước ₫ầu tiên là nguy hại nhất, kế ₫ó là lỗi ở bước thức 2, thứ 3, ... Tuy nhiên, các bước nắm bắt yêu cầu và phân tích chức năng thường chỉ tạo ra kết quả ít, chưa có ₫ộ phức tạp cao, do ₫ó ta vẫn có cách kiểm soát ₫ể những kết quả này ít có lỗi nhất. Còn bắt ₫ầu từ bước thiết kế trở ₫i, kết quả sẽ nhiều và có ₫ộ phức tạp cao hơn nên sẽ khó kiểm soát hơn. Và nếu có lỗi ở bước này thì rất nguy hại vì sẽ kéo theo hoạt ₫ộng hiện thực không có ý nghĩa gì nữa. Tóm lại, thiết kế phần mềm là một vấn ₫ề rất khó khăn, nhất là khi phần mềm lớn, mối quan hệ giữa các phần tử sẽ nhiều và phức tạp, bản thiết kế thường không hiệu quả và chứa nhiều lỗi khó biết. Hơn nữa, ta thường phải trả giá cao cho các lỗi thiết kế vì chúng ảnh hưởng nặng nề ₫ến các giai ₫oạn sau như viết code, kiểm thử…. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 39.1 Tổng quát về mẫu thiết kế HĐT Dùng phương pháp thiết kế hướng ₫ối tượng sẽ giúp ta có thể thiết kế ₫ược phần mềm có cấu trúc rõ ràng, mạch lạc, nhờ ₫ó ta dễ phát hiện lỗi nếu có, dễ hiệu chỉnh, dễ nâng cấp từng thành phần (thí dụ nhờ tính bao ₫óng, bao gộp, thừa kế, ₫a xạ, tổng quát hóa…). Tuy nhiên việc thiết kế phần mềm HĐT còn phụ thuộc nhiều vào khả năng người thiết kế, không phải ai thiết kế ₫ều tạo ₫ược những kết quả tích cực như ₫ã nêu trên. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 49.1 Tổng quát về mẫu thiết kế HĐT Hiện nay, hoạt ₫ộng thiết kế phần mềm là phải ₫ạt ₫ược 3 miêu tiêu chính sau ₫ây (trong nhiều mục tiêu khác) : Mục tiêu 1 : thiết kế ₫ược phần mềm giải quyết ₫úng các chức năng mà user yêu cầu. Đây là mục tiêu chính yếu nhất. Mục tiêu 2 : phải hạn chế ₫ược việc tái thiết kế lại trong tương lai, cho dù vì lý do gì. Mục tiêu 3 : bản thiết kế hiện hành phải hỗ trợ tốt nhất việc tái thiết kế lại nếu vì lý do gì ₫ó phải tái thiết kế lại phần mềm. Khoa Khoa học & Kỹ thuật Máy tính Môn : Nhập môn Công nghệ phần mềm Trường ĐH Bách Khoa Tp.HCM Chương 9 : Các mẫu thiết kế phục vụ tổ chức cấu trúc các ₫ối tượng © 2010 Slide 59.1 Tổng quát về mẫu thiết kế HĐTCó nhiều nguyên nhân dẫn ₫ến tái thiết kế phần mềm (PM) : Do PM phụ thuộc vào phần cứng, hệ ₫iều hành (OS) hay PM khác : PM càng dùng trực tiếp các thông số phần cứng hay PM liên quan sẽ phải thay ₫ổi khi các thông số này thay ₫ổi. Do PM phụ thuộc vào giải thuật : khi PM có nhiều giải pháp, nhiều mức ₫ộ xử lý cho cùng một vấn ₫ề, việc ràng buộc chặt chẽ PM với giải pháp cụ thể sẽ ...
Tìm kiếm theo từ khóa liên quan:
Nhập môn Công nghệ phần mềm Bài giảng Công nghệ phần mềm Mẫu thiết kế tổ chức đối tượng Tổ chức cấu trúc đối tượng Structural Patterns Mẫu thiết kế AdapterGợi ý tài liệu liên quan:
-
Lecture Introduction to software engineering - Week 3: Project management
68 trang 184 0 0 -
Bài giảng Công nghệ phần mềm: Kỹ nghệ phần mềm - PGS. TS. Phạm Ngọc Hùng
29 trang 99 0 0 -
Bài giảng Công nghệ phần mềm - Chương 1: Tổng quan về CNPM
13 trang 98 0 0 -
Báo cáo đồ án: Nhập môn công nghệ phần mềm - Tìm hiểu các quy trình phát triển phần mềm
18 trang 69 0 0 -
Bài giảng Nhập môn công nghệ phần mềm: Chương 7 - Nguyễn Thanh Bình
77 trang 54 0 0 -
Bài giảng Nhập môn công nghệ phần mềm: Chương 3 - Nguyễn Thanh Bình
20 trang 47 0 0 -
Bài giảng Công nghệ phần mềm: Giới thiệu môn học - PGS. TS. Phạm Ngọc Hùng
13 trang 45 0 0 -
Bài giảng Công nghệ phần mềm: Phần 6 - Vũ Thị Hương Giang
15 trang 40 0 0 -
Lecture Introduction to software engineering - Week 1: Course introduction
11 trang 37 0 0 -
Bài giảng Nhập môn công nghệ phần mềm: Giới thiệu môn học - Nguyễn Thanh Bình
2 trang 36 0 0