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

05 analysis design overview 97

16 223 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

Nội dung

Analysis and Design Overview Unified Modeling Language Tổng quan Phân tích Thiết kế Giảng viên: Mai Thúy Nga Nội dung môn học Giới thiệu PTTK hướng đối tượng với UML Khái niệm Hướng đối tượng UML Đặc tả u cầu với mơ hình Use Case II Tổng quan Phân tích Thiết kế Phân tích Use Case II OOAD using UML Phân tích Use Case I Ơn tập Mơ hình hóa Thiết kế Analysis and Design Overview Đặc tả u cầu với mơ hình Use Case I 5-3 5-1 Analysis and Design Overview Nội dung trình bày Tổng quan phân tích thiết kế Khái niệm kiến trúc phần mềm Mức ñộ trừu tượng hóa phân tích Analysis and Design Overview 5-4 Mục đích Phân tích Thiết kế Chuyển yêu cầu toán thành thiết kế hệ thống ñược xây dựng Xây dựng kiến trúc mức ñộ cho hệ thống Kiến trúc thể tương tác hệ thống con, thành phần có hệ thống Chọn lựa thiết kế để phù hợp với mơi trường phát triển Là thiết kế khả thi cho hệ thống con, thành phần kiến trúc Ở mức chi tiết, thiết kế phụ thuộc vào tảng, ngơn ngữ lập trình, hay sở liệu Analysis and Design Overview OOAD using UML 5-5 5-2 Analysis and Design Overview Phân tích Thiết kế hướng ñối tượng (OOAD) (1) Tập trung vào q trình phân tích U CẦU hệ thống thiết kế MƠ HÌNH cho hệ thống trước giai đoạn lập trình ðược thực nhằm ñảm bảo mục ñích yêu cầu hệ thống ñược ghi lại cách hợp lý trước hệ thống xây dựng Cung cấp mơ hình cách chi tiết thể hệ thống ñược xây dựng thê Các mơ hình q trình trừu tượng hóa phần có hệ thống Cung cấp cho người dùng, khách hàng, kỹ sư phân tích, thiết kế nhiều nhìn khác hệ thống Analysis and Design Overview 5-6 Phân tích Thiết kế hướng đối tượng (OOAD) (2) OOAD ñược chia thành giai ñoạn Phân tích hướng ñối tượng (OOA) Thiết kế hướng ñối tượng (OOD) OOA giai đoạn nhằm tạo mơ hình (mơ hình khái niệm) hệ thống dựa theo khách hàng yêu cầu hệ thống họ ðứng nhiều quan ñiểm khách hàng OOD bổ sung thêm thông tin thiết kế chi tiết cho mơ hình nói ðứng quan điểm nhóm phát triển Analysis and Design Overview OOAD using UML 5-7 5-3 Analysis and Design Overview Sự liên quan PTTK với nguyên lý khác Nguyên lý PTTK có quan hệ mật thiết đến ngun lý khác q trình phát triển phần mềm: “Mơ hình hố tốn” cung cấp phương pháp để thể hệ thống “Khảo sát yêu cầu” cung cấp ñầu vào cho PTTK “Cài đặt” thực thi thiết kế “Kiểm thử” ñảm bảo kiểm tra hệ thống theo thiết kế ñặt Analysis and Design Overview 5-8 Phân biệt Phân tích Thiết kế Phân tích Tập trung vào tìm hiểu tốn: CÁI GÌ Thiết kế theo mơ hình lý tưởng Phân tích thể HT (bề nổi) Cấu trúc chức Các yêu cầu chức Mơ hình nhỏ (trừu tượng) Thiết kế Tập trung vào thiết kế giải pháp: THẾ NÀO Quan tâm đến hành động thuộc tính Quan tâm ñến trình thực thi (bên trong) Các yêu cầu phi chức Mơ hình lớn (chi tiết) Analysis and Design Overview OOAD using UML 5-9 5-4 Analysis and Design Overview Q trình chuyển đổi mơ hình PTTK (1) Sự chuyển đổi mơ hình u cầu • Các tính • Mơ hình nghiệp vụ • Use cases • Thể bên ngồi • Quan điểm KH Phân tích Thiết kế • Kiến trúc tổng thể • Mơ hình rõ ràng • Use Case thống • Phân tích bên • Thực thể • Quan điểm LTV • Kiểm thử Lập trình • Kiến trúc chi tiết • Mã nguồn • Các thủ tục mức thành phần • Kiểm thử kiểm thử • Mơ hình chi tiết cho đơn vị • Kiểm thử tích UC hợp, hệ thống • Cơng nghệ • • Chi tiết thực thể • Chi tiết & Rõ ràng • Sự khác PT TK mức độ quan tâm mức độ nhấn mạnh • Khơng có ranh giới rõ rệt để phân chia trình PT TK Analysis and Design Overview - 10 Quá trình chuyển đổi mơ hình PTTK (2) Mơ hình Use-Case Mơ hình Thiết kế Phân tích Thiết kế Tài liệu kiến trúc Thuật ngữ Đặc tả bổ sung Mơ hình liệu Analysis and Design Overview OOAD using UML - 11 5-5 Analysis and Design Overview Mơ hình Phân tích Phân tích tập trung vào việc trừu tượng hóa vấn ñề nghiệp vụ Nghiệp vụ khảo sát từ K/H Xây dựng mơ hình cách tìm kiếm lớp, đối tượng có hệ thống Các lớp, ñối tượng khái niệm nghiệp vụ nhằm tìm hiệu hệ thống Tránh cung cấp khái niêm, thơng tin cài đặt q chi tiết (cho dù tìm thời điểm đó) Analysis and Design Overview - 12 Mơ hình Thiết kế Bao gồm lớp, đối tượng mức cao Nên đóng thành gói Chỉ rõ mơ hình hóa mối quan hệ tương tác chúng Chỉ rõ hành động thuộc tính đối tượng ðơn giản hoá việc phát triển mã nguồn Ví dụ thuật tốn, sơ đồ khối… Thể ñược thiết kế mã nguồn ñược cấu trúc phát triển Analysis and Design Overview OOAD using UML - 13 5-6 Analysis and Design Overview Nội dung trình bày Tổng quan phân tích thiết kế Khái niệm kiến trúc phần mềm Mức độ trừu tượng hóa phân tích Analysis and Design Overview - 14 Kiến trúc phần mềm Kiến trúc phần mềm tổ chức hay cấu thành phần có hệ thống Sự lựa chọn thành phần cấu trúc giao diện thành phần tương tác với Chỉ hành vi thành phần Kết hợp thành phần nói dựa cấu trúc hành vi chúng ñể tạo hệ thống lớn Thường ñược kế thừa từ mẫu kiến trúc Analysis and Design Overview OOAD using UML - 15 5-7 Analysis and Design Overview Tầm quan trọng mơ hình kiến trúc ðưa mơ hình mơ tả cách rõ ràng: Hệ thống ñược phân bố Từng thành phần hoạt động với Là mơ tả kiến trúc phần mềm dùng ñể giao tiếp thành viên phát triển dự án ðưa ñịnh mặt thiết kế sớm ñể dẫn dắt tác vụ giai ñoạn Mã nguồn Mơ hình cài đặt Thiết kế Kiến trúc Analysis and Design Overview - 16 Các khung nhìn q trình phát triển Q trình phát triển có tham gia nhiều thành viên Mỗi thành viên có quan tâm nhìn khác hệ thống OOAD xây dựng nhiều loại sơ ñồ khác Mỗi loại sơ đồ có vai trò khác nhau, phản ánh phần mềm khía cạnh (bỏ qua thành phần mà khơng quan tâm) Cung cấp nhìn cho một, nhóm thành viên cụ thể (chứ khơng phải tất cả) Analysis and Design Overview OOAD using UML - 17 5-8 Analysis and Design Overview Mơ hình “khung nhìn 4+1” Sơ đồ Logic Phân tích/Thiết kế Chức Cấu trúc Sơ đồ lập trình Người dùng Chức Tính sử dụng Lập trình viên Quản lý phần mềm Sơ đồ Use-Case Sơ đồ Tiến trình Sơ đồ triển khai Tích hợp hệ thống Tốc độ Độ ổn định Thơng lượng Analysis and Design Overview Kỹ sư hệ thống Kiến trúc hệ thống Cài đặt, bàn giao Giao tiếp - 18 Mẫu thiết kế (Design Pattern) Mẫu thiết kế giải pháp cho vấn ñề thiết kế chung Mơ tả vấn đề thiết kế chung Mơ tả giải pháp cho vấn đề Thảo luận kết kết hợp yếu tố khác áp dụng mẫu Các mẫu thiết kế cung cấp khả sử dụng lại thiết kế sẵn có cách thích hợp Các mẫu thiết kế nên mơ tả sơ đồ UML thơng thường với vài tham số để tùy biến Template Parameters Pattern Name Parameterized Collaboration Analysis and Design Overview OOAD using UML Structural Aspect Behavioral Aspect - 19 5-9 Analysis and Design Overview Mẫu kiến trúc (Architectural Pattern) Là cách tổ chức mang tính cấu trúc tảng cho hệ thống phần mềm Cung cấp tập thành phần bên ñược ñịnh nghĩa trước Chỉ rõ vai trò chúng Chỉ rõ nguyên tắc tổ chức mối quan hệ chúng Một số mẫu thiết kế chung Phân tầng (Layers) Dữ liệu – Thể - ðiều khiển (Model-View-Controller) Phân luồng (Pipes and filters) Analysis and Design Overview - 20 Hướng tiếp cận phân tầng Chức cụ thể Tầng ứng dụng Các phần mềm ứng dụng cụ thể phục vụ mục đích nghiệp vụ Tầng nghiệp vụ Cung cấp loạt hệ thống cho phép sử dụng lại nghiệp vụ cụ thể Tầng thư viện Là hệ thống sử dụng lớp thư viện ứng dụng dịch vụ khác nhằm phục vụ môi trường tính tốn khác Tầng hệ thống Là phần mềm làm tảng ứng dụng cho hệ thống khác hệ điều hành, driver cho phần cứng Chức mức hệ thống Analysis and Design Overview OOAD using UML - 21 - 10 Analysis and Design Overview Các vấn đề q trình phân tầng Mức độ trừu tượng hố Tìm cách nhóm thành phần mức trừu tượng hoá Phân chia vấn đề thành nhóm Nhóm thành phần giống vào nhóm (tầng) ðảm bảo tính động Tính kết hợp tối thiểu Che dấu thơng tin • ðảm bảo bị thay đối khơng ảnh hướng đến thành phần khác Giao diện thành phần nghiệp vụ nơi có khả thay ñổi cao Analysis and Design Overview - 22 Mơ hình hố tầng kiến trúc UML Kiến trúc hệ thống ñược phân chia thành tầng riêng biệt Mỗi tầng làm nhiệm vụ xác ñịnh hệ thống Các tầng kiến trúc thường mơ hình hố cách sử dụng gói Mỗi gói đại diện cho tầng chứa thành phần bên lớp, sơ ñồ hoạt ñộng cụ thể cho tầng ñó Tầng thể Tầng nghiệp vụ Tầng liệu Analysis and Design Overview OOAD using UML - 23 - 11 Analysis and Design Overview Các quan hệ gói: Sự phụ thuộc Các gói liên hệ với cách sử dụng mối quan hệ phụ thuộc Quan hệ phụ thuộc Client Package Supplier Package Sự phụ thuộc: Thay đổi gói Supplier ảnh hưởng đến gói Client Khơng thể sử dụng gói Client cách độc lập phụ thuộc Analysis and Design Overview - 24 Tránh phụ thuộc vòng tròn A A Loại bỏ phụ thuộc vòng B B A C B A' C Sự phụ thuộc vòng tròn dẫn tới việc khơng thể sử dụng lại gói mà khơng cần đến gói khác Analysis and Design Overview OOAD using UML - 25 - 12 Analysis and Design Overview Nội dung trình bày Tổng quan phân tích thiết kế Khái niệm kiến trúc phần mềm Mức độ trừu tượng hóa phân tích Analysis and Design Overview - 26 Trừu tượng hoá vấn đề Trừu tượng hóa vấn đề q trình phân tích u cầu cho phép cung cấp khái niệm vấn ñề cần ñược giải Khi mà ta chưa thể biết cụ thể giai đoạn Các vấn đề phải trừu tượng hố Thơng tin, khái niệm nghiệp vụ Các yêu cầu Các thuật ngữ nghiệp vụ Các mô hình nghiệp vụ Analysis and Design Overview OOAD using UML - 27 - 13 Analysis and Design Overview Trừu tượng hóa q trình phân tích Làm tơi phân tích lớp liệu mà chưa biết CSDL thể nào? Hãy tưởng tượng tầng liệu có hỗ trợ chế làm việc với thành phần liệu CSDL Chúng ta quay lại thiết kế chi tiết sau Trừu tượng hóa q trình phân tích sử dụng để giảm thiếu phức tạp hệ thống cách đưa phần thể vấn đề phức tạp bỏ qua số chi tiết bên Analysis and Design Overview - 28 Trừu tượng hoá với lớp phân tích Tìm cách trừu tượng hố thực thể (lớp phân tích) Có thể phân loại lớp phân tích thành nhóm riêng biệt Chỉ quan hệ lớp phân tích Mơ hình hố lớp phân tích quan hệ chúng sơ đồ lớp phân tích (Analysis class diagram) Nên mơ tả ngắn gọn lớp phân tích Có thể coi lớp phân tích chế phân tích cách trừu tượng hố vấn đề phức tạp lớp phân tích Analysis and Design Overview OOAD using UML - 29 - 14 Analysis and Design Overview Các mức ñộ trừu tượng hóa phân tích Cơ chế phân tích (mức khái niệm) Ví dụ: Thành phần lưu trữ liệu Cơ chế thiết kế (mức giải pháp) Ví dụ: Bàn cơng nghệ: RDBMS ODBMS Cơ chế cài đặt (mức kỹ thuật) Ví dụ: Cơng nghệ cụ thể: Oracle, SQL Server Analysis and Design Overview - 30 Mức độ chi tiết mơ hình Use-Case Mơ hình Use-Case Mơ hình thiết kế Use Case Use-Case Realization Sơ đồ trình tự Sơ đồ cơng tác Use Case Sơ đồ lớp Analysis and Design Overview OOAD using UML - 31 - 15 Analysis and Design Overview Tổng kết Tổng quan phân tích thiết kế Thể mức ñộ tập trung nhấn mạnh vấn ñề, trả lời câu hỏi CÁI GÌ NHƯ THẾ NÀO Khơng có phân chia rõ ràng phân tích thiết kế Kiến trúc phần mềm Nền tảng cho trình xây dựng hệ thống Sử dụng mẫu kiến trúc có sẵn Mức độ trừu tượng hóa phân tích Mức độ tùy thuộc vào ngữ cảnh q trình phân tích Analysis and Design Overview OOAD using UML - 32 - 16 .. .Analysis and Design Overview Nội dung trình bày Tổng quan phân tích thiết kế Khái niệm kiến trúc phần mềm Mức độ trừu tượng hóa phân tích Analysis and Design Overview 5-4... tiết, thiết kế phụ thuộc vào tảng, ngơn ngữ lập trình, hay sở liệu Analysis and Design Overview OOAD using UML 5-5 5-2 Analysis and Design Overview Phân tích Thiết kế hướng ñối tượng (OOAD) (1) Tập... thiết kế chi tiết cho mơ hình nói ðứng quan điểm nhóm phát triển Analysis and Design Overview OOAD using UML 5-7 5-3 Analysis and Design Overview Sự liên quan PTTK với nguyên lý khác Nguyên lý

Ngày đăng: 19/03/2018, 12:47

TỪ KHÓA LIÊN QUAN

w