Bai 11

You might also like

You are on page 1of 5

8/24/2011

Mục tiêu

Bộ môn Công nghệ Phần mềm  Mô tả mục đích của Biểu đồ tương tác
Viện CNTT & TT  Có khả năng phân loại Biểu đồ tương tác
Trường Đại học Bách Khoa Hà Nội  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
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG

Bài 11. Biểu đồ tương tác

Nội dung Nội dung

1. Biểu đồ tương tác 1. Biểu đồ tương tác


2. Biểu đồ trình tự 2. Biểu đồ trình tự
3. Biểu đồ giao tiếp 3. Biểu đồ giao tiếp

Các đối tượng cần phải cộng tác Các đối tượng tương tác bằng thông điệp

 Các đối tượng sẽ trở nên vô nghĩa nếu chúng


không cộng tác với nhau

Thông điệp

getCourseOfferings(forSemester)
: Car buyer
:RegistrationController :CourseCatalogSystem

1
8/24/2011

Biểu đồ tương tác (Interaction diagram) Biểu đồ tương tác là gì?


 Mô hình hóa phương diện động của hệ thống  Thể hiện tương tác giữa các đối tượng.
 (Sequence diagram)
 (Communication diagram)

 (Timing Diagram)
 (Interaction Overview Diagram)

Các biểu đồ tương tác Biểu đồ tương tác

 Biều đồ trình tự  Biểu đồ thời gian

 Biểu đồ tương tác tổng quan


 Biểu đồ giao tiếp Biểu đồ tuần tự
Biểu đồ thời gian

Biểu đồ tương tác tổng


Biểu đồ giao tiếp quan

Biểu đồ thời gian


biểu diễn trạng thái
như các line (dòng)

 Biểu đồ
tương tác
tổng quan

Biểu đồ thời gian


biểu diễn trạng thái như
các area (khu vực)

2
8/24/2011

Biểu đồ trình tự
Nội dung (Sequence Diagram – SD)

1. Biểu đồ tương tác  Là một loại biểu đồ tương tác.

2. Biểu đồ trình tự
3. Biểu đồ giao tiếp

Ví dụ: SD for “Register for Course”,


“Create a Schedule” sub-flow Biểu đồ trình tự: Đối tượng

:RegisterForCoursesForm :RegistrationController :CourseCatalogSystem


:RegisterForCoursesForm :RegistrationController SWTSU Catalog :
: Student : Course Catalog
CourseCatalogSystem

1: create schedule( )
2: get course offerings( )
3: get course offerings(forSemester)
4: get course offerings( )
Các đối tượng nặc danh Đối tượng có tên
(Anonymous object) (named object)
5: display course offerings( )

6: display blank schedule( )


Đường sống
(Lifeline)

ref
Select Offerings

Biểu đồ trình tự: Tác nhân Biểu đồ trình tự: Thông điệp
:RegisterForCoursesForm :RegistrationController SWTSU Catalog : :RegisterForCoursesForm :RegistrationController SWTSU Catalog :
CourseCatalogSystem CourseCatalogSystem
: Student : Course Catalog : Student : Course Catalog

1: create schedule( )

2: get course offerings( )


3: get course offerings(for Semester)
4: get course offerings( )

Các tác nhân cụ thể


(Actor instance) 5: display course offerings( )

6: display blank schedule( )


Thông điệp
(Message)
Trả về
Thông điệp gọi chính nó
(Return)
(Reflexive/self-call Message)

3
8/24/2011

Biểu đồ trình tự: Kích hoạt Biểu đồ trình tự: Khung tương tác
:RegisterForCoursesForm :RegistrationController SWTSU Catalog :
CourseCatalogSystem
: Student : Course Catalog
: Student :RegisterForCoursesForm :RegistrationController :CourseCatalogSystem : Course Catalog

1: create schedule( )
1: create schedule( )
2: get course offerings( )
2: get course offerings( )
3: get course offerings(forSemester)
3: get course offerings(for Semester)
4: get course offerings( )
4: get course offerings( )

5: display course offerings( )


5: display course offerings( )
Kích hoạt Toán tử 6: display blank schedule( ) Khung tương tác
(Activation) (Operator) (Interaction Frame)
6: display blank schedule( )

ref
Select Offerings

Nội dung
procedure dispatch
foreach (lineitem)
1. Biểu đồ tương tác
Biểu đồ trình tự
if (product.value>$10K)
careful.dispatch 2.
else
regular.dispatch
end if 3. Biểu đồ giao tiếp
end for
if (needsConfirmation)
messenger.confirm
end procedure

Biểu đồ giao tiếp là gì? Ví dụ: Biểu đồ giao tiếp


 Biểu đồ giao tiếp nhấn mạnh vào việc tổ 5: display course offerings( )
6: display blank schedule( )
chức các đối tượng tham gia vào tương tác.
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

4
8/24/2011

Biểu đồ giao tiếp: Đối tượng Biểu đồ giao tiếp: Tác nhân

: RegisterForCoursesForm : RegisterForCoursesForm

: Student : Course Catalog

Đối tượng (Object) Tác nhân


(Actor)

: RegistrationController SWTSU Catalog


: RegistrationController SWTSU Catalog
: CourseCatalogSystem : CourseCatalogSystem

Nội dung của biểu đồ giao tiếp:


Các liên kết và thông điệp SD và CD - Giống nhau
Tương đương về ngữ nghĩa
…
Thông điệp
(message) 5: display course offerings( )
6: display blank schedule( )

1: create schedule( ) Liên kết : Course Catalog


: RegisterForCoursesForm (Link)

: Student
2: get course offerings( ) 4: get course offerings( )

3: get course offerings(forSemester)


: RegistrationController : CourseCatalogSystem

SD và CD – Khác nhau
Biểu đồ tuần tự Biểu đồ giao tiếp

You might also like