Chương 7
Chương
7
Mô hì h độ
Mô
hì
n
h
độ
ng
UML/NN 1
Nội dung
Biểu đồ trạng thái (state diagram)
Biểu đồ tuần tự (sequency dia
g
ram)
Biểu đồ c
ộ
n
g
tác
(
collaboration dia
g
ram
)
ộ g( g)
Biểu đồ hoạt động (activity diagram)
Biểu đồ tuầntự và biểu đồ cộng tác còn được
Biểu
đồ
tuần
tự
và
biểu
đồ
cộng
tác
còn
được
gọi là biểu đồ tương tác (interaction)
UML/NN 2
9 Biểu đồ
1. Biểu đồ Use case (Use Case Diagram)
Biể đồ lớ (Cl Di )
2.
Biể
u
đồ
lớ
p
(Cl
ass
Di
a
g
ram
)
3. Biểu đồ đối tượng (Object Diagram)
ể
4. Bi
ể
u đồ trạn
g
thái (State Dia
g
ram)
5. Biểu đồ trình t
ự
(
Se
q
uence Dia
g
ram
)
ự (q g )
6. Biểu đồ cộng tác (Collaboration Diagram)
7.
Biểu đồ hoạt động (Activity Diagram)
7.
Biểu
đồ
hoạt
động
(Activity
Diagram)
8. Biểu đồ thành phần (Component Diagram)
9
Biểu đồ triển khai (Deployment Diagram)
UML/NN 3
9
.
Biểu
đồ
triển
khai
(Deployment
Diagram)
Mô hình động (dynamic model)
Hệ thống sẽ đáp lại những sự kiện từ bên ngoài ra
sao
sao
Cần phải xác định chuỗi các thủ tục là hệ quả của
mộtsự kiệntừ bên ngoài
một
sự
kiện
từ
bên
ngoài
Trọng tâm của mô hình này là chỉ ra ứng xử theo
thờigiancủacácđốitượng trong hệ thống
thời
gian
của
các
đối
tượng
trong
hệ
thống
.
Chỉ ra hoạt động của một hệ thống theo một
hướng nhìn
hướng
nhìn
UML/NN 4
Biểu đồ trạng thái: đèn giao thông
UML/NN 5
Biểu đồ trạng thái (state)
Trạng thái của đối tượng ở một thời điểm là tình
trạng của đốitượng ở ngay lúc đó
trạng
của
đối
tượng
ở
ngay
lúc
đó
Trạng thái của đối tượng được xác định bởi tất cả
thuộctínhcủa đốitượng và những liên kếtmànó
thuộc
tính
của
đối
tượng
và
những
liên
kết
mà
nó
giữ
UML/NN 6
Các thành phần
StateState
“top” state“top” state
top
TriggerTrigger
Initial Initial
pseudostatepseudostate
ReadyReady
TransitionTransition
/ctr := 0stop
DoneDone
stop
ActionAction
Final Final
statestate
DoneDone
UML/NN 7
Biểu đồ trạng thái
Biểu đồ trạng thái đưa ra hình ảnh động của
hệ thố
hệ
thố
n
g
Biểu đồ trạng thái biểu diễn cho hành vi của
hữ đốitượ iê biệt
n
hữ
n
g
đối
tượ
n
g
r
iê
n
g
biệt
Nó chỉ ra trình tự những trạng thái mà đối tượng
t ải ốthkỳ ố hằ đá ứ hữ
t
r
ải
qua su
ốt
c
h
u
kỳ
s
ố
n
g
n
hằ
m
đá
p
ứ
n
g
n
hữ
n
g
sự kiện
Nó cũng mô tả những sự kiện làm thay đổitrạng
Nó
cũng
mô
tả
những
sự
kiện
làm
thay
đổi
trạng
thái của đối tượng
UML/NN 8
Biểu đồ trạng thái
Biểu đồ trạng thái đặc biệt hữu ích để mô tả:
ể
Các thực th
ể
n
g
hiệp vụ phức tạp, như khách
hàng và tài khoản
àh ủ hệ hố
H
à
n
h
vi c
ủ
a
hệ
t
hố
n
g
con
Tương tác trong các lớp biên (boundary) trong
átì h á đị hi diệ
qu
á
t
r
ì
n
h
x
á
c
đị
n
h
gi
ao
diệ
n
Việc hiện thực các use case
á ố ứ ệ á ể
C
á
c đ
ố
i tượn
g
ph
ứ
c tạp, hi
ệ
n thực c
á
c thực th
ể
nghiệp vụ hoặc các thực thể thiết kế phức tạp
UML/NN 9
Biểu đồ trạng thái
Tất cả trạng thái
T
ất cả dịch chuyển
Quá trình thay đổi trạng thái gọi là dịch chuyển trạng
hái ( i i )
t
hái
(
trans
i
t
i
on
)
Dịch chuyển là kết quả của một hoạt động mà gây ra
mộtbiến đổitrạng thái quan trọng
một
biến
đổi
trạng
thái
quan
trọng
Tất cả sự kiện gây ra dịch chuyển
UML/NN 10
Trạng thái con
Trạng thái của một đối tượng có thể có các trạng
thái con Trạng thái con là mộtphầncủatrạng thái
thái
con
.
Trạng
thái
con
là
một
phần
của
trạng
thái
kết hợp
T
r
ạ
n
g
thái con có thể th
ự
c hi
ệ
n đồn
g
thời ha
y
tuần
ạ g ự ệ g y
t
ự
UML/NN 11
Cách tạo biểu đồ trạng thái
1. Xác định thực thể có hành vi phức tạp
2
Định nghĩatrạng thái ban đầuvàtrạng thái kết thúc
2
.
Định
nghĩa
trạng
thái
ban
đầu
và
trạng
thái
kết
thúc
3. Xác định những biến cố ảnh hưởng tới thực thể
4. Làm việc từ trạng thái bắt đầu dò ra trạng thái trung
gian
gian
5. Xác định các hành động vào và ra của các trạng thái
6. Mở rộng các trạng thái bằng các trạng thái con khi
cầnthiết
cần
thiết
7. Nếu thực thể là một lớp, kiểm tra các hành động của
nó trong trạng thái đó có được sự hỗ trợ bởi các tác
vụ và các kếthợpcủamộtlớp không Nếu không
vụ
và
các
kết
hợp
của
một
lớp
không
.
Nếu
không
phải mở rộng lớp này
UML/NN 12
Biểu đồ trạng thái
UML/NN 13
Mô hình dịch chuyển trạng thái
Mô hình trạng thái của lớp Message
Composed
compose command
focus
hightlight
entry/ assign ID
exit/ fill date
on char/ handle character
Read
entry/ convert to rich text
save command
re-fwd cmd / quote / append subject
unhightlight
read command / recover( id )
save
command
send command[ recipents != null ] / parse
Stored
entry/ save into folder
logout
Sending
do/ send( repc )
sending done
UML/NN 14
ATM: kiểm tra PIN
UML/NN 15
Đăng ký khóa học: Trạng thái con
UML/NN 16
Nội dung
Biểu đồ trạng thái (state diagram)
Biểu đồ trình t
ự
(sequency dia
g
ram)
Biểu đồ c
ộ
n
g
tác
(
collaboration dia
g
ram
)
ộ g( g)
Biểu đồ hoạt động (activity diagram)
UML/NN 17
Biểu đồ trình tự (sequency)
Trình tự xét từ trên xuống dưới
: Customer
: Interface : Vendor
Input Coin
Verif
y
Coin
y
Reject Faulty Coin with
Message
Message
Send Genuine Coin
UML/NN 18
Vend Tea
The BIG Picture –
Round Tri
p
En
g
ineerin
g
pg g
Business Modeling
Use Case Diagram &
Use Case S
p
ecification
Code Generation
p
Other Relevant Diagrams
Analysis Class Diagram
Design Class Diagram
Design
Class
Diagram
Analysis Sequence DiagramDesign Sequence Diagram
Biểu đồ trình tự
Minh họa tương tác giữa các đối tượng, thông điệp
gởivànhậngiữanhững đốitượng theo trình tự
gởi
và
nhận
giữa
những
đối
tượng
theo
trình
tự
thời gian
Trên chiều ngang có những hộpbiểudiễnchođối
Trên
chiều
ngang
có
những
hộp
biểu
diễn
cho
đối
tượng hay tên lớp, tên được gạch dưới
Chiều đứng chỉ thờigian
Chiều
đứng
chỉ
thời
gian
Từ các hình chữ nhật biểu diễn đối tượng có các
đường gạch rời (dashed line) thẳng đứng biểuthị
đường
gạch
rời
(dashed
line)
thẳng
đứng
biểu
thị
thời gian sống của đối tượng. Trong khoảng thời
gian này, đối tượng được thể hiện, sẵn sàng để gửi
UML/NN 20
và nhận thôn
g
điệp
Đệ qui
Lặp lại cùng hoạt động cho đến khi đạt được một
điềukiện
điều
kiện
Mũi tên sự kiện vào và ra cùng một đối tượng
: Customer
: Interface : Vendor
Input Coin
Verify Coin
Reject Faulty Coin with
Message
Send Genuine Coin
UML/NN 21
Vend Tea
Message
Tương tác giữa 2 đối tượng thông qua việc truyền
message giữa2đốitượng
message
giữa
2
đối
tượng
Truyền message có nghĩa là gọi phương thức của
đối tư
ợ
n
g
ợ g
Khi thực hiện một phương thức một giá trị trả về
được truyền từ đối tượng được gọi tới đối tượng
i
g
ọ
i
Message được biểu diễn bằng một mũi tên có
hướng từ đốitượng gọitới đốitượng đượcgọi
hướng
từ
đối
tượng
gọi
tới
đối
tượng
được
gọi
UML/NN 22
Các thành phần
Client Object
Supplier Object
:Client
:Supplier
1: PerformResponsibility
Reflexive Message
Object Lifeline
Message
1.1: PerformAnother
Responsibility
Hierarchical Message
Nbi
UML/NN 23
Focus of Control
N
um
b
er
i
n
g
Supermarket
UML/NN 24
Các bước để vẽ một biểu đồ tuần tự
Quyết định ngữ cảnh của tương tác
Xá đị háthàhhầ ó ấ tú (lớ h ặ đối
Xá
c
đị
n
h
c
á
c
thà
n
h
p
hầ
n c
ó
c
ấ
u
t
r
ú
c
(lớ
p
h
o
ặ
c
đối
tượng) cần thiết để thực hiện chức năng
Xétákị hbả (i)ththế
X
em x
ét
c
á
c
kị
c
h
bả
n
(
scenar
i
o
)
th
ay
thế
Vẽ các biểu đồ thể hiện:
Đặtáđốitượ từ tái hải
Đặt
c
á
c
đối
tượ
ng
từ
t
r
ái
qua p
hải
Bắt đầu từ thông điệp bắt đầu, sắp xếp theo chiều từ
trên xuống dưới, cho biếtcácthuộcthể nhằm cung cấp
trên
xuống
dưới,
cho
biết
các
thuộc
thể
nhằm
cung
cấp
ngữ nghĩa
Thêm các ràng buộc, giải thích, các điều khiển
UML/NN 25
Nếu cần có thể vẽ một biểu đồ tổn
g
quát