Bài giảng Lập trình hướng đối tượng: Chương 11 - ĐH Bách Khoa Hà Nội

9 14 0
Bài giảng Lập trình hướng đối tượng: Chương 11 - ĐH Bách Khoa Hà Nội

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

Thông tin tài liệu

Bài giảng Lập trình hướng đối tượng: Chương 11 Biểu đồ tương tác với mục tiêu giúp các bạn có thể mô tả mục đích của Biểu đồ tương tác; Có khả năng phân loại Biểu đồ tương tác; Nắm được các thành phần chính trong biểu đồ trình tự và biểu đồ giao tiếp; So sánh biểu đồ tuần tự và biểu đồ giao tiếp.

12/27/17 Mục tiêu Bộ môn Công nghệ Phần mềm Viện CNTT & TT Trường Đại học Bách Khoa Hà Nội LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài 11 Biểu đồ tương tác n n n n Mơ tả mục đích Biểu đồ tương tác Có khả phân loại Biểu đồ tương tác Nắm thành phần biểu đồ trình tự biểu đồ giao tiếp So sánh biểu đồ biểu đồ giao tiếp Nội dung Biểu đồ tương tác Biểu đồ trình tự Biểu đồ giao tiếp Nội dung Biểu đồ tương tác Biểu đồ trình tự Biểu đồ giao tiếp 12/27/17 Các đối tượng cần phải cộng tác n Các đối tượng trở nên vô nghĩa chúng không cộng tác với để giải vấn đề n n n Các đối tượng tương tác thông điệp n Một thông điệp cho biết làm mà đối tượng yêu cầu đối tượng khác thực hành động Mỗi đối tượng có trách nhiệm quản lý hành vi trạng thái Khơng ai, khơng đối tượng lại tự làm việc Thơng điệp Các đối tượng tương tác với nào? n getCourseOfferings(forSemester) : Car buyer :RegistrationController Chúng tương tác với thông qua thông điệp Biểu đồ tương tác gì? Biểu đồ tương tác (Interaction diagram) n n :CourseCatalogSystem Mơ hình hóa phương diện động hệ thố ng, mô tả tương tác đối tượng Thường dùng để mô tả kịch use case n Thuật ngữ chung cho biểu đồ thể tương tác đối tượng Biểu đồ (Sequence diagram) n Biểu đồ giao tiếp (Communication diagram) n n Các biến thể chuyên dụng Biểu đồ thời gian (Timing Diagram) n Biểu đồ tương tác tổng quát (Interaction Overview Diagram) n 12/27/17 Các biểu đồ tương tác n n Biều đồ trình tự n n Biểu đồ tương tác Một cách nhìn hướng trình t ự thời gian tương tác đối tượng n n Biểu đồ n Biểu đồ giao tiếp n Một cách nhìn thơng điệp đối tượng, hướng cấu trúc trình truyền Biểu đồ thời gian Một cách nhìn ràng buộc thời gian thông điệp tương tác Thường sử dụng ứng dụng thời gian thực, ứng dụng yếu tố thời gian mang tính định Biểu đồ thời gian Biểu đồ tương tác tổng quan n Một cách nhìn tương tác mức cao cách kết hợp biểu đồ tương tác theo trình tự logic Biểu đồ giao tiếp Biểu đồ tương tác tổng quan Biểu đồ thời gian biể u diễn trạng thái c ác line (dòng) n Biểu đồ tương tác t quan Biểu đồ thời gian bi ểu diễn trạng thái c ác area (khu vực) 12/27/17 Biểu đồ trình tự (Sequence Diagram – SD) Nội dung Biểu đồ tương tác Biểu đồ trình tự Biểu đồ giao tiếp n Ví dụ: SD for “Register for Course”, “Create a Schedule” sub-flow Biểu đồ trình tự n Là loại biểu đồ tương tác, mơ tả mơ hình tương tác đối tượng, nhấn mạnh vào trình tự thời gian thông điệp trao đổi đối tượng Biểu đồ trình tự ra: n n n Các đối tượng tham gia vào tương tác Thời gian sống đối tượng Trình tự thông điệp trao đổi : Student :RegisterForCoursesForm :RegistrationController :CourseCatalogSystem : Course Catalog 1: create schedule( ) 2: get course offerings( ) 3: get course offerings(forSemester) 4: get course offerings( ) 5: display course offerings( ) 6: display blank schedule( ) Biểu đồ trình tự ref Select Offerings 12/27/17 Biểu đồ trình tự: Đối tượng Biểu đồ trình tự: Tác nhân :RegisterForCoursesForm :RegisterForCoursesForm :RegistrationController Các đối tượng nặc danh (Anonymous object) SWTSU Catalog : CourseCatalogSystem :RegistrationController : Student SWTSU Catalog : CourseCatalogSystem : Course Catalog Đối tượng có tên (named object) Các tác nhân cụ thể (Actor instance) Đường sống (Lifeline) Biểu đồ trình tự: Thơng điệp Biểu đồ trình tự: Kích hoạt :RegisterForCoursesForm :RegisterForCoursesForm :RegistrationController : Student SWTSU Catalog : CourseCatalogSystem :RegistrationController : Student SWTSU Catalog : CourseCatalogSystem : Course Catalog : Course Catalog 1: create schedule( ) 1: create schedule( ) 2: get course offerings( ) 2: get course offerings( ) 3: get course offerings(for Semester) 3: get course offerings(for Semester) 4: get course offerings( ) 4: get course offerings( ) 5: display course offerings( ) 6: display blank schedule( ) Thơng điệp gọi (Reflexive/self-call Message) 5: display course offerings( ) Thông điệp (Message) 6: display blank schedule( ) Kích hoạt (Activation) Trả (Return) 12/27/17 Biểu đồ trình tự: Khung tương tác Biểu đồ trình tự: Khung tương tác Tốn tử : Student :RegisterForCoursesForm :RegistrationController :CourseCatalogSystem : Course Catalog alt Khung lựa chọn nhiều, có lựa chọn có điều kiện thực opt Tùy chọn, thực điều kiện thỏa mãn par Song song, khung chạy song song loop Lặp lại, khung thực nhiều lần region Vùng then chốt, thời điểm có luồng chạy ref Tham chiếu đến tương tác khác biểu đồ khác, vẽ trùm lifetime liên quan, có tham số giá trị trả sd Vẽ xung quanh biểu đồ biểu đồ trình tự cần 1: create schedule( ) 2: get course offerings( ) 3: get course offerings(forSemester) 4: get course offerings( ) 5: display course offerings( ) Toán tử (Operator) 6: display blank schedule( ) ref Select Offerings Khung tương tác (Interaction Frame) Ý nghĩa Nội dung procedure dispatch foreach (lineitem) if (product.value>$10K) careful.dispatch else regular.dispatch end if end for if (needsConfirmation) messenger.confirm end procedure Biểu đồ tương tác Biểu đồ trình tự Biểu đồ giao tiếp 12/27/17 Biểu đồ giao tiếp gì? n n Biểu đồ giao tiếp nhấn mạnh vào việc tổ chức đối tượng tham gia vào tương tác Biểu đồ giao tiếp ra: n n n Các đối tượng tham gia vào tương tác Các liên kết đối tượng Các thông điệp trao đổi đối tượng Ví dụ: Biểu đồ giao tiếp 5: display course offerings( ) 6: display blank schedule( ) 1: create schedule( ) : Course Catalog : RegisterForCoursesForm : Student 2: get course offerings( ) 4: get course offerings( ) 3: get course offerings(forSemester) : RegistrationController : CourseCatalogSystem Biểu đồ giao tiếp Biểu đồ giao tiếp: Đối tượng Biểu đồ giao tiếp: Tác nhân : RegisterForCoursesForm : RegisterForCoursesForm : Course Catalog : Student Đối tượng (Object) : RegistrationController Tác nhân (Actor) SWTSU Catalog : CourseCatalogSystem : RegistrationController SWTSU Catalog : CourseCatalogSystem 12/27/17 Nội dung biểu đồ giao tiếp: Các liên kết thông điệp SD CD - Giống n Thông điệp (message) Cùng đưa thông tin tương tác đ ối tượng qua thơng điệp n Có thể chuyển đổi hai biểu đồ mà không mát thông tin n 5: display course offerings( ) 6: display blank schedule( ) 1: create schedule( ) : RegisterForCoursesForm Liên kết (Link) : Course Catalog n : Student Tương đương ngữ nghĩa 2: get course offerings( ) 4: get course offerings( ) n Mơ hình hóa phương diện động hệ thống Mơ hình hóa kịch use case 3: get course offerings(forSemester) : RegistrationController : CourseCatalogSystem Bài tập SD CD – Khác Biểu đồ – Chỉ thứ tự rõ ràng thông điệp – Thể tốt luồng công việc – Mơ hình hóa trực quan tồn luồng thực thi (theo thời gian) – Thể tốt đặc tả thời gian thực kịch phức tạp Biểu đồ giao tiếp – Chỉ mối quan hệ rõ r àng đối tượng – Thể tốt trình giao tiếp – Mơ hình hóa trực quan cho tất ảnh hưởng đối tượng – Thể rõ hiệu trình tương tác đối tượng, dễ hiểu cho buổi brainstorming n Cho: n n Một tập đối tượng, liên kết thông điệp Hãy vẽ: n n Biểu đồ Biểu đồ giao tiếp 12/27/17 The Prospective Buyer actor begins the sequence by requesting the Personal Planner Profile object (PPF) to maintain a profile The PPF requests the Personal Planner Controller object (PPC) to maintain a profile The PPC sends a message to the Buyer Record object asking it to find the planner record The PPF then displays the planner record The Prospective Buyer updates some information on the profile and asks the PPF to save the profile information The PPF takes the new information and requests that the PPC save the profile information The PPC asks the Buyer Record to update the record with the latest information that the actor has provided The PPC asks the Customer Profile object to create a new profile for the system ... Biều đồ trình tự n n Biểu đồ tương tác Một cách nhìn hướng trình t ự thời gian tương tác đối tượng n n Biểu đồ n Biểu đồ giao tiếp n Một cách nhìn thơng điệp đối tượng, hướng cấu trúc trình truyền... hình tương tác đối tượng, nhấn mạnh vào trình tự thời gian thơng điệp trao đổi đối tượng Biểu đồ trình tự ra: n n n Các đối tượng tham gia vào tương tác Thời gian sống đối tượng Trình tự thơng... làm mà đối tượng yêu cầu đối tượng khác thực hành động Mỗi đối tượng có trách nhiệm quản lý hành vi trạng thái Khơng ai, khơng đối tượng lại tự làm việc Thông điệp Các đối tượng tương tác với

Ngày đăng: 20/06/2021, 09:07

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

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

Tài liệu liên quan