Two events could cause it to change to the Placed state.. From Placed it may either be cancelled, or packed and made ready for shipping.. After it is packed, it may be shipped.. Then, wh
Trang 1CHƯƠNG 10:
L ượ c đô trang tha i ̀ ̣ ́
L ượ c đô trang tha i ̀ ̣ ́
(Statechart Diagram)
PTTKHT bang UML - BM HTTT 1
Trang 2Nôi dung ̣
Nôi dung ̣
◦ Vai tro cua l ̀ ̉ ượ c đô trang tha i ̀ ̣ ́
◦ Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
◦ Ca c tha nh phâ n cua ĺ ̀ ̀ ̉ ược đồ
Trang 3Vai tro cua l ̀ ̉ ượ c đô trang tha i ̀ ̣ ́
Dynamic view:
◦ L ượ c đô t ̀ ươ ng ta c (Interaction diagrams) ́
◦ Lược đô trang tha i (Statechart diagrams)̀ ̣ ́
Lược đô t̀ ương ta c du ng đê mô hi nh ́ ̀ ̉ ̀
tương ta c gi a ca c đô i t́ ữ ́ ́ ượng Co n ̀
lược đô trang tha i du ng đê mô hi nh ̀ ̣ ́ ̀ ̉ ̀ anh h̉ ưởng cua ca c t̉ ́ ương ta c na y đê n ́ ̀ ́ trang tha i bên trong cua môt đô i ṭ ́ ̉ ̣ ́ ượng
Trang 4Vai tro cua l ̀ ̉ ượ c đô trang tha i ̀ ̣ ́
L ượ c đô trang tha i đ ̀ ̣ ́ ượ c du ng đê ha nh vi ̀ ̉ ̀
đông cua 1 đô i t ̣ ̉ ́ ượ ng No chi ra ca c trang ́ ̉ ́ ̣
tha i kha c nhau cua đô i t ́ ́ ̉ ́ ượ ng, no trang ́ ở ̣
tha i gi khi đ ́ ̀ ượ c tao ra, trang tha i gi khi bi ̣ ̣ ́ ̀ ̣
huy bo, la m thê na o đê chuyên t trang tha i ̉ ̉ ̀ ́ ̀ ̉ ̉ ư ̀ ̣ ́
na y sang trang tha i kha c, va no la m gi ng ̀ ̣ ́ ́ ̀ ́ ̀ ̀ ́ ư
v i mô i trang tha i đo ơ ́ ̃ ̣ ́ ́
Không câ n phai tao l ̀ ̉ ̣ ượ c đô trang tha i cho ̀ ̣ ́
tâ t ca ca c l p trong mô hi nh Chi l p na o ́ ̉ ́ ơ ́ ̀ ̉ ơ ́ ̀
co nhiê u ha nh vi đông ph c tap, la m cho ́ ̀ ̀ ̣ ư ́ ̣ ̀
ca c tha nh viên cua đôi dê hiêu nhâ m thi nên ́ ̀ ̉ ̣ ̃ ̉ ̀ ̀
Trang 5Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
(State and transition)
Tâ t ca ca c đô i t́ ̉ ́ ́ ượng đê u co trang tha i ̀ ́ ̣ ́ Trang tha i la kê t qua cua ca c hoat đông ̣ ́ ̀ ́ ̉ ̉ ́ ̣ ̣
trước đo đ́ ược th c hiên b i đô i tự ̣ ở ́ ượng
va đ̀ ược xa c đinh b i gia tri cua ca c ́ ̣ ở ́ ̣ ̉ ́
thuôc ti nh va ca c liên kê t đê n ca c đô i ̣ ́ ̀ ́ ́ ́ ́ ́
tượng kha c ́
Môt l p co thê co môt thuôc ti nh đăc ̣ ớ ́ ̉ ́ ̣ ̣ ́ ̣ biêt xa c đinh trang tha i, hay trang tha i co ̣ ́ ̣ ̣ ́ ̣ ́ ́ thê đ̉ ược xa c đinh b i gia tri cua môt sô ́ ̣ ở ́ ̣ ̉ ̣ ́ thuôc ti nh thông tḥ ́ ường cua đô i t̉ ́ ượng
đo ́ PTTKHT bang UML - BM HTTT 5
Trang 6Vi du vê trang tha i đô i t ́ ̣ ̀ ̣ ́ ́ ượ ng
Đô i t́ ượng ho a đ n (invoice) trang ́ ơ ở ̣
tha i đa đ́ ̃ ược tra (paid) hay ch a tra ̉ ư
(unpaid)
Đô i t́ ượng xe h i (car) trang tha i ơ ở ̣ ́
đ ng yên (standing) hay chuyên đông ứ ̉ ̣
(moving)
Đô i t́ ượng Kate đa lâp gia đi nh ̃ ̣ ̀
(married) hay đôc thân (single)̣
Trang 7Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
(State and transition)
Đô i t́ ượng chuyên tiê p (transition) t ̉ ́ ừ trang tha i na y sang trang tha i kha c khi ̣ ́ ̀ ̣ ́ ́
co môt ́ ̣ s kiên (event) hay điê u kiên ự ̣ ̀ ̣
na o đo xay ra ̀ ́ ̉
Vi du vê s kiên nh môt nǵ ̣ ̀ ự ̣ ư ̣ ười na o ̀
đo tra ho a đ n, môt nǵ ̉ ́ ơ ̣ ười na o đo ̀ ́
bă t đâ u la i xe, môt ai đo lâp gia đi nh ́ ̀ ́ ̣ ́ ̣ ̀
PTTKHT bang UML - BM HTTT 7
Trang 8Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
Trang tha i va chuyên tiê p ̣ ́ ̀ ̉ ́
(State and transition)
Môt ha nh vi đông luôn co hai chiê u ̣ ̀ ̣ ́ ̀
(dimension): chiê u t̀ ương ta c ́
(interaction) va chiê u thay đôi trang thai ̀ ̀ ̉ ̣ bên trong (internal state change)
Ca c t́ ương ta c mô ta ha nh vi bên ngoa i ́ ̉ ̀ ̀ cua đô i t̉ ́ ượng va đô i t̀ ́ ượng tu ng ta c ơ ́
v i ca c đô i tớ ́ ́ ượng kha c nh thê na o ́ ư ́ ̀
Co n thay đôi trang tha i bên trong mô ta ̀ ̉ ̣ ́ ̉
ca c đô i t́ ́ ượng thay đôi trang tha i ra saỏ ̣ ́
Trang 9Ca c tha nh phâ n cua l ́ ̀ ̀ ̉ ượ c đô trang ̀ ̣
Ca c tha nh phâ n cua l ́ ̀ ̀ ̉ ượ c đô trang ̀ ̣
tha í
Điêm bă t đâ u va kê t thu c̉ ́ ̀ ̀ ́ ́
Trang tha ị́
Đường chuyên tiê p̉ ́
L u y : lư ́ ược đô trang tha i đ̀ ̣ ́ ược ve ̃
cho t ng đô i từ ́ ượng chon l p câ n ̣ ớ ̀
ve tr̃ ước khi bă t đâ ú ̀
PTTKHT bang UML - BM HTTT 9
Trang 10Điêm bă t đâ u va kê t thu c ̉ ́ ̀ ̀ ́ ́
Điêm bă t đâ u hay trang tha i bă t đâ u ̉ ́ ̀ ̣ ́ ́ ̀ (initial state)
Điêm kê t thu c̉ ́ ́
Môt ḷ ược đô trang tha i phai co 1 va ̀ ̣ ́ ̉ ́ ̀
chi 1 điêm bă t đâ u, va co thê co 0,1 ̉ ̉ ́ ̀ ̀ ́ ̉ ́ hay nhiê u trang tha i kê t thu c̀ ̣ ́ ́ ́
Trang 11Ky hiêu trang tha i (state) ́ ̣ ̣ ́
Mô i trang tha i đ̃ ̣ ́ ược biêu diê n bă ng ̉ ̃ ̀
môt hi nh ch nhât co ca c go c tro n ̣ ̀ ữ ̣ ́ ́ ́ ̀
v i tên trang tha i nă m bên trong hi nh ớ ̣ ́ ̀ ̀
ch nhâtữ ̣
Mô i trang tha i co thê ch a 3 tha nh ̃ ̣ ́ ́ ̉ ứ ̀
phâ n:̀
◦ Tên trang tha í ̣
◦ Activity (tu y chon)̀ ̣
◦ Chuyên tiê p nôi bô ̉ ́ ̣ ̣
(tu y chon) ̀ ̣
PTTKHT bang UML - BM HTTT 11
Trang 12Vi du vê state ́ ̣ ̀
Trang 13Chuyên tiê p (transition) ̉ ́
Đường chuyên tiê p chi ra ră ng 1 đô i ̉ ́ ̉ ̀ ́
tượng co thê chuyên t trang tha i na y ́ ̉ ̉ ừ ̣ ́ ̀ sang trang tha i kha c ̣ ́ ́
No co thê ch a ́ ́ ̉ ứ
◦ S kiên (event): khi s kiên xay ra thi se co ự ̣ ự ̣ ̉ ̀ ̃ ́
s chuyên tiê p ự ̉ ́
◦ Điê u kiên (̀ ̣ guard condition) nă m trong [] ̀
du ng đê kiêm soa t khi na o thi chuyên tiê p ̀ ̉ ̉ ́ ̀ ̀ ̉ ́
được phe p xay ra ́ ̉
PTTKHT bang UML - BM HTTT 13
Trang 14Chuyên tiê p (transition) ̉ ́
Cu pha p cua do ng chuyên tiê p:́ ́ ̉ ̀ ̉ ́
Event(Arguments) [Guard] /Action
Placed products available / fillOrder() Filled
Trang 15L ượ c đô trang tha i cho ̀ ̣ ́
L ượ c đô trang tha i cho ̀ ̣ ́
đô i t ́ ượ ng Order
đô i t ́ ượ ng Order
The Order is created in the initial state of Tentative Two events could cause it to
change to the Placed state From Placed it may either be cancelled, or packed and
made ready for shipping After it is packed,
it may be shipped Then, whether it was
cancelled or shipped, the Order is
archived after 90 days
PTTKHT bang UML - BM HTTT 15
Trang 16L ượ c đô trang tha i cho ̀ ̣ ́
L ượ c đô trang tha i cho ̀ ̣ ́
đô i t ́ ượ ng Order
đô i t ́ ượ ng Order
Trang 17Trang tha i lô ng nhau ̣ ́ ̀
Trang tha i lô ng nhau ̣ ́ ̀
(Nested state)
Đê giam s ph c tap cua l̉ ̉ ự ứ ̣ ̉ ược đô trang ̀ ̣ tha i, co thê lô ng 1 hay nhiê u trang tha i ́ ́ ̉ ̀ ̀ ̣ ́
va o 1 trang tha i kha c Ca c trang tha i ̀ ̣ ́ ́ ́ ̣ ́
lô ng nhau đ̀ ược goi la trang tha i con ̣ ̀ ̣ ́
(substate), trang tha i ch a ca c trang ̣ ́ ứ ́ ̣
tha i con đ́ ược goi la siêu trang tha i ̣ ̀ ̣ ́
(superstate)
PTTKHT bang UML - BM HTTT 17
Trang 18L ượ c đô trang tha i cho l p Flight ̀ ̣ ́ ơ ́
L ượ c đô trang tha i cho l p Flight ̀ ̣ ́ ơ ́
Requirement: the flight moves into the
Closed state 10 minutes before takeoff,
regardless of whether it was in the Open
or Full state before
Trang 19Lược đô trang tha i cho l p Flight̀ ̣ ́ ớ
PTTKHT bang UML - BM HTTT 19
Scheduled
Close
Set number of passengers to 0[ Current date is less than 60 days before flight ] Add/Remove Passengers
add passenger [last seat is sold]
remove passenger( passenger name ) [ 10 minutes before scheduled takeoff ]
[10 minutes before scheduled takeoff]
Trang 20Lược đô trang tha i cho l p Flight̀ ̣ ́ ớ
Scheduled
Close
Adding passengers
Open
Add/Remove Passengers
Full
[10 minutes before scheduled takeoff]
remove passenger( passenger name )
add passenger [last seat is sold]