intTypePromotion=1
ADSENSE

Phân tích thiết kế hướng đối tượng: Bài 7. Biểu đồ chuyển trạng thái và biểu đồ hoạt động - ThS. Lê Văn Hùng

Chia sẻ: Thien Phuc | Ngày: | Loại File: PDF | Số trang:21

175
lượt xem
27
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mô tả chu kỳ tồn tại của đối tượng từ khi nó sinh ra đến khi nó bị phá hủy. Sử dụng để mô hình hóa khía cạnh động của lớp. Biểu đồ bao gồm các thông tin sau: Các trạng thái của đối tượng; Hành vi của đối tượng; Sự kiện tác động làm thay đổi trạng thái. Thông thường: Xây dựng biểu đồ chuyển trạng thái cho một vài đối tượng...

Chủ đề:
Lưu

Nội dung Text: Phân tích thiết kế hướng đối tượng: Bài 7. Biểu đồ chuyển trạng thái và biểu đồ hoạt động - ThS. Lê Văn Hùng

  1. PHÂN TÍCH THI T K PHÂN HƯ NG ð I TƯ NG HƯ N G TƯ NG
  2. N i dung 1. Ti n trình phát tri n ph n m m theo hư ng đ i tư ng 2. Gi i thi u Ngôn ng mô hình hóa th ng nh t UML 3. Mô hình hóa nghi p v 4. Mô hình hóa trư ng h p s d ng 5. Mô hình hóa tương tác đ i tư ng 6. Bi u đ l p và gói Bi u đ chuy n tr ng thái và bi u đ ho t đ ng 8. Bi u đ ki n trúc v t lý và phát sinh mã trình 9. Mô hình hóa d li u 10. Bài h c th c nghi m ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 2/21
  3. Bài 7 Bi u ñ chuy n tr ng thái Bi chuy tr ng và bi u ñ ho t ñ ng ho ng
  4. Bi u ñ chuy n tr ng thái Mô t chu kỳ t n t i c a ñ i tư ng t khi nó sinh ra ñ n n khi nó b phá h y S d ng ñ mô hình hóa khía c nh ñ ng c a l p n Bi u ñ bao g m các thông tin sau n Các tr ng thái c a ñ i tư ng n Hành vi c a ñ i tư ng n S ki n tác ñ ng làm thay ñ i tr ng thái n Thông thư ng n Xây d ng bi u ñ chuy n tr ng thái cho m t vài ñ i tư ng c a n l p có nhi u hành vi ñ ng trong d án Không ph i m i d án s d ng bi u ñ lo i này n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 4/21
  5. Tr ng thái ñ i tư ng? Tr ng thái ñ i tư ng là k t qu c a các ho t ñ ng trư c n ñó c a ñ i tư ng ð i tư ng luôn trong m t tr ng thác xác ñ nh t i m t n th i ñi m Tr ng thái ñư c xác ñ nh b i giá tr c a thu c tính và liên k t v i n ñ i tư ng khác Thí d n Con ngư i c th c a l p Person có các tr ng thái: Ngư i lao n ñ ng, Th t nghi p, V hưu Hóa ñơn mua hàng: ðã thanh toán, chưa thanh toán n Xe ô tô: ðang ch y, ðang ñ ng n Thay ñ i tr ng thái ñ i tư ng n Có s ki n x y ra n Thí d : ai ñó thanh toán hóa ñơn hàng n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 5/21
  6. Bi u ñ tr ng thái Thí d bi u ñ tr ng thái n Unpaid Paying Invoice Created Paid Invoice destroyed S d ng bi u ñ tr ng thái ñ làm gì? n Phân tích viên, ngư i thi t k và ngư i s d ng hi u hành vi ñ i n tư ng Ngư i phát tri n hi u hành vi ñ i tư ng ñ cài ñ t nó n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 6/21
  7. Bi u ñ tr ng thái Các ph n t ñ h a n Tr ng thái kh i ñ u: Khi ñ i tư ng ñư c t o ra n Tr ng thái d ng: Khi ñ i tư ng b phá h y n Tr ng thái (State) n Ho t ñ ng n Hành ñ ng vào n Hành ñ ng ra n Quá ñ (Transition) n S ki n n ði u ki n canh n Hành ñ ng n Tr ng thái n n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 7/21
  8. Bi u ñ tr ng thái Các ph n t ñ h a n ... n Tr ng thái (State) n Tr ng thái ñư c xác ñ nh t kh o sát thu c tính l p và quan h n gi a các l p Ký pháp ñ h a n StateName Khi ñ i tư ng trong tr ng thái nào ñó nó th c hi n vài ho t n ñ ng (Activity) Phát sinh báo cáo, Th c hi n tính toán và G i thông ñi p ñ n ñ i n tư ng khác Có năm lo i thông tin có th g p trong tr ng thái n Ho t ñ ng, Hành ñ ng vào, Hành ñ ng ra, S ki n, L ch s tr ng n thái. ... n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 8/21
  9. Bi u ñ tr ng thái Các ph n t ñ h a n ... Canceled n Tr ng thái (State) do/ Arange alternate flight for customers n Ho t ñ ng (Activity) n Là hành vi mà ñ i tư ng th c hi n khi nó n ñang tr ng thái c th Scheduled Nó là hành vi có th ng t ñư c n Bi u di n trong ph n t bi u ñ : do hay / do/ Check current date n entry/ Post flight schedule on Internet ... Hành ñ ng vào (Entry Action) n Là hành vi x y ra khi ñ i tư ng ñang n chuy n vào tr ng thái Nó là hành vi không th ng t ñư c n Bi u di n trong ph n t bi u ñ : Entry n Hành ñ ng ra (Exit Action) n In Flight Là hành vi x y ra khi ñ i tư ng ñang n do/ Check current date chuy n ra tr ng thái exit/ Record landing time ... Nó là hành vi không th ng t ñư c n Bi u di n trong ph n t bi u ñ : Exit n ... n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 9/21
  10. Bi u ñ tr ng thái Các ph n t ñ h a n In Flight ... exit/ Record landing time n Quá ñ (Transition) Land n Quá ñ là chuy n ñ ng t tr ng thái này sang n tr ng thái khác Landed Quá ñ ph n thân n ð c t quá ñ n Pass / Remove passenger S ki n (Event): cái gì ñó là nguyên nhân chuy n n t tr ng thái này sang tr ng thái khác H u h t quá ñ ñ u có s ki n. S ki n có th có ñ i s , thí d , Remove passenger(name) Open ði u ki n canh (Guard): xác ñ nh khi nào s ki n n x y ra, thí d , Tr ng thái máy bay t Open sang Full khi ch cu i cùng ñã có ngư i mua vé Hành ñ ng (Action): hành vi không ng t ñư c, x y n ra như m t ph n c a chuy n ti p. Event[Guard condition] / Action State 1 State 2 ... n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 10/21
  11. Bi u ñ tr ng thái Các ph n t ñ h a n ... n Tr ng thái n (Nested state) n ð gi m quá nhi u tr ng thái trong bi u ñ ta có th l ng tr ng thái n vào trong tr ng thái khác: Substate, Superstate N u hai hay nhi u tr ng thái có cùng quá ñ -> nhóm chúng thành n superstate Thí d n Bi u ñ bi u ñ bi n ñ i tr ng thái c a l p Flight có các tr ng thái n Scheduled, Open, Full và Closed Chuy n bay chuy n vào tr ng thái Closed 10 phút trư c khi c t cánh, n không quan tâm ñ n tr ng thái trư c ñó c a nó là Open hay Full. L ch s tr ng thái (Superstate history) n Nhi u khi có nhu c u nh l i tr ng thái v a trư c ñó c a ñ i tư ng n B sung tr ng thái kh i ñ u trong siêu tr ng thái n S d ng ch báo l ch s l ch s tr ng thái H nơi ñ i tư ng v a ñi qua n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 11/21
  12. Bi u ñ tr ng thái v i tr ng thái n Scheduled Scheduled [ Current date is less than 60 days before [ Current date is less than 60 days before flight ] flight ] / Set number of passenger to 0 / Set number of passenger to 0 Add/Remove passenger Adding Passengers Add passenger[ Last seat was sold ] Add/Remove passenger Full Open Add passenger[ Last seat was sold ] Opened Open Full Remove passenger( PassengerName ) [ 10 min before scheduled takeoff ] Remove passenger( PassengerName ) [ 10 min before scheduled takeoff ] [ 10 min before scheduled takeoff ] Closed Closed ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 12/21
  13. Bi u ñ tr ng thái và l p Mô t quan h gi a bi u ñ tr ng thái và l p n Thí d Bi u ñ tr ng thái c a l p Digital watch n Digital_watch inc() mode_button() inc / hours:=hours+1 Display Set hours mode_button do/ Set current time do/ Display hour inc / minutes:=minutes+1 mode_button mode_button Set minutes do/ Display minutes ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 13/21
  14. Bi u ñ ho t ñ ng Bi u ñ ho t ñ ng (Activity diagram) do Odell ñ xu t n cho UML ñ mô t lu ng công vi c trong ti n trình nghi p v trong mô hình n hóa nghi p v mô t lu ng s ki n trong mô hình hóa h th ng n S d ng text như trư c ñây s khó ñ c khi logíc ph c t p, có n nhi u r nhánh Bi u ñ ho t ñ ng s d ng ñ mô hình hóa n khía c nh ñ ng c a h th ng n các bư c trình t hay tương tranh trong quá trình tính toán n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 14/21
  15. Bi u ñ ho t ñ ng Ho t ñ ng (Activity) n Là m t bư c trong ti n trình n Hành ñ ng (Actions) n Là các bư c nh hơn trong Activity n Action có th x y ra khi n ðang vào activity n Hành ñ ng vào x y ra khi activity b t ñ u, ñánh d u b ng “Entry” n Khi ñang ñi ra kh i activity n Hành ñ ng ra x y ra khi r i b activity, ñánh d u b ng “Exit” n Khi th c hi n activity n Hành ñ ng x y ra khi ñang trong activity, ñánh d u b ng “do” n Khi có s ki n ñ c bi t x y ra n Hành ñ ng x y ra khi và ch khi có s ki n c th x y ra, ñánh d u n b ng “event” ti p theo là tên s ki n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 15/21
  16. Bi u ñ ho t ñ ng ð i tư ng và lu ng ñ i tư ng n (Object flow) ð i tư ng là th c th , có th b Display fare n các ho t ñ ng trong lu ng s Ticket d ng và thay ñ i Enter credit [Unconfirmed] information Trong bi u ñ ho t ñ ng: [...] n hi n th ñ i tư ng v i tr ng thái n [Approved] c a nó Ticket Liên k t ñ i tư ng v i các ho t Reserve seat [Purchased] n ñ ng thông qua lu ng ñ i tư ng Generate confirmation number M t ñ i tư ng có th là ñ u vào n cho ho t ñ ng. ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 16/21
  17. Bi u ñ ho t ñ ng Quá ñ (Transition) n Ch ra lu ng ñi u khi n t ho t ñ ng này ñ n ho t ñ ng khác n Trư ng h p ñơn gi n n Generate confirmation Reserve seat number ð t gi i h n trên quá ñ ñ ñi u khi n: event hay guard condition n Cancel Cancel Refund credit Reserve seat reservation purchase Generate confirmation number Khi có s ki n, ñi u ki n canh ñi u khi n ñ quá ñ có th x y ra? n [ New reservation ] Generate confirmation Reserve seat number ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 17/21
  18. Bi u ñ ho t ñ ng R nhánh và ñ ng b (Synchonization) n ð ng b là cách mô t hai hay nhi u nhánh flows x y ra ñ ng th i n Ng d y Kh i đ ng xe {OR} [ Con xăng ] [ H t xăng ] Ăn sáng U ng cà phê Đi xe buýt, Lái xe taxi, xe ñ p {XOR} ði h c ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 18/21
  19. Bi u ñ ho t ñ ng Làn bơi (Swimlanes) n S d ng ñ mô hình hóa lu ng công vi c trong ti n trình nghi p v n Ch ra ai có trách nhi m th c hi n t ng ho t ñ ng n ð phân ho ch các tr ng thái ho t ñ ng vào nhóm n Phân tách nhóm trên bi u ñ b ng các làn bơi n M i ho t ñ ng thu c v m t làn bơi n Quá ñ có th ñư c v t làn bơi này ñ n làn bơi khác n M i làn bơi có th ñư c cài ñ t b i m t hay nhi u l p n ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 19/21
  20. Bi u ñ ho t ñ ng Khách hàng Nhân viên bán hàng Nhân viên kho hàng Yêu c u mua hàng X lý ñơn hàng Chuy n hàng ra Ti p t c công vi c O : Order [Đang x lý] G i hàng đi O : Order [Đã đi n] Nh n hàng Báo giá b : Bill Tr ti n [Chưa thanh toán] Swimlanes K t thúc mua b : Bill hàng [Đã thanh toán] ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 7 - 20/21
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2