Bài giảng Phân tích thiết kế hệ thống: Chương 4 - Từ Thị Xuân Hiền
Số trang: 33
Loại file: pptx
Dung lượng: 641.19 KB
Lượt xem: 13
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Phân tích thiết kế hệ thống: Chương 4 trình bày về "Phân tích kiến trúc". Nội dung cụ thể của chương này gồm có: Định nghĩa kiến trúc, các khái niệm trong kiến trúc, kiến trúc Client-Server, Mô hình Client-Server, mô hình Client-Server, các bước phân tích kiến trúc, mô hình hoá kiến trúc,...
Nội dung trích xuất từ tài liệu:
Bài giảng Phân tích thiết kế hệ thống: Chương 4 - Từ Thị Xuân HiềnChương 4Phân tích kiến trúc(Architecture)Kiến trúc - Architecture• Kiến trúc liên quan đến việc xác định • Các thành phần chính của hệ thống • Cách mà các thành phần này liên kết với nhau• Kiến trúc thể hiện • Tổ chức cấu trúc của hệ thống từ các thành phần của nó • Cách các phần tử tương tác với nhau để cung cấp các hành vi tổng thể của hệ thống hoặc yêu cầu chức năng Bài giảng Phân tích thiết kế hệ thống - 2Định nghĩa kiến trúc• Kiến trúc là một tập hợp các quyết định quan trọng về việc tổ chức một hệ thống phần mềm. Quyết định này bao gồm: • Việc lựa chọn các yếu tố cấu trúc và giao diện của hệ thống • Sự kết hợp của yếu tố cấu trúc và hành vi thành subsystem • Phong cách kiến trúc bao gồm các phần tử, giao diện, và sự hợp tác của chúng. Bài giảng Phân tích thiết kế hệ thống - 3Các khái niệm trong kiến trúc• Hệ thống con - Subsystems • Các lớp - Classes • Các dịch vụ - Services• Nguyên tắc xác định subsystems • Coupling • Cohesion• Chiến lược phân lớp cho việc xác định subsystems • Theo hướng trách nhiệm - Responsibility driven • Theo hướng tái sữ dụng - Reuse driven Bài giảng Phân tích thiết kế hệ thống - 4Subsystems: Classes• Một giải pháp về phạm vi bằng cách chia hệ thống thành những thành phần nhỏ hơn gọi là subsystems.• Subsystems có thể được chia nhỏ một cách đệ quy thành những subsystems đơn giản hơn.• Subsystems được cấu tạo từ các lớp thiết kế. (design classes). Bài giảng Phân tích thiết kế hệ thống - 5Subsystems: Services• Một subsystem được đặc trưng bởi các dịch vụ nó cung cấp cho subsystems khác.• Dịch vụ là: • Một tập hợp các hoạt động có liên quan chia sẻ một mục đích chung • Một tập hợp các hoạt động của một subsystem có sẵn với subsystem khác thông qua interface của subsystemSubsystems: Services• Coupling và Cohesion • Khả năng đóng gói dữ liệu (Data encapsulation), kế thừa (Inheritance) và đa hình (Polymorphism) là nền tảng của lập trình hướng đối tượng. • Một chương trình thiết kế theo hướng đối tượng đòi hỏi chia nhỏ bài toán thành các phần, sao cho chúng vừa có đặc tính liên kết (giao tiếp giữa các phần) lại vừa có khả năng tách biệt riêng rẽ để thay đổi, kiểm tra mà không ảnh hưổng đến thành phần khác Bài giảng Phân tích thiết kế hệ thống - 7Subsystems: Services• Coupling: • Mức độ phụ thuộc của một phần tử vào một phần tử khác trong hệ thống, phần tử có thể là class, sub-systems, system. • Loose coupling (không phụ thuộc nhiều vào phần tử khác): • Sub-system độc lập • Dễ hiểu hơn khi sub-systems độc lập • Sửa đổi và bảo trì dễ dàng hơn Bài giảng Phân tích thiết kế hệ thống - 8Subsystems: Services• Cohesion: • Mức độ phụ thuộc bên trong của một phần tử (class, subsystem), mức độ liên quan về chức năng giữa các nhiệm vụ của một phần tử. • High cohesion: • Subsystem chứa các đối tượng liên quan • Tất cả các phần tử hướng tới việc thực hiện cùng một tác vụ. Bài giảng Phân tích thiết kế hệ thống - 9Phân lớp - Layering• Layering là chiến lược chia hệ thống (system) thành các hệ thống con (subsystems).• Layering • Chia một hệ thống thành hệ thống phân cấp của các hệ thống con (subsystems) • Có hai cách: • Hướng trách nhiệm - Responsibility driven • Hướng tái sử dụng - Reuse driven Bài giảng Phân tích thiết kế hệ thống - 10Kiểu phân lớp• Hướng trách nhiệm - Responsibility driven: • Lớp có trách nhiệm được xác định rõ ràng • Lớp thực hiện vai trò cụ thể• Hướng tái sử dụng - Reuse driven • Các lớp được thiết kế để cho phép tái sử dụng tối đa các thành phần hệ thống. • Các lớp ở mức cao hơn sử dụng dịch vụ của các lớp cấp dướiKiểu phân lớp• Ví dụ: Bài giảng Phân tích thiết kế hệ thống - 12Kiến trúc Client-Server• Mô hình client-server bao gồm: • Server: một máy đơn hoặc một ứng dụng mà nó cung cấp các dịch vụ cho nhiều clients • Có thể là IIS (Internet Information Services) dựa trên máy chủ Web • Có thể là WCF (Windows Communication Foundation) • Có thể là một dịch vụ trong đám mây • Clients: phần mềm ứng dụng cung cấp giao diệ ...
Nội dung trích xuất từ tài liệu:
Bài giảng Phân tích thiết kế hệ thống: Chương 4 - Từ Thị Xuân HiềnChương 4Phân tích kiến trúc(Architecture)Kiến trúc - Architecture• Kiến trúc liên quan đến việc xác định • Các thành phần chính của hệ thống • Cách mà các thành phần này liên kết với nhau• Kiến trúc thể hiện • Tổ chức cấu trúc của hệ thống từ các thành phần của nó • Cách các phần tử tương tác với nhau để cung cấp các hành vi tổng thể của hệ thống hoặc yêu cầu chức năng Bài giảng Phân tích thiết kế hệ thống - 2Định nghĩa kiến trúc• Kiến trúc là một tập hợp các quyết định quan trọng về việc tổ chức một hệ thống phần mềm. Quyết định này bao gồm: • Việc lựa chọn các yếu tố cấu trúc và giao diện của hệ thống • Sự kết hợp của yếu tố cấu trúc và hành vi thành subsystem • Phong cách kiến trúc bao gồm các phần tử, giao diện, và sự hợp tác của chúng. Bài giảng Phân tích thiết kế hệ thống - 3Các khái niệm trong kiến trúc• Hệ thống con - Subsystems • Các lớp - Classes • Các dịch vụ - Services• Nguyên tắc xác định subsystems • Coupling • Cohesion• Chiến lược phân lớp cho việc xác định subsystems • Theo hướng trách nhiệm - Responsibility driven • Theo hướng tái sữ dụng - Reuse driven Bài giảng Phân tích thiết kế hệ thống - 4Subsystems: Classes• Một giải pháp về phạm vi bằng cách chia hệ thống thành những thành phần nhỏ hơn gọi là subsystems.• Subsystems có thể được chia nhỏ một cách đệ quy thành những subsystems đơn giản hơn.• Subsystems được cấu tạo từ các lớp thiết kế. (design classes). Bài giảng Phân tích thiết kế hệ thống - 5Subsystems: Services• Một subsystem được đặc trưng bởi các dịch vụ nó cung cấp cho subsystems khác.• Dịch vụ là: • Một tập hợp các hoạt động có liên quan chia sẻ một mục đích chung • Một tập hợp các hoạt động của một subsystem có sẵn với subsystem khác thông qua interface của subsystemSubsystems: Services• Coupling và Cohesion • Khả năng đóng gói dữ liệu (Data encapsulation), kế thừa (Inheritance) và đa hình (Polymorphism) là nền tảng của lập trình hướng đối tượng. • Một chương trình thiết kế theo hướng đối tượng đòi hỏi chia nhỏ bài toán thành các phần, sao cho chúng vừa có đặc tính liên kết (giao tiếp giữa các phần) lại vừa có khả năng tách biệt riêng rẽ để thay đổi, kiểm tra mà không ảnh hưổng đến thành phần khác Bài giảng Phân tích thiết kế hệ thống - 7Subsystems: Services• Coupling: • Mức độ phụ thuộc của một phần tử vào một phần tử khác trong hệ thống, phần tử có thể là class, sub-systems, system. • Loose coupling (không phụ thuộc nhiều vào phần tử khác): • Sub-system độc lập • Dễ hiểu hơn khi sub-systems độc lập • Sửa đổi và bảo trì dễ dàng hơn Bài giảng Phân tích thiết kế hệ thống - 8Subsystems: Services• Cohesion: • Mức độ phụ thuộc bên trong của một phần tử (class, subsystem), mức độ liên quan về chức năng giữa các nhiệm vụ của một phần tử. • High cohesion: • Subsystem chứa các đối tượng liên quan • Tất cả các phần tử hướng tới việc thực hiện cùng một tác vụ. Bài giảng Phân tích thiết kế hệ thống - 9Phân lớp - Layering• Layering là chiến lược chia hệ thống (system) thành các hệ thống con (subsystems).• Layering • Chia một hệ thống thành hệ thống phân cấp của các hệ thống con (subsystems) • Có hai cách: • Hướng trách nhiệm - Responsibility driven • Hướng tái sử dụng - Reuse driven Bài giảng Phân tích thiết kế hệ thống - 10Kiểu phân lớp• Hướng trách nhiệm - Responsibility driven: • Lớp có trách nhiệm được xác định rõ ràng • Lớp thực hiện vai trò cụ thể• Hướng tái sử dụng - Reuse driven • Các lớp được thiết kế để cho phép tái sử dụng tối đa các thành phần hệ thống. • Các lớp ở mức cao hơn sử dụng dịch vụ của các lớp cấp dướiKiểu phân lớp• Ví dụ: Bài giảng Phân tích thiết kế hệ thống - 12Kiến trúc Client-Server• Mô hình client-server bao gồm: • Server: một máy đơn hoặc một ứng dụng mà nó cung cấp các dịch vụ cho nhiều clients • Có thể là IIS (Internet Information Services) dựa trên máy chủ Web • Có thể là WCF (Windows Communication Foundation) • Có thể là một dịch vụ trong đám mây • Clients: phần mềm ứng dụng cung cấp giao diệ ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Phân tích và thiết kế hệ thống Phân tích và thiết kế hệ thống Thiết kế hệ thống Phân tích kiến trúc Mô hình Client-ServerGợi ý tài liệu liên quan:
-
Phân tích thiết kế hệ thống - Biểu đồ trạng thái
20 trang 266 0 0 -
Đề tài nguyên lý hệ điều hành: Nghiên cứu tìm hiểu về bộ nhớ ngoài trong hệ điều hành Linux
19 trang 221 0 0 -
62 trang 205 2 0
-
Đồ án cung cấp điện: Thiết kế hệ thống cung cấp điện cho xí nghiệp công nghiệp
108 trang 203 0 0 -
Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại: Chương 3 - TS. Vũ Chí Cường
20 trang 152 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 146 0 0 -
21 trang 131 0 0
-
Luận văn : Xây dựng chương trình sắp xếp lịch trực bác sĩ
61 trang 124 0 0 -
LUẬN VĂN: Tìm hiểu kỹ thuật tạo bóng cứng trong đồ họa 3D
41 trang 104 0 0 -
CƠ SỞ ĐIỀU KHIỂN TỰ ĐỘNG - Học Viện Bưu Chính Viễn Thông
99 trang 104 0 0