Giáo Trình Công Nghệ Phần Mềm part 5

13 20 0
Giáo Trình Công Nghệ Phần Mềm part 5

Đ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

Tham khảo tài liệu ''giáo trình công nghệ phần mềm part 5'', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Thiết kế (6) Nguyễn Thanh Bình Khoa Cơng nghệ Thơng tin Trường ðại học Bách khoa ðại học ðà Nẵng Thiết kế ? phân tích tốn/vấn đề xuất phát từ yêu cầu mô tả nhiều giải pháp ñánh giá giải pháp, chọn giải pháp tốt mức trừu tượng ñịnh sử dụng mơ hình tính chất trả lời câu hỏi “như nào” mô tả chủ yếu cấu trúc bỏ qua chi tiết cài đặt • giải pháp trừu tượng ≠ giải pháp cụ thể Các giai ñoạn thiết kế Hoạt ñộng thiết kế xuất mơ hình phát triển khác Hai giai đoạn thiết kế Thiết kế kiến trúc • phân tích giải pháp thành thành phần • định nghĩa giao diện thành phần • định nghĩa phần vấn đề giải thành phần • ñược thực nhiều mức trừu tượng Thiết kế chi tiết • thiết kế thuật tốn, cấu trúc liệu Các giai ñoạn thiết kế Requirements specification Design activities Architectural design Abstract specificatio n Interface design Component design Data structure design Algorithm design System architecture Software specification Interface specification Component specification Data structure specification Algorithm specification Design products Các giai ñoạn thiết kế Architectural design xác ñịnh hệ thống Abstract specification ñặc tả hệ thống Interface design mô tả giao diện hệ thống Component design phân tích hệ thống thành thành phần Data structure design cấu trúc liệu lưu trữ liệu tốn Algorithm design thiết kế thuật tốn cho hàm/mơ-đun Tại phải thiết kế ? có kiến trúc tốt làm chủ ñược cấu trúc hệ thống “chia ñể trị” ñạt ñược tiêu chuẩn chất lượng tái sử dụng / dễ keỉem thử / dễ bảo trì thiết kế hướng ñến thay ñổi (design for change) Thiết kế thay ñổi Thay ñổi = tích chất ñặc trưng phần mềm Dự báo thay đổi cần thiết giảm chi phí bảo trì Dự báo thay đổi khó khăn thay ñổi thường không ñược xác ñịnh trước nhiều yếu tố thay đổi lúc thời điểm thay đổi khó biết trước Thiết kế thay đổi Các yếu tố thay đổi thuật tốn cấu trúc liệu biểu diễn liệu bên thiết bị ngoại vi môi trường xã hội yêu cầu khách hàng Thiết kế hướng mơ-đun Phần mềm tập hợp gồm mơ-đun tương tác với Mơ-đun hóa đóng vai trị quan trọng để có phần mềm chất lượng với chi phí thấp Mục đích thiết kế hệ thống xác định mơ-đun xác định tương tác mơ-đun Các tiêu chuẩn phương pháp thiết kế Các tiêu chuẩn ñể ñánh giá phương pháp thiết kế hướng mô-ñun tính phân rã (modular decomposability) tính tổng hợp (modular composability) tính dễ hiểu (modular understandability) tính liên tục (modular continuity) tính bảo vệ (modular protection) 10 Các tiêu chuẩn phương pháp thiết kế tính phân rã (modular decomposability) phân rã vấn ñề thành vấn ñề nhỏ giải vấn đề cách ñộc lập phương pháp thiết kế từ xuống (todown design) thỏa mãn tiêu chuẩn 11 Các tiêu chuẩn phương pháp thiết kế tính tổng hợp (modular composability) mơ-đun dễ dàng kết hợp với ñể tạo nên hệ thống có mối quan hệ chặt chẽ với tính tái sử dụng tính tổng hợp xung đột với tính phân rã • phân rã thành mơ-đun chun biệt thay mơ-đun tổng qt 12 Các tiêu chuẩn phương pháp thiết kế tính dễ hiểu (modular understandability) thiết kế mơ-đun cách dễ hiểu tính chất mơ-đun • mơ-đun hiểu ? • tên sử dụng có ý nghĩa ? • cso sử dụng thuật tốn phức tạp ? Ví dụ sử dụng “goto” chương trình vài nghìn dịng lệnh, không sử dụng hàm/thủ tục 13 Các tiêu chuẩn phương pháp thiết kế tính liên tục (modular continuity) thay ñổi ñặc tả yêu cầu dẫn ñến thay ñổi (hoặc số ít) mơ-đun Ví dụ ☺khơng sử dụng số chuỗi ký tự chương trình, sử dụng ñã ñịnh nghĩa sử dụng mảng 14 Các tiêu chuẩn phương pháp thiết kế tính bảo vệ (modular protection) kiến trúc ñươc thiết kế cho ñiều kiện bất thường xảy ra, (hoặc số ít) mơ-đun bị ảnh hưởng 15 Thiết kế kiến trúc Kiến trúc = tập hợp thành phần/mơ-đun quan hệ chúng thành phần/mơ-đun • hàm / nhóm hàm / lớp quan hệ • sử dụng / gọi / thừa kế 16 Chất lượng kiến trúc mơ-đun có tính kết cố cao (high cohesion) mơ-đun đơn vị lơ-gíc tồn mơ-đun đóng góp thực mục tiêu liên kết lỏng lẽo (low coupling) mơđun ràng buộc, phụ thuộc lẫn dễ hiểu định nghĩa rỏ ràng mơ-đun quan hệ chúng 17 Các loại kiến trúc Ba loại mơ hình kiến trúc thường sử dụng chia liệu: mơ hình “Repository” chia dịch vụ, servers: mơ hình “ClientServer” mơ hình lớp (layered model) 18 Mơ hình “Repository” Ngun tắc liệu chia tập trung CSDL hệ thống ñều truy cập vào CSDL chung Khi lượng liệu lớn cần chia hệ thống mô hình “Repository” thường sử dụng 19 Mơ hình “Repository” Ví dụ kiến trúc cơng cụ CASE 20 10 Mơ hình “Repository” Ưu diểm đơn giản hiệu chia lượng liệu lớn ñộc lập hệ thống Hạn chế hệ thống phải thống mơ hình liệu “repository” khó khăn phân tán liệu 21 Mơ hình “Client-Server” Ngun tắc mơ hình phân tán: liệu xử lý ñược phân tán nhiều thành phần khác Hệ thống bao gồm servers cung cấp dịch vụ • có nhiều servers clients u cầu dịch vụ phương thức trao đổi • mạng hay máy tính 22 11 Mơ hình “Client-Server” Ví dụ 23 Mơ hình “Client-Server” Ưu điểm sử dụng hiệu mạng dễ dàng thêm server nâng cấp server phân tán liệu dễ dàng Hạn chế hệ thống quan lý liệu riêng • dẫn đến dư thừa khơng có kiến trúc tập trung ghi nhận dich vụ • khó khăn để xác định liệu hay dịch vụ sử dụng 24 12 Mơ hình lớp Ngun tắc tổ chức hệ thống thành tập hợp lớp lớp cung cấp tập hợp dịch vụ ñược sử dụng để mơ tả quan hệ hệ thống giao diện lớp thay ñổi, lớp kế cận bị ảnh hưởng hỗ trợ mô hình phát triển tăng trưởng 25 Mơ hình lớp Ví dụ: hệ thống quản lý phiên 26 13 ... kế Thiết kế kiến trúc • phân tích giải pháp thành thành phần • định nghĩa giao diện thành phần • định nghĩa phần vấn ñề ñược giải thành phần • thực nhiều mức trừu tượng Thiết kế chi tiết • thiết... trường xã hội u cầu khách hàng Thiết kế hướng mơ-đun Phần mềm tập hợp gồm mơ-đun tương tác với Mơ-đun hóa đóng vai trị quan trọng để có phần mềm chất lượng với chi phí thấp Mục đích thiết kế hệ... kiện bất thường xảy ra, (hoặc số ít) mơ-đun bị ảnh hưởng 15 Thiết kế kiến trúc Kiến trúc = tập hợp thành phần/ mơ-đun quan hệ chúng thành phần/ mơ-đun • hàm / nhóm hàm / lớp quan hệ • sử dụng /

Ngày đăng: 11/05/2021, 04:44

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan