1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Nhập môn công nghệ phần mềm: Chủ đề 4 - Lương Trần Hy Hiến (tt)

21 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 739,06 KB

Nội dung

Bài giảng Nhập môn công nghệ phần mềm - Chủ đề 4: Thiết kế phần mềm phần tiếp theo cung cấp cho người học các kiến thức về cấu trúc phần mềm, bao gồm: Khái niệm, các mô hình kiến trúc, công nghệ phân tán. Mời các bạn cùng tham khảo.

Chủ đề 4: Thiết kế Phần mềm (tt) COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Kiến trúc phần mềm Heavily reference to Introduction SE Slides: Nguyen Minh Huy, HCMUS Ivan Sommerville, Software Engneering, Chapter 11 COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Nội dung • Khái niệm kiến trúc • Các mơ hình kiến trúc • Cơng nghệ phân tán COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Khái niệm kiến trúc • Kiến trúc phần mềm gì? – Phần mềm khơng đơn  Có thành phần bên – Thắc mắc thành phần con: • Được tổ chức, xếp nào? • Mối liên hệ chúng? • Có cấu trúc sao?  Kiến trúc phần mềm COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Kiến trúc phần mềm • Là cấu trúc hệ thống tạo nên bởi: – Các thành phần – Các thuộc tính thành phần thấy từ bên – Mối quan hệ thành phần COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Khái niệm kiến trúc (tt) • Tầm quan trọng kiến trúc: – Ảnh hưởng hiệu hoạt động: • • • • Tính Tính Tính Tính tốc độ (performance) thích ứng (scalability) bảo mật (security) chịu lỗi (fault—tolerance) – Ảnh hưởng chi phí: • Khả triển khai • Khả vận hành • Khả bảo trì – Ảnh hưởng thiết kế cài đặt COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Khái niệm kiến trúc (tt) • Thiết kế kiến trúc: – Hoạt động pha thiết kế – Xác định khung sườn phần mềm – Các bước thực hiện: • Phân rã hệ thống (sub-system) • Bố trí thành phần • Thiết lập mối quan hệ COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Khái niệm kiến trúc (tt) • Thiết kế kiến trúc: – Hoạt động pha thiết kế – Xác định khung sườn phần mềm – Các bước thực hiện: • Phân rã hệ thống (sub-system) • Bố trí thành phần • Thiết lập mối quan hệ COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Các mơ hình kiến trúc • Phân loại mơ hình: – Mơ hình đơn lập – Mơ hình phân tán • Mơ hình Client – Server • Mơ hình tầng • Mơ hình Peer-To-Peer COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Mơ hình đơn lập • • • • Là thể thống Khơng có phân nhóm Các thành phần tự tương tác Ưu điểm: – Dễ lập trình triển khai – Tốc độ xử lý • Khuyết điểm: – Khó bảo trì, nâng cấp – Khơng chia liệu COMP1026 – Introduction to Software Engneering CH4 – Part - 10 HIENLTH Mơ hình Client – Server • Phân làm phân hệ: – Server: • Cung cấp dịch vụ (dữ liệu, thư viện) • Chia sẽ, dung chung – Client: • Sử dụng dịch vụ (giao diện, thư viện) • Phân tán • Tương tác thành phần: – Trong phân hệ: tự tương tác – Giữa hai phân hệ: tương tác chiều từ client đến server COMP1026 – Introduction to Software Engneering CH4 – Part - 11 HIENLTH Mơ hình Client – Server (tt) • Mơ hình Thin-Client: – Server đảm trách liệu + xử lý – Client lo phần giao diện người dùng  dump terminal • Mơ hình Fat-Client: – Server đảm trách liệu – Client lo toàn giao diện + xử lý người dùng COMP1026 – Introduction to Software Engneering CH4 – Part - 12 HIENLTH Mơ hình Client – Server (tt) • Ưu điểm: – Dữ liệu chia đồng – Hạn chế tương tác Cơ lập lỗi Dễ bảo trì, nâng cấp • Khuyết điểm: – Chi phí triển khai – Tốc độ xử lý COMP1026 – Introduction to Software Engneering CH4 – Part - 13 HIENLTH Mơ hình tầng (3-tier) • Phân làm phân hệ: – Tầng liệu (data layer) • Dịch vụ liệu • Data center – Tầng xử lý (business layer) • Thư viện xử lý • Application server – Tầng giao diện (presentation layer) • Giao diện người dung • Thin-Client • Quy tắc tương tác thang máy  không tương tác vượt tầng COMP1026 – Introduction to Software Engneering CH4 – Part - 14 HIENLTH Mơ hình tầng (3-tier) (tt) • Mơ hình đa tầng: – Mở rộng mơ hình tầng – Phần làm nhiều tầng xử lý – Thường dùng ứng dụng web • Ưu điểm: – Tương tự mơ hình client-server – Xử lý chia sẻ chia nhỏ • Khuyết điểm: – Tương tự mơ hình client-server COMP1026 – Introduction to Software Engneering CH4 – Part - 18 HIENLTH Mơ hình Peer-to-Peer • Là mơ hình đơn lập phân tán • Triển khai nhiều máy (node) – Các node tương tác với – Mỗi node đóng vai trò client-server – Chia liệu + xử lý tồn node • Ưu điểm: – Khơng cần server trung tâm – Không gian lưu trữ khả xử lý dàn trải – Dễ triển khai • Nhược điểm: – Khó lập trình quản lý liệu COMP1026 – Introduction to Software Engneering CH4 – Part - 25 HIENLTH Cơng nghệ phân tán • Middleware • Web Service COMP1026 – Introduction to Software Engneering CH4 – Part - 26 HIENLTH Middleware • Các thành phần hệ phân tán giao tiếp nào?  hệ thống đứng điều phối • Các chuẩn phổ biến: – CORBA (Common Object Request Broker Architecture) – COM (Component Object Model) – JavaBeans COMP1026 – Introduction to Software Engneering CH4 – Part - 27 HIENLTH Web Service • • • • Thư viện lập trình dựng sẵn Cung cấp dạng dịch vụ Truy xuất qua internet Các dịch vụ phổ biến: – Math services – Google map – Amazon service • Các chuẩn giao tiếp XML: – SOAP (Simple Object Access Protocol) – WSDL (Web Services Description Language) – UDDI (Universal Description Discovery and Integration) COMP1026 – Introduction to Software Engneering CH4 – Part - 28 HIENLTH Bài tập Thiết kế kiến trúc cho đồ án mơn học: • Phân rã hệ thống  DS thành phần • Bố trí thành phần lựa chọn mơ hình kiến trúc sắp xếp thành phần vào mơ hình • Thiết lập mối quan hệ COMP1026 – Introduction to Software Engneering CH4 – Part - 29 HIENLTH Câu hỏi thảo luận COMP1026 – Introduction to Software Engneering CH4 – Part - 30 HIENLTH ... Cơng nghệ phân tán COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Khái niệm kiến trúc • Kiến trúc phần mềm gì? – Phần mềm khơng đơn  Có thành phần bên – Thắc mắc thành phần. .. Kiến trúc phần mềm COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Kiến trúc phần mềm • Là cấu trúc hệ thống tạo nên bởi: – Các thành phần – Các thuộc tính thành phần thấy... người dung • Thin-Client • Quy tắc tương tác thang máy  không tương tác vượt tầng COMP1026 – Introduction to Software Engneering CH4 – Part - 14 HIENLTH Mơ hình tầng (3-tier) (tt) • Mơ hình đa

Ngày đăng: 20/05/2021, 02:31