Slied giáo trình phân tích thiết kế hướng đối tượng DH UML8

20 185 0
Slied giáo trình phân tích thiết kế hướng đối tượng  DH UML8

Đ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

VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM VIỆN CÔNG NGHỆ THÔNG TIN PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG PGS.TS Đặng Văn Đức Email: dvduc@ioit.ac.vn Nội dung Tiến trình phát triển phần mềm theo hướng đối tượng Giới thiệu Ngôn ngữ mô hình hóa thống UML Mô hình hóa nghiệp vụ Mô hình hóa trường hợp sử dụng Mô hình hóa tương tác đối tượng Biểu đồ lớp gói Biểu đồ chuyển trạng thái biểu đồ hoạt động  Biểu đồ kiến trúc vật lý phát sinh mã trình Mô hình hóa liệu 10 Bài học thực nghiệm Bài - 2/20 Bài trúc vật Biểu đồ kiến lý phát sinh mã trình Kiến trúc phần mềm?   Kiến trúc hệ thống kế hoạch chi tiết phận hình thành hệ thống UML định nghĩa:    Theo Buschman:   Kiến trúc cấu trúc tổ chức hệ thống Kiến trúc bao gồm phận tương tác thông qua giao diện Kiến trúc phần mềm mô tả phân hệ, thành phần hệ thống phần mềm quan hệ chúng Hai loại kiến trúc hệ thống  Kiến trúc logíc    Chỉ lớp đối tượng quan hệ chúng để hình thành chức hệ thống Nó thể biểu đồ UC, biểu đồ lớp, trạng thái, hoạt động Kiến trúc vật lý   Là mô tả từ khía cạnh phần cứng mođun phần mềm Nó mô tả biểu đồ cài đặt: biểu đồ thành phần biểu đồ triển khai Bài - 4/20 Các thành phần  Thành phần?  Là mô đun vật lý mã trình: thư viện mã nguồn, mã khả thực  Các loại thành phần SubprogSpec SubprogBody Generic Component Đặc tả thành phần Stereotype MainSubprog Chương trình Chứa đầu vào chương trình Đặc tả thân chương trình Tập hợp hàm Không chứa định nghĩa lớp Bài - 5/20 Các thành phần  Các loại thành phần PackageSpec TaskSpec PackageBody TaskBody Đặc tả thân nhiệm vụ Là thành phần Run-time Biểu diễn gói có thread độc lập Đặc tả thân gói Gói cài đặt lớp Đặc tả gói tệp header Database Biểu diễn CSDL Chứa hay nhiều lược đồ Bài - 6/20 Biểu đồ thành phần  Biểu đồ thành phần biểu đồ hiển thị thành phần hệ thống phụ thuộc chúng    Credit Reservation Flight Thành phần A phụ thuộc vào thành phần B vài lớp A phụ thuộc vào vài lớp B Biểu đồ cho biết  Thư viện sử dụng, tệp khả thực (.exe) tạo dịch chương trình  Các quan hệ thư viện mã trình FlightServer Có khả tổ chức thành phần vào gói Bài - 7/20 Thí dụ Biểu đồ thành phần MainProgram CartMgr CartInterface ProductMgr CartCollection ProductCollection ProductItem CartItem Bài - 8/20 Bổ sung chi tiết cho thành phần  Stereotype   Lựa chọn biểu tượng để biểu diễn thành phần Có thể là:   Language    Gán khai báo vào mã trình thành phần Class    Trong Rose gán ngôn ngữ cho thành phần Cho khả phat sinh ngôn ngữ khác cho thành phần Declaration   , ActiveX, Applet, Subroutine Spec, dll tự định nghĩa Gán lớp vào thành phần trước phát sinh mã trình Có thể ánh xạ hay nhiều lớp vào thành phần Dependency   Thành phần có loại quan hệ: quan hệ phụ thuộc Tránh hình thành quan hệ vòng Bài - 9/20 Biểu đồ triển khai  Biểu đồ triển khai mô tả kiến trúc phần cứng (các nút) có phần mềm chạy chúng, bao gồm xử lý, tiến trình, thiết bị kết nối chúng  Mô tả tôpô hệ thống  Chỉ toàn nút mạng, kết nối chúng phần mềm chạy chúng  Nút đối tượng vật lý có tài nguyên tính toán  Máy tính, máy in, thiết bị đọc thẻ từ truyền tin  Giữa nút kết nối giao tiếp, kiểu kết nối thể stereotype Bài - 10 Các phần tử biểu đồ triển khai  Bộ xử lý   Là máy xử lý: máy chủ, máy trạm Bổ sung thuộc tính:      Là phần cứng có mục đích: máy in, scanner Bổ sung thuộc tính:   Stereotype Mô tả vật lý thiết bị Device Kết nối    Stereotype Mô tả vật lý xử lý: tốc độ, dung lượng nhớ Lập lịch xử lý: Preemptive, Non-preemptive, Cyclic, Executive, Manual Thiết bị   Processor Là liên kết vật lý thiết bị xử lý Bổ sung stereotype đặc tính vật lý cho kết nối: T1 Bổ sung tiến trình cho xử lý Bài - 11/20 Thí dụ biểu đồ triển khai Database Server Application Server Oracle Server Printer Main Program Web Server Internet Information Server Client Workstation #2 Client Workstation #1 Web Browser Web Browser Bài - 12 Phát sinh mã trình  Sáu bước để phát sinh mã trình  Kiếm tra mô hình  Tạo lập thành phần  Ánh xạ lớp vào thành phần  Gán thuộc tính phát sinh mã trình  Chọn lớp, thành phần hay gói để phát sinh mã  Phát sinh mã trình Bài - 13 Phát sinh mã trình  Bước 1: Kiểm tra mô hình  Rose có chức kiểm tra mô hình độc lập ngôn ngữ để đảm bảo tính quán mô hình  Khi kiểm tra phát lỗi sau     Ánh xạ không đầy đủ: Các đối tượng hay thông điệp biểu đồ trình tự chưa ánh xạ vào thao tác hay lớp biểu đồ lớp Vi phạm xâm nhập: Thí dụ, hai lớp hai gói có quan hệ vẽ thiếu quan hệ hai gói Kiểm tra phụ thuộc ngôn ngữ: Sẽ phát hiện, thí dụ, nhiều lớp tên khai báo public mođun chương trình Bước 2: Tạo lập thành phần  Tạo lập thành phần để chứa lớp  Trước phát sinh mã trình phải ánh xạ lớp vào thành phần tương ứng  Bổ sung quan hệ thành phần Biểu đồ thành phần Bài - 14 Phát sinh mã trình  Bước 3: Ánh xạ lớp vào thành phần  Mỗi thành phần mã nguồn biểu diễn tệp mã nguồn cho vài lớp  Thí dụ C++: Mỗi lớp ánh xạ đến hai thành phần – Các tệp Header Body Bước yêu cầu ánh xạ lớp vào thành phần tương ứng Bước 4: Đặt đặc tính cho phát sinh mã trình  Nhiều đặc tính gán cho lớp, thuộc tính, thành phần mô hình để điều khiển mã phát sinh      Đặt tập đặc tính tạm thời   Thí dụ C++: Đặc tính GenerateGetOperation điều khiển việc có phát sinh hàm Get() hay không Thí dụ khác: GenerateDefaultConstructor Thay thay đổi trực tiếp tập đặc tính ta tạo tập đặc tính tạm thời để sử dụng, không ảnh hưởng đến tập đặc tính mặc định Hủy bỏ tập đặc tính tạm thời Bài - 15 Phát sinh mã trình  Bước 5: Chọn lớp, thành phần hay gói  Có thể chọn lớp, thành phần hay gói để phát sinh mã trình vào thời điểm khác  Phát sinh mã từ biểu đồ hay Browser  Có thể phát sinh mã trình cho vài lớp, thành phần hay gói đồng thời  Bước 6: Phát sinh mã trình  Lựa chọn ngôn ngữ theo yêu cầu để phát sinh mã từ mô hình Bài - 16 Phát sinh mã trình  Cái phát sinh từ mô hình?  Thực tế    Không có công cụ mô hình hóa phát sinh mã trình đầy đủ Rose phát sinh khung chương trình Các phần tử phát sinh       Lớp: Mọi lớp mô hình sinh mã Thuộc tính: Mã trình chứa thuộc tính lớp bao gồm phạm vi, kiểu liệu giá trị mặc định, hàm Get(), Set() Signature: Các thao tác khai báo mã trình với danh sách tham số, kiểu liệu tham số kiểu giá trị cho lại thao tác Quan hệ: Một số quan hệ mô hình chuyển sang thuộc tính Thành phần: Mỗi thành phần thực tệp tương ứng Tài liệu: Tài liệu mô hình chèn vào nơi thích ứng mã trình Bài - 17 Phát sinh mã trình  Nhiệm vụ người phát triển sau Rose sinh mã trình    Thu thập tệp mã trình, viết mã trình cho thao tác lớp Thiết kế giao diện đồ họa Thí dụ đoạn mã trình Rose phát sinh #include "stdafx.h" #include "Order.h" //##ModelId=3A77E3CD0280 Boolean Order::Create() { // TODO: Add your specialized code here // NOTE: Requires a correct return value to compile } //##ModelId=3A77E3E60316 Boolean Order::SetInfo(Integer OrderNum, String Customer, Date OrderDate, Date FillDate) { // TODO: Add your specialized code here // NOTE: Requires a correct return value to compile } //##ModelId=3A77E40E0230 String Order::GetInfo() { // TODO: Add your specialized code here // NOTE: Requires a correct return value to compile } Bài - 18 Phát sinh mã trình class Order { public: //##ModelId=3A7F695F019A OrderItem* theOrderItem; //##ModelId=3A77E3CD0280 Boolean Create(); //##ModelId=3A77E3E60316 Boolean SetInfo(Integer OrderNum, String Customer, Date OrderDate, Date FillDate); //##ModelId=3A77E40E0230 String GetInfo(); private: //##ModelId=3A7E13F9038E Integer OrderNumber; //##ModelId=3A7E14260122 String CustomerName; //##ModelId=3A7E14470208 Date OrderDate; //##ModelId=3A7E145303D4 Date OrderFillDate; }; Bài - 19 Tóm tắt  Bài xem xét vấn đề sau  Kiến trúc vật lý hệ thống  Xây dựng biểu đồ thành phần    Xây dựng biểu đồ triển khai   Các thành phần phần mềm quan hệ chúng Các phần tử đồ họa vẽ biểu đồ thành phần Các phần tử đồ họa vẽ biểu đồ triển khai Các bước chuyển đổi mô hình thành phần mềm Bài - 20 ... mã trình Bài - 17 Phát sinh mã trình  Nhiệm vụ người phát triển sau Rose sinh mã trình    Thu thập tệp mã trình, viết mã trình cho thao tác lớp Thiết kế giao diện đồ họa Thí dụ đoạn mã trình. .. lý, tiến trình, thiết bị kết nối chúng  Mô tả tôpô hệ thống  Chỉ toàn nút mạng, kết nối chúng phần mềm chạy chúng  Nút đối tượng vật lý có tài nguyên tính toán  Máy tính, máy in, thiết bị...Nội dung Tiến trình phát triển phần mềm theo hướng đối tượng Giới thiệu Ngôn ngữ mô hình hóa thống UML Mô hình hóa nghiệp vụ Mô hình hóa trường hợp sử dụng Mô hình hóa tương tác đối tượng Biểu đồ

Ngày đăng: 22/08/2017, 21:07

Từ khóa liên quan

Mục lục

  • PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG

  • Nội dung

  • Slide 3

  • Kiến trúc phần mềm?

  • Các thành phần

  • Slide 6

  • Biểu đồ thành phần

  • Thí dụ Biểu đồ thành phần

  • Bổ sung chi tiết cho thành phần

  • Biểu đồ triển khai

  • Các phần tử của biểu đồ triển khai

  • Thí dụ biểu đồ triển khai

  • Phát sinh mã trình

  • Slide 14

  • Slide 15

  • Slide 16

  • Slide 17

  • Slide 18

  • Slide 19

  • Tóm tắt

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

Tài liệu liên quan