Tải bản đầy đủ (.pdf) (5 trang)

Lập trình thiết kế hướng ₫ối tượng bai11

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (394.45 KB, 5 trang )

8/24/2011

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







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

Nội dung
1.
2.
3.

Biểu đồ tương tác
Biểu đồ trình tự
Biểu đồ giao tiếp


Các đối tượng cần phải cộng tác


Nội dung
1.
2.
3.

Biểu đồ tương tác
Biểu đồ trình tự
Biểu đồ giao tiếp

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 là gì?

Biểu đồ tương tác (Interaction diagram)


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.






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


Biều đồ trình tự



Biểu đồ giao tiếp

(Sequence diagram)
(Communication diagram)
(Timing Diagram)
(Interaction Overview Diagram)


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


Biểu đồ thời gian



Biểu đồ tương tác tổng quan
Biểu đồ thời gian

Biểu đồ tuần tự

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

Biểu đồ giao tiếp

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ự
(Sequence Diagram – SD)

Nội dung
1.
2.
3.

Biểu đồ tương tác
Biểu đồ trình tự
Biểu đồ giao tiếp



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

Ví dụ: SD for “Register for Course”,
“Create a Schedule” sub-flow

: Student

:RegisterForCoursesForm

:RegistrationController


:CourseCatalogSystem

Biểu đồ trình tự: Đối tượng
:RegisterForCoursesForm

: Course Catalog

:RegistrationController

SWTSU 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
(Anonymous object)

Đối tượng có tên
(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
:RegisterForCoursesForm
: Student

:RegistrationController

SWTSU Catalog :
CourseCatalogSystem

Biểu đồ trình tự: Thơng điệp
:RegisterForCoursesForm

: Course Catalog

:RegistrationController

: Student

SWTSU Catalog :
CourseCatalogSystem

: 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 gọi chính nó
(Reflexive/self-call Message)

Thơng điệp
(Message)

Trả về
(Return)

3


8/24/2011

Biểu đồ trình tự: Kích hoạt
:RegisterForCoursesForm

:RegistrationController

: Student

SWTSU Catalog :
CourseCatalogSystem


Biểu đồ trình tự: Khung tương tác

: 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( )
6: display blank schedule( )


Kích hoạt
(Activation)

6: display blank schedule( )

Tốn tử
(Operator)

ref

Khung tương tác
(Interaction Frame)

Select Offerings

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 đồ giao tiếp là gì?



1.
2.
3.

Biểu đồ tương tác
Biểu đồ trình tự
Biểu đồ giao tiếp

Ví dụ: Biểu đồ giao tiếp

Biểu đồ giao tiếp nhấn mạnh vào việc tổ
chức các đối tượng tham gia vào tương tác.

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

4


8/24/2011

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)

Tác nhân
(Actor)
SWTSU Catalog
: CourseCatalogSystem


: RegistrationController

: RegistrationController

Nội dung của biểu đồ giao tiếp:
Các liên kết và thông điệp

SWTSU Catalog
: CourseCatalogSystem

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( )
: RegisterForCoursesForm

: Student

2: get course offerings( )

Liên kết
(Link)


: Course Catalog

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

5



×