Professional Documents
Culture Documents
v Hiểu được các khái niệm cơ sở cho khung nhìn tương tác.
v Hiểu được vai trò của Biểu đồ tương tác trong UML.
v Nắm được các thành phần chính trong Biểu đồ tuần tự và
Biểu đồ giao tiếp.
v Có khả năng đọc hiểu Biểu đồ tuần tự và Biểu đồ giao tiếp.
v Phân biệt được Biểu đồ tuần tự và Biểu đồ giao tiếp.
2
Các đối tượng tương tác với nhau như thế nào?
3
Các đối tượng cần phải cộng tác với nhau
v 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
để giải quyết vấn đề.
• Mỗi đối tượng có trách nhiệm quản lý hành vi và trạng thái của nó.
• Không một ai, không một đối tượng nào làm được mọi việc.
v Cộng tác (collaboration) là hai hoặc nhiều đối tượng tham gia vào một
quan hệ client/server để cung cấp một dịch vụ (Craig Larman, 2004).
v Một cộng tác là một mô tả về một tập hợp các đối tượng tương tác với
nhau để thực hiện một số hành vi trong một khung cảnh tương tác
(James Rumbaugh et al. 2004).
• Một cộng tác chứa các vai trò (role) được biểu diễn bởi các đối tượng tại run time,
một vai trò đại diện cho một mô tả về một đối tượng có thể tham gia vào quá trình
thực thi cộng tác.
• Một đường kết nối (connector) đại diện cho một mô tả về một liên kết (association)
giữa hai vai trò của cộng tác. 4
Ví dụ: A collaboration for a ticket sale
5
Biểu đồ tương tác (interaction diagram)
6
Xây dựng biểu đồ tương tác như thế nào?
7
Xác định các tác nhân tham gia vào tương tác
v Tác nhân trong biểu đồ tương tác -> kích hoạt từ bên ngoài
hệ thống để khởi động luồng các sự kiện.
v Tìm kiếm các tác nhân trong luồng các sự kiện.
v Có thể có nhiều tác nhân trong một biểu đồ tương tác.
v Nếu một tác nhân gửi/nhận thông điệp tới/từ hệ thống theo
một kịch bản xác định thì tác nhân này phải xuất hiện trong
biểu đồ tương tác của kịch bản đó.
8
Biểu đồ tuần tự (Sequence Diagram - SD)
v Một loại biểu đồ tương tác, mô tả mô hình tương tác giữa các object.
v Nhấn mạnh vào trình tự thời gian của các thông điệp trao đổi
giữa các đối tượng.
v Biểu đồ tuần tự chỉ ra:
• Các đối tượng tham gia vào tương tác.
• Thời gian sống của các đối tượng.
• Trình tự các thông điệp được trao đổi.
v Đọc biểu đồ tuần tự từ đỉnh xuống đáy.
9
Ví dụ: SD for “Register for Course”,
“Create a Schedule” sub-flow
10
Đối tượng trong biểu đồ tuần tự
v Đối tượng (object): Biểu diễn bởi một hình chữ nhật.
11
Tác nhân trong biểu đồ tuần tự
12
Thông điệp trong biểu đồ tuần tự
v Thông điệp (message): Biểu diễn bởi một đường mũi tên
hướng từ đối tượng gửi sang đối tượng nhận.
13
Các loại thông điệp
v Thông điệp đồng bộ (synchronous message): Sự giao tiếp hai chiều, đối
tượng gửi thông điệp sẽ chờ đối tượng nhận thông điệp phản hồi và sẽ
không gửi thông điệp khác cho đến khi nhận được phản hồi.
• Biểu diễn bởi một đường mũi tên được tô đặc.
v Thông điệp không đồng bộ (asynchronous message): Sự giao tiếp một
chiều, tiếp tục hành động tiếp theo (gửi thông điệp khác) mà không chờ đối
tượng nhận thông điệp phản hồi.
• Biểu diễn bởi một đường mũi tên không được tô đặc.
v Thông điệp trả về (return message): Thông điệp trả lời lại khi nhận được
một request hoặc sau khi kiểm tra tính đúng đắn của một điều kiện nào đó.
• Biểu diễn bởi một đường mũi tên nét đứt đầu mũi tên không được tô đặc.
v Thông điệp gọi chính nó (self-call message): Đối tượng gửi thông điệp
cho chính nó để thực hiện các hàm nội tại.
v Thông điệp tạo mới (create message): <<create>>
v Kích hoạt (activation): Chỉ ra khoảng thời gian mà một thao tác
được thực hiện.
15
Khung tương tác trong biểu đồ tuần tự
16
Các loại toán tử trong khung tương tác
17
Ví dụ: Các khung tương tác
18
Biểu đồ giao tiếp (Communication Diagram - CD)
19
Ví dụ: CD for “Register for Course”,
“Create a Schedule” sub-flow
20
Đối tượng trong biểu đồ giao tiếp
21
Tác nhân trong biểu đồ giao tiếp
22
Các liên kết và các thông điệp
trong biểu đồ giao tiếp
23
Sự giống nhau giữa SD và CD
24
Sự khác nhau giữa SD và CD
25
Biểu đồ trình tự hệ thống
System Sequence Diagram - SSD
v Biểu đồ trình tự hệ thống là một chế tác được tạo một cách
nhanh chóng và dễ dàng để biểu diễn các sự kiện đầu vào và đầu
ra liên quan đến hệ thống đang phát triển (Craig Larman, 2004).
v Biểu đồ trình tự hệ thống chỉ ra:
• Luồng các sự kiện cụ thể trong một ca sử dụng.
• Các tác nhân bên ngoài tương tác trực tiếp với hệ thống.
• Hệ thống (như một hộp đen) và các sự kiện hệ thống mà các tác
nhân sinh ra.
v Biểu đồ trình tự hệ thống được sử dụng để đặc tả các kịch bản
của ca sử dụng.
• Thứ tự của các sự kiện -> thứ tự của chúng trong kịch bản.
26
Ví dụ: SSD for a Process Sale scenario
27
Bài tập