1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu môn học: Phân tích và thiết kế HTTT theo UML - Phần 2

58 15 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 4,48 MB

Nội dung

Tài liệu môn học: Phân tích và thiết kế HTTT theo UML - Phần 2 là tài liệu được sưu tầm và tổng hợp. Tiếp theo phần 1, phần 2 này có 2 chương với nội dung: Mô hình hướng đối tượng, Mô hình hóa tự động sẽ giúp cung cấp các hiểu biết nhằm nâng cao kiến thức về thiết kế HTTT.

CH 5.1 L p, it NG : MƠ HÌNH I T +NG ng quan h – thành ph n c b n c a mơ hình Trong mơ hình hóa h ng i t ng, nh ng ph n t c!u thành c(n b n nh!t c a mơ hình l p, i t ng m i quan h gi a chúng v i L p i t ng s& mơ hình hóa nh ng có h th ng mà mu n miêu t , m i quan h s& bi u th c!u trúc ng tác phân l p (classification) ã c s d ng t hàng ngàn n(m n gi n hóa vi c miêu t h th ng ph c t p Khi loài ng i bi t n vi c l p trình h ng i t ng xây d ng h th ng ph n m m l p m i quan h c a chúng c chuy n thành dòng code c th 5.1.1 it ng (Object) M t i t ng m t s t ng tr ng cho m t th c th , ho c th c th t n t i th gi i i th c ho c th c th mang tính khái ni m M t i t ng có th t ng tr ng cho ó c th , ví d nh m t chi c xe ô tô ch hàng c a b n ho c chi c máy tính c a tôi, ho c t ng tr ng cho m t khái ni m ví d nh m t quy trình hóa h#c, m t giao d ch nhà b(ng, m t l i t hàng, nh ng thơng tin q trình s d ng tín d ng c a khách hàng hay m t t3 l ti n l i C'ng có nh ng i t ng (ví d nh i t ng th c thi m t h th ng ph n m m) khơng th t s t n t i ngồi th gi i th c, nh ng k t qu d n xu!t t trình nghiên c u c!u trúc ng x c a i t ng th gi i th c Nh ng i t ng ó, dù b%ng cách hay cách khác, u liên quan n quan ni m c a v th gi i th c M t i t ng m t khái ni m, m t s tr u t ng hóa, ho c m t v t v i ranh gi i ý ngh+a c nh ngh+a rõ ràng cho m t ng d ng ó M.i i t ng m t h th ng u có ba c tính: tr ng thái, ng x s nh n di n 5.1.2 Tr ng thái, ng x nh#n di n c a it ng Tr ng thái (state) c a m t i t ng m t nh ng hoàn c nh n i i t ng có th t n t i Tr ng thái c a m t i t ng th ng s& thay i theo th i gian, c nh ngh+a qua m t t h p thu c tính, v i giá tr c a thu c tính c'ng nh m i quan h mà i t ng có th có v i i t ng khác Ví d m t danh sách ghi danh cho m t l p h#c h th ng tr ng h#c có th có hai tr ng thái: tr ng thái óng tr ng thái m N u danh sách sinh viên ghi danh cho l p h#c nh h n s t i a cho phép (ví d 10), tr ng thái c a b ng ghi danh m M t ã 10 sinh viên ghi danh cho l p, danh sách s& chuy n sang tr ng thái óng ng x (Behaviour) xác nh m t i t ng s& ph n ng nh th tr c nh ng yêu c u t i t ng khác, tiêu bi u cho nh ng mà i t ng có th làm 5ng x c th c thi qua lo t Ph ng th c (operation) c a i t ng Trong ví d tr ng i h#c, m t i t ng b ng ghi danh l p h#c có th có ng x b sung thêm m t sinh viên hay xóa i tên c a m t sinh viên sinh viên (ng ký h#c hay bãi b (ng ký S nh n di n (Identity) m b o r%ng m.i i t ng nh!t – dù tr ng thái c a có th gi ng v i tr ng thái c a i t ng khác Ví d , khóa h#c i s 101 ch ng khóa h#c i s 101 ch ng 65 hai i t ng h th ng ghi danh tr ng h#c M c dù c hai khóa h#c v n có s nh n d ng nh!t c a u thu c lo i b ng ghi danh, m.i 5.1.3 L p (Class) M t l p m t l i miêu t c a m t nhóm i t ng có chung thu c tính, chung ph ng th c ( ng x ), chung m i quan h v i i t ng khác chung ng ngh+a (semantic) Nói nh th có ngh+a l p m t khuôn m u t o i t ng M.i i t ng m t th c th c a m t l p ó m t i t ng không th k t qu th c th hóa c a nhi u h n m t l p Chúng ta s d ng khái ni m l p bàn lu n v h th ng phân lo i i t ng mà ã nh n d ng th gi i th c Ví d , m t l p M t l p t t s& n"m b"t m t ch* m t s tr u t ng hóa - ph i có m t ch v a có kh n(ng gi t!t c thông tin v m t sinh viên thông tin v t!t c nh ng l p h#c mà ng i sinh viên ó ã tr i qua nhi u n(m tr c không ph i m t l p t t, b i khơng có ch L p c n ph i c chia làm hai l p liên quan n nhau: l p sinh viên l p l ch s c a sinh viên Hình 5.1- M.i th c th mơ hình m t l p Khi t o d ng mơ hình c'ng nh th t s xây d ng h th ng doanh nghi p, h th ng thông tin, máy móc ho c l#ai h th ng khác, c n s d ng khái ni m c a ph m vi v!n n cho mơ hình d hi u d giao ti p h n N u xây d ng h th ng cho m t công ty b o hi m, mơ hình c n ph i d a khái ni m c a ngành b o hi m N u xây d ng m t h th ng cho quân i, khái ni m c a th gi i quân s c n ph i c s d ng mơ hình hóa h th ng M t h th ng d a khái ni m c a m t ngành doanh nghi p ó có th d c thi t k l i cho phù h p v i nh ng qui ch , chi n l c qui nh m i, b i ch* c n cân b%ng kh"c ph c s chênh l ch gi a công vi c c' công vi c m i Khi mơ hình c xây d ng d a khái ni m l!y t cu c i th c d a khái ni m thu c ph m vi v!n , h ng i t ng s& m t ph ng pháp r!t thích h p b i n n t ng c a ph ng pháp h ng i t ng l p, i t ng m i quan h gi a chúng M t l p l i miêu t cho m t d ng i t ng b!t k0 m t h th ng ó – h th ng thông tin, h th ng k, thu t, h th ng nhúng th i gian th c, h th ng phân tán, h th ng ph n m m h th ng doanh th ng Các v t d ng (artifact) m t doanh nghi p, nh ng thông tin c n c l u tr , phân tích ho c vai trị mà m t tác nhân m nh n m t doanh nghi p th ng s& tr thành l p h th ng doanh nghi p h th ng thơng tin 66 Ví d v l p doanh nghi p h th ng thông tin: Khách hàng B n th Hóa ng thuy t n Món n Tài s n B n cơng b giá c phi u Các l p m t h th ng k, thu t th s d ng h th ng: ng bao g m it ng k, thu t, ví d nh máy móc c i di n cho th c th ph n m m m t h i u Sensor Màn hình I/O card ng c Nút b!m L p i u n Các h th ng ph n m m th hành: ng có l p File Ch ng trình ch y c Trang thi t b Icon C as Thanh kéo 5.1.4 Bi u l p (Class diagram) M t bi u l p m t d ng mơ hình t+nh M t bi u l p miêu t h ng nhìn t+nh c a m t h th ng b%ng khái ni m l p m i quan h gi a chúng v i M c dù c'ng có nh ng nét t ng t v i m t mơ hình d li u, nh ng nên nh r%ng l p không ph i ch* th hi n c!u trúc thông tin mà cịn miêu t c hình vi M t m c ích c a bi u l p t o n n t ng cho bi u khác, th hi n khía c nh khác c a h th ng (ví d nh tr ng thái c a i t ng hay c ng tác ng gi a i t ng, c ch* bi u ng) M t l p m t bi u l p có th c th c thi tr c ti p m t ngơn ng h ng i t ng có h tr tr c ti p khái ni m l p M t bi u l p ch* ch* 67 l p, nh ng bên c nh ó cịn có m t bi n t!u h i khác i m t chút ch* th c th c a l p (bi u i t ng) it ng th t s Hình 5.2-Mơ hình l p UML Hình 5.3- M t l p c th v i thu c tính t o m t bi u l p, u tiên ta ph i nh n di n miêu t l p M t ã có m t s l l p, ta s& xét n quan h gi a l p ó v i ng 5.2 Tìm l p H u nh khơng có m t cơng th c chung cho vi c phát hi n l p i tìm l p m t cơng vi c ịi h i trí sáng t o c n ph i c th c thi v i s tr giúp c a chuyên gia ng d ng Vì qui trình phân tích thi t k mang tính vịng l p, nên danh sách l p s& thay i theo th i gian T p h p ban u c a l p tìm ch a ch"c ã t p h p cu i c a l p sau s& c th c thi bi n i thành code Vì th , th ng ng i ta hay s d ng n khái ni m l p ng c viên (Candidate c tìm cho h th ng Class) miêu t t p h p nh ng l p u tiên Nh ã nói ph n 2.10 (Th c hi n Tr ng h p s ch c n(ng c a h th ng, trách nhi m th c thi thu ó Nói m t cách khác, i tìm l p h ng ngo i ã c xác nh tr ng h p s d ng), tr ng h p s d ng nh ng l i miêu t c v i t ng c ng tác th c thi ch c n(ng ti n t i tìm gi i pháp cung c!p nh ng ng x d ng Có nhi u ph ng pháp khác th c hi n cơng vi c ó Có ph ng pháp ngh ti n hành phân tích ph m vi toán, ch* t!t c l p th c th (thu c ph m vi toán) v i m i quan h c a chúng v i Sau ó nhà phát tri n s& phân tích t ng tr ng h p s d ng phân b trách nhi m cho l p mơ hình phân tích (analysis model), nhi u s& thay i chúng ho c b sung thêm l p m i Có ph ng pháp ngh nên l!y tr ng h p s d ng làm n n t ng tìm l p, trình phân b trách nhi m mơ hình phân tích c a ph m vi toán s& t ng b c t ng b c c thi t l p 68 5.2.1 Phân tích ph m vi tốn tìm l p Q trình phân tích ph m vi tốn th ng c b"t u v i khái ni m then ch t (Key Abstraction), m t công c th ng c s d ng nh n di n l#c l p ng c viên (Candidate class) a) Khái ni m then ch t: Hãy l!y ví d m t nhà b(ng ABC, i u u tiên ta ngh+ t i gì? Ti n! Bên c nh ó, ABC cịn ph i có nh ng th c th liên quan t i ti n nh sau: Khách hàng S n ph$m (các tài kho n L cl c coi s n ph$m c a m t nhà b(ng) ng nhân viên Ban qu n tr nhà b(ng Phịng máy tính nhà b(ng c g#i khái ni m then ch t cho nh ng mà nhà b(ng có th có Khái Nh ng th c th ni m then ch t ho c mang tính c!u trúc (structural) ho c mang tính ch c n(ng (functional) Th c th mang tính c!u trúc nh ng th c th v t lý t ng tác v i nhà b(ng, ví d khách hàng Th c th mang tính ch c n(ng nh ng ch c n(ng mà nhà b(ng ph i th c hi n, ví d trì m t tài kho n ho c chuy n ti n t tài kho n sang tài kho n khác Khái ni m then ch t th c th ta ý n u tiên Chúng r!t quan tr#ng giúp ta: nh ngh+a ranh gi i c a v!n Nh!n m nh n th c th có liên quan n thi t k c a h th ng Lo i b th c th n%m ph m vi h th ng Các khái ni m then ch t th ng s& tr thành l p mô hình phân tích M t khái ni m then ch t tóm l i m t l p hay i t ng thu c chuyên ngành c a ph m vi tốn Khi trình bày v i ng i s d ng, chúng có m t ánh x 1-1 gi a v i nh ng th c th liên quan t i ng i s d ng nh hóa n, sec, gi!y ngh rút ti n, s ti t ki m, th/ rút ti n t ng, nhân viên thu ngân, nhân viên nhà b(ng, phòng ban,… M c ' tr4u t ng: Khi phân tích ph m vi toán, c n ý r%ng m c tr u t ng c a khái ni m then ch t r!t quan tr#ng, b i m c tr u t ng cao hay th!p u r!t d gây nh m l n M c tr u t ng cao d n t i nh ng nh ngh+a khái quát v m t th c th , t o nên m t nhìn v+ mơ th ng khơng nh"m vào m t m c tiêu c th Ví d m t nhà b(ng, ta không th ch#n khái ni m then ch t "ng i", b i s& d n n l i miêu t : "M t ng i n nhà b(ng g i ti n vào, s ti n ó c m t ng i khác ti p nh n." – m t yêu c u quan tr#ng ây ph i phân bi t gi a nhân viên v i khách hàng ch c n(ng c a h# khác h)n T ng t nh v y, m c tr u t ng th!p c'ng d gây hi u l m, b i nh ng thông tin v n v t ch a thích h p v i th i i m Ví d nh ng quy t nh d ng: 69 Form m tài kho n òi h i t!t c 15 Entry Nh ng d li u Form Khơng có nhi u ch nên c ghi u ph i c c(n ph i a ch* c a khách hàng Form dành cho giai o n sau Vài i m c n ý v khái ni m then ch t: Nh ng th c th xu!t hi n u tiên óc não nh ng th c th d có kh n(ng tr thành khái ni m then ch t cho m t v!n nh tr c M.i l n tìm th!y m t khái ni m then ch t m i, c n xem xét theo cách nhìn c a v!n câu h i sau : Nh ng ch c n(ng có th c th c hi n i u n nh ng th c th lo i i v i th c th này? c t o ra? N u khơng có câu tr l i thích h p, c n ph i suy ngh+ l i v th c th M.i khái ni m then ch t m i c n ph i ni m b) Nh n d"ng l p it c , có th h i ó t tên cho thích h p, miêu t úng ch c n(ng c a khái ng: N"m v ng khái ni m l p, có th t ng i d dàng tìm th!y l p i t ng ph m vi v!n M t nguyên t"c thô s th ng c áp d ng danh t4 l i phát bi u toán th ng ng c viên chuy n thành l p i t ng M t s g i ý th c t cho vi c tìm l p ph m vi v!n B c : u tiên c n ph i t p trung nghiên c u k,: Các danh t nh ng l i phát bi u toán Ki n th c chuyên ngành thu c ph m vi toán Các Tr ng h p s d ng Ví d l i phát bi u "Có m t s tài kho n mang l i ti n lãi", ta th!y có hai danh t tài kho n ti n lãi Chúng có th l p ti m n(ng cho mơ hình nhà b(ng l/ Th hai, c n ý n nhóm v t th h th ng hi n th i nh : Các th c th v t lý c a h th ng: nh ng v t th t hàng ng tác v i h th ng, ví d khách Các v t th h u hình: v t th v t lý mà ta có th nhìn s th!y Ví d nh công c giao thông, sách v , m t ng i, m t nhà,… Trong m t nhà b(ng ABC, ó có th t p sec, phi u ngh rút ti n, s ti t ki m, lo i Form c n thi t 70 Các s ki n (Events): M t chi c xe b h ng, m t c a c m Trong m t nhà b(ng s áo h n m t tài kho n u t , hi n t ng rút nhi u ti n m t m t tài kho n bình th ng Các vai trị (Role): Ví d nh m-, khách hàng, ng i bán hàng, … Trong m t nhà b(ng, vai trị có th nhân viên, nhà qu n tr , khách hàng, Các s t ng tác (Interactions): Ví d vi c bán hàng m t chu.i t ng tác bao g m khách hàng, ng i bán hàng s n ph$m Trong m t nhà b(ng, vi c m m t tài kho n m i s& yêu c u m t chu.i t ng tác gi a nhân viên khách hàng V trí (Location): M t v t ó ho c m t ng i ó c gán cho m t v trí ó Ví d : Ơtơ i v i nhà xe Trong m t nhà b(ng ta có th th!y nhân viên thu ngân ln ng c a s c a n v t ch c (Organisation Unit): Ví d phịng ban, phịng tr ng bày s n ph$m, b ph n Trong m t nhà b(ng có th có b ph n tài kho n bình th ng, b ph n tài kho n ti t ki m, b ph n tài kho n u t Bên c nh ó, cịn nhi u câu h i khác giúp ta nh n d ng l p Ví d nh : Ta có thơng tin c n c l u tr ho c c n c phân tích khơng? N u có thơng tin c n ph i c l u tr , bi n i, phân tích ho c x lý m t ph ng th c ó ch"c ch"n ó s& ng c viên cho l p Nh ng thơng tin có th m t khái ni m c ghi h th ng ho c s ki n, giao d ch x y t i m t th i i m c c n ph i th ó Ta có h th ng ngo i vi khơng? N u có, th ng chúng c'ng c quan tâm t i c coi l p ch a h th ng t o d ng mơ hình Các h th ng bên ngồi có th c a ho c t ng tác v i h th ng c a Chúng ta có m u, th vi n l p , thành ph n nh ng th khác khơng? N u có m u, th vi n, thành ph n t d án tr c (xin c c a b n ng nghi p, mua c t nhà cung c!p) chúng th ng c'ng s& ch a ng c viên l p Có thi t b ngo i vi mà h th ng c a c n x lý không? M.i thi t b k, thu t c n i v i h th ng c a th ng s& tr thành ng c viên cho l p x lý lo i thi t b ngo i vi Chúng ta có ph n công vi c t ch c không? Miêu t m t n v t ch c công vi c c th c hi n v i l p, c bi t mơ hình doanh nghi p c) T ng k!t v ngu$n thông tin cho vi c tìm l p: Nhìn chung, ngu n thơng tin c n c bi t ý tìm l p : Các l i phát bi u yêu c u Các Tr ng h p s d ng S tr giúp c a chuyên gia ng d ng Nghiên c u h th ng hi n th i 71 Lo t l p u tiên c nh n d ng qua ây th ng c g#i l p ng c viên (Candidate Class) Ngoài ra, nghiên c u nh ng h th ng t ng t c'ng có th s& mang l i cho ta l p ng c viên khác: Khi nghiên c u h th ng hi n th i, ý n danh t khái ni m then ch t nh n l p ng c viên Không nên a l p ã c nh n di n m t l n n a vào mơ hình ch* b i chúng c nh"c l i âu ó theo m t tên g#i khác Ví d , m t h th ng nhà b(ng có th coi m t khách hàng v i nhi u v trí khác nhi u khách hàng khác C n ý phân tích nh ng l i miêu t nh th tránh d n n s trùng l p q trình nh n di n l p Có nhi u ngu n thông tin mà nhà thi t k c n ph i ý t i thi t k l p ch* làm nh v y, ta m i có th tin ch"c v kh n(ng t o d ng m t mơ hình t t Hình sau t ng k t ngu n thơng tin k Hình 5.4 - Ngu n thơng tin h tr tìm l p Các tr ng h p s d ng ngu n t t nh!t cho vi c nh n di n l p i t ng C n nghiên c u k, Tr ng h p s d ng tìm thu c tính (attribute) báo tr c s t n t i c a i t ng ho c l p ti m n(ng Ví d n u Tr ng h p s d ng yêu c u ph i a vào m t s tài kho n (account-number) i u tr t i s t n t i c a m t i t ng tài kho n M t ngu n khác nh n l p/ i t ng Input Output c a h th ng N u Input bao g m tên khách hàng ây tín hi u cho bi t s t n t i c a m t i t ng khách hàng, b i m t attribute c a khách hàng Nói chuy n v i ng i s d ng c'ng g i m n khái ni m then ch t Th ng ng i s d ng miêu t h th ng theo l i c n ph i a vào nh ng mong ch k t qu Thơng tin a vào k t c t p h p l i v i nh n d ng khái ni m then qu theo l i miêu t c a ng i s d ng c n ph i ch t 5.2.2 Các l p ng c viên Theo b c k ph n u giai o n phân tích, ta ã miêu t c m t s l p khác Nh ng l p c g#i l p ng c viên, chúng th hi n nh ng l p có kh n(ng t n t i m t h th ng cho tr c M c dù v y, ây v n có th ch a ph i k t qu chung cu c, m t s l p ng c viên có th s& b lo i b b c sau khơng thích h p Giai o n u nh ngh+a l p ng c viên, ta ch a nên c g"ng l#c l p, t p trung cáo m c tiêu nghiên c u bao quát tồn di n t nhi u ngu n thơng tin khác khơng b sót nhi u khía c nh c n x lý Ví d nhà m t b(ng l/, l p ng c viên có th là: 72 Khách hàng Các lo i tài kho n khác Sec, s ti t ki m, n, … Phi u yêu c u m tài kho n m i Th/ ATM B n in thông tin v tài kho n Gi!y ch ng nh n tài kho n ut Th/ x p hàng (Token), s th t Nhân viên Nhân viên thu ngân 5.2.3 Lo i b$ l p ng c viên khơng thích h p Có r!t nhi u lo i l p ng c viên khơng thích h p c n ph i c lo i b : L p d , th a: Khi có h n m t l p nh ngh+a m t th c th , nên gi l i l p t t nh!t lo i b nh ng l p khác Ví d , m t nhà b(ng có hai l p ch tài kho n khách hàng C hai l p bi u hi n m t th c th th ch* c n gi l i m t L p khơng thích h p: L p nh ngh+a nh ng th c th không liên quan n v!n th c t i M#i l p không xu!t phát t ph m vi ng d ng c n ph i c lo i b Ví d , l p c a máy m ti n bên casse m t nhà b(ng có th m t ng c viên cho khái ni m l p không thích h p L p khơng rõ ràng: L p khơng có ch c n(ng c th c g#i l p không rõ ràng L p t n t i có giá tr s d ng m t h th ng l p có m t ch c n(ng ã c nh n di n xác nh rõ ràng Các l p không rõ ràng c n ph i c nh ngh+a l i ho c lo i b Ví d quan sát nhi u b ph n khác m t nhà b(ng ABC M t nh ng b ph n ã c nh n di n có th b ph n hành Vì ph m vi cho q trình vi tính hóa c a nhà b(ng hi n th i ch a bao g m m ng hành nên l p có th c coi m t l p khơng rõ ràng (vì khơng có ch c n(ng rõ ràng h th ng c n xây d ng tr c m"t) T ng t , nh ng thu c tính ph ng th c không rõ ràng c n ph i c lo i kh i danh sách l p ng c viên Chúng không c n ph i b xoá h)n, nh ng c n c a c nh n di n Các ng x ó sau ngồi ta có th nhìn rõ l p c n thi t ã có th c gán cho l p thích h p h n Các l p ch* vai trò (Role) i v i m t l p khác: Hãy lo i b t!t c vai trị gi l i l p Ví d nhà qu n tr , nhân viên thu ngân, ng i ch y gi!y r!t có th ch* vai trò c a l p nhân viên Hãy gi l i l p nhân viên lo i b t!t c nh ng l p khác ch* vai trị 73 M t l p khơng cung c!p ng x c n thi t ho c thu c tính c n thi t có th s& l p khơng c n thi t Nhi u khi, có th có m t l p ch)ng cung c!p m t thu c tính ho c ng x mà ch* nh ngh+a m t t p h p m i quan h Nh ng l p nh th c n ph i c nghiên c u k, xác nh s liên quan v i h th ng Ví d m t khách hàng có th c nh ngh+a khách hàng quan tr#ng hay khách hàng bình th ng tùy theo m i quan h mà có v i nhà b(ng t cách ch nhân tài kho n T!t c nh ng công c xây d ng (Implementation constructs) ví d nh stack, arrays, link lists, … c n ph i c a kh i mơ hình phân tích Chúng s& c dùng t i giai o n xây d ng ph n m m M t l p có tên mang tính ng t có th n gi n ch* m t hàm ch không ph i m t l p Ví d "rút ti n" khơng c n ph i c coi m t l p, có th ch c n(ng c a m t l p L p ch* có m t hàm ho c ch* s miêu t vi c th c hi n m t ch c n(ng ó có th n gi n ch* m t hàm, ho c q trình tr u t ng hóa d li u (data abstraction) ây c th c hi n y ch a L p khơng có hàm m t thi u sót mơ hình V!n c suy ngh+ th!u áo th c) c a l p ch a 5.3 L p it hàm thành ph n (ph ng ng UML UML th hi n l p b%ng hình ch nh t có ph n Ph n th nh!t ch a tên l p Trong ph n th hai thu c tính d li u thành ph n c a l p ph n th ba ph ng th c hay hàm thành ph n c a l p 5.3.1 Tên l p (class name) c in m (bold) c(n gi a Tên l p ph i c d n xu!t t ph m vi v!n Tên l p có th Vì th danh t , ví d nh tài kho n, nhân viên, rõ ràng nh 5.3.2 Thu c tính (attribute) L p có thu c tính miêu t nh ng c i m c a i t ng Giá tr c a thu c tính th ng nh ng d ng c a ph n ngôn ng l p trình h tr nh Integer, Boolean, Floats, Char, … d li u n gi n Thu c tính có th có nhi u m c trơng th!y c (visibility) khác nhau, miêu t li u thu c tính ó có th c truy xu!t t l p khác, khác v i l p nh ngh+a N u thu c tính có tính trơng th!y cơng c ng (public), có th c nhìn th!y s d ng ngồi l p ó N u thu c tính có tính trơng th!y riêng (private), b n s& khơng th truy c p t bên ngồi l p ó M t tính trơng th!y khác b o v (protected), c s d ng chung v i cơng c khái qt hóa chun bi t hóa Nó c'ng gi ng nh thu c tính riêng nh ng c th z k b i l p d n xu!t Trong UML, thu c tính cơng c ng mang kí hi u "+" thu c tính riêng mang d!u "-" Giá tr c gán cho thu c tính có th m t cách miêu t tr ng thái c a i t ng M.i l n giá tr thay i bi u hi n cho th!y có th ã x y m t s thay i tr ng thái c a i t ng 74 ATM g i s ti n c n rút n cho tài kho n i t ng tài kho n tr s ti n ó vào m c ti n tài kho n T i th i i m này, th!y có m t m'i tên quay tr l i ch* vào i t ng tài kho n Ý ngh+a c a i t ng tài kho n x lý yêu c u n i b i t ng không g i s ki n ó ngồi it ng tài kho n tr v m c ti n m i tài kho n cho máy ATM i t ng ATM tr v m c ti n m i tài kho n cho khách hàng d+ nhiên, c ng ti n khách hàng ã yêu c u c rút l i t ng tài kho n ch* b"t u c sinh i t ng ATM c n t i ki m tra mã s i t ng tài kho n ti p t c s ng cho t i giao d ch c hoàn t!t Sau ó, ch t i B i khách hàng có th mu n ti p t c th c hi n giao d ch khác nên i t ng khách hàng i t ng máy ATM v n ti p t c t n t i, i u c ch* qua vi c ng i i t ng c kéo v t ng th)ng th hi n s ki n cu i chu.i t ng tác Lo i t ng tác r!t h u d ng m t h th ng có m t s l ng nh i t ng v i m t s l ng l n s ki n x y gi a chúng M c dù v y, s l ng i t ng m t h th ng t(ng lên mơ hình s& khơng cịn m!y thích h p có th v& bi u gi a chúng Khi v& bi u tu n t , u tiên xác nh it ng liên quan th hi n s ki n x y tu n t , c n ý: S ki n it c bi u di n b%ng ng b%ng ng th)ng n%m ngang ng n%m d#c Th i gian c th hi n b%ng có ngh+a s ki n c n ph i xu ng d i ng th)ng n%m d#c b"t u t bi u i u ó c th hi n theo úng th t mà chúng x y ra, v& t 6.6 Bi u $ c'ng tác (Collaboration Diagram) M t bi u c ng tác miêu t t ng tác gi a i t ng c'ng gi ng nh bi u tu n t , nh ng t p trung tr c h t vào s ki n, t c t p trung ch y u vào s t ng tác gi a i t ng Trong m t bi u c ng tác, i t ng c bi u di n b%ng kí hi u l p Th t bi u c ng tác c th hi n b%ng cách ánh s thông i p K, thu t ánh s c coi h i có ph n khó hi u h n so v i k, thu t m'i tên s d ng bi u tu n t Nh ng u i m c a bi u c ng tác có th ch* chi ti t v l nh g#i hàm (th t c), y u t c né tránh bi u tu n t Bi u sau ây m t ví d cho m t bi u c ng tác, c chu$n b c'ng cho m t c nh k ch rút ti n m t nh bi u tu n t c a ph n tr c Hãy quan sát th t s bi u u tiên th t c WithdrawalReq() c g#i t l p khách hàng ó l nh g#i s B c ti p theo tu n t hàm AskForPin(), s 1.1, c g#i t l p ATM Thông i p bi u c vi t d i d ng pin:= AskForPin(), th hi n r%ng "giá tr tr v " c a hàm mã s mà l p khách hàng s& cung c!p 108 Hình cung bên l p tài kho n bi u th r%ng hàm ComputeNetBalance() c g#i n i b l p tài kho n x lý c c b Th ng s& m t th t c riêng (private) c a l p Hình 6.5- M t bi u c ng tác c a kích c nh rút ti n máy ATM 6.7 Bi u $ tr"ng thái (State Diagram) Bi u tr ng thái n"m b"t vòng i c a i t ng, h th ng (Subsystem) h th ng Chúng cho ta bi t tr ng thái mà m t i t ng có th có s ki n (các thông i p nh n c, kho ng th i gian ã qua i, l.i x y ra, i u ki n c th a mãn) s& nh h ng n nh ng tr ng thái ó nh th d#c theo ti n trình th i gian Bi u tr ng thái có th ính kèm v i t!t c c nh n di n rõ ràng có l i ng x ph c t p Bi u tr ng thái xác nh l p có nh ng tr ng thái ng x miêu t s& khác bi t ph thu c vào tr ng thái, c'ng cịn miêu t rõ nh ng s ki n s& thay i tr ng thái c a i t ng c a m t l p 6.7.1 Tr ng thái s bi n i tr ng thái (State transition) T!t c i t ng u có tr ng thái; tr ng thái m t k t qu c a ho t ng tr c ó ã c i t ng th c hi n th ng c xác nh qua giá tr c a thu c tính c'ng nh n i k t c a i t ng v i i t ng khác M t l p có th có m t thu c tính c bi t xác nh tr ng thái, ho c tr ng thái c'ng có th c xác nh qua giá tr c a thu c tính “bình th ng" i t ng Ví d v tr ng thái c a i t ng: Hóa n( it ng) ã Chi c xe ô tô ( i t ng c ( i t Jen ( i t c tr ti n (tr ng thái) ng) ang ng yên (tr ng thái) ng) ang ch y (tr ng thái) ng) ang óng vai trị ng i bán hàng (tr ng thái) 109 Kate ( i t ng) ã l!y ch ng (tr ng thái) c g#i s ki n; ví d có M t i t ng s& thay i tr ng thái có m t vi c ó x y ra, th ó tr ti n cho hóa n, b t ng c xe ô tô l!y ch ng l!y v Khía c nh ng có hai chi u khơng gian: t ng tác s bi n i tr ng thái n i b T ng tác miêu t l i ng x i ngo i c a i t ng ch* i t ng s& t ng tác v i i t ng khác (qua vi c g i thông i p, n i k t ho c ch!m d t n i k t) S bi n i tr ng thái n i b miêu t m t i t ng s& thay i tr ng thái – ví d giá tr thu c tính n i b c a s& thay i nh th Bi u tr ng thái c s d ng miêu t vi c b n thân i t ng ph n ng tr c s ki n chúng thay i tr ng thái n i b c a chúng nh th nào, ví d , m t hóa n s& chuy n t tr ng thái ch a tr ti n sang tr ng thái ã tr ti n có ó tr ti n cho Khi m t hóa n c t o ra, u tiên b c vào tr ng thái ch a c tr ti n 6.7.2 Bi u tr ng thái Bi u tr ng thái th hi n nh ng khía c nh mà ta quan tâm t i xem xét tr ng thái c a m t t ng: Tr ng thái ban M t s tr ng thái i u gi a M t ho c nhi u tr ng thái k t thúc S bi n i gi a tr ng thái Nh ng s ki n gây nên s bi n i t m t tr ng thái sang tr ng thái khác Hình sau s& ch* kí hi u UML th hi n tr ng thái b"t tr ng thái c a m t i t ng Hình 6.6- Các ký hi u UML th hi n b"t Hình 6.7- Bi u M t tr ng thái có th có ba thành ph n, nh u tr ng thái k t thúc, s ki n c'ng nh u, k t thúc, s ki n tr ng thái c a m t tr ng thái th c hi n hoá it ng n c ch* hình sau : 110 Hình 6.8- Các ng(n Tên, Bi n tr ng thái hành ng Ph n th nh!t ch* tên c a tr ng thái, ví d nh ch , ã c tr ti n hay ang chuy n ng Ph n th hai (không b"t bu c) dành cho bi n tr ng thái ây nh ng thu c tính c a l p c th hi n qua bi u tr ng thái; nhi u bi n t m th i c'ng t r!t h u d ng tr ng thái, ví d nh lo i bi n m (counter) Ph n th ba (không b"t bu c) ph n dành cho ho t ng, n i s ki n hành ng có th c li t kê Có ba lo i s ki n chu$n hóa có th c s d ng cho ph n hành ng: entry ( i vào), exit ( i ra), (th c hi n) Lo i s ki n i vào c s d ng xác nh hành ng kh i nh p tr ng thái, ví d gán giá tr cho m t thu c tính ho c g i i m t thông i p S ki n i có th c s d ng xác nh hành ng r i b tr ng thái S ki n th c hi n cs d ng xác nh hành ng c n ph i c th c hi n tr ng thái, ví d nh g i m t thơng i p, ch , hay tính tốn Ba lo i s ki n chu$n không th c s d ng cho m c ích khác M t s bi n i tr ng thái th ng có m t s ki n i kèm v i nó, nh ng khơng b"t bu c N u có m t s ki n i kèm, s thay i tr ng thái s& c th c hi n s ki n x y M t hành ng lo i th c hi n tr ng thái có th m t q trình ang ti p di n (ví d ch , i u n th t c, ) ph i c th c hi n i t ng v n nguyên tr ng thái M t hành ng th c hi n có th b ng"t b i s ki n t ngồi, có ngh+a m t s ki n ki n gây nên m t s bi n i tr ng thái có th ng ng ng"t m t hành ng th c hi n mang tính n i b ang ti p di n Trong tr ng h p m t s bi ng n i b tr ng thái hành ng ng i s c th c hi n xong, m t s Hình 6.9- Bi n n i tr ng thái khơng có s ki n i kèm tr ng thái s& thay i hành ã c th c hi n xong (hành ng n i b ki u i vào, i ra, th c hi n hay d ng nh ngh+a) Theo ó, t!t c hành ng thu c tr ng thái ã thay i tr ng thái s& t ng x y mà khơng c n s ki n t ngồi i tr ng thái khơng có s ki n t ngồi S thay i tr ng thái x y ho t ng m.i tr ng thái c th c hi n xong 6.7.3 Nh#n bi t tr ng thái s ki n Quá trình phát hi n s ki n tr ng thái v m t b n ch!t bao g m vi c h i m t s câu h i thích h p: M t i t ng có th có nh ng tr ng thái nào?: Hãy li t kê t!t c nh ng tr ng thái mà m t i t ng có th có vịng i c a 111 Nh ng s ki n có th x y ra?: B i s ki n gây vi c thay s ki n m t b c quan tr#ng nh n di n tr ng thái Tr ng thái m i s& gì?: Sau nh n di n s ki n, xác x y tr ng thái sau s ki n x y Có nh ng th t c s& thái c a m t i t ng c th c thi?: Hãy ý Chu.i t ng tác gi a i t ng gì?: T nh h ng n tr ng thái c a i t ng i tr ng thái nên nh n nh tr ng thái s ki n n th t c nh h ng tác gi a it ng n tr ng ng c'ng có th Qui nh s& c áp d ng cho ph n ng c a i t ng v i nhau?: Các qui nh ki m t a ph n ng i v i m t s ki n s& xác nh rõ h n tr ng thái Nh ng s ki n s chuy n t i không th x y ra?: Nhi u có m t s s ki n ho c s thay i tr ng thái không th x y Ví d nh bán m t chi c tơ ã c bán r i Cái n cho m t i t ng c t o ra?: i t ng c t o s ki n Ví d nh m t sinh viên ghi danh cho m t khóa h#c tr l i cho m t Cái n cho m t i t ng b h y?: i t ng s& b h y i chúng không c n t i n a Ví d m t sinh viên k t thúc m t khóa h#c c Cái n cho i t ng c n ph i c tái phân lo i (reclassfied)?: Nh ng lo i s c t(ng ch c thành nhà qu n tr s& n cho ng tác tái ki n nh m t nhân viên phân lo i c a nhân viên ó c th c hi n 6.7.4 M t s l i mách b o cho vi c t o d ng bi u Chuy n bi u Xác tu n t thành bi u tr ng thái tr ng thái nh vòng l p (loop) B sung thêm i u ki n biên i u ki n Tr n l n c nh k ch khác vào bi u c bi t tr ng thái M t mơ hình ã c t o nên, nêu câu h i ki m tra xem mơ hình có kh n(ng cung c!p t!t c câu tr l i Qui trình sau ây c n ph i c nh"c l i cho m.i i t ng a) Chuy n bi u $ tu n t* thành bi u $ tr"ng thái c miêu t bi u , chu.i ph i mang Hãy dõi theo m t chu.i s ki n tính tiêu bi u cho t ng tác h th ng Hãy quan sát s ki n nh h ng n i t ng mà ta ang nghiên c u Hãy s"p x p s ki n thành m t ng d n, dán nhãn input (ho c entry) output (exit) cho s ki n Kho ng cách gi a hai s ki n s& m t tr ng thái N u c nh k ch có th c nh"c i nh"c l i r!t nhi u l n (vô gi i h n), n i d n t tr ng thái cu i n tr ng thái u tiên ng 112 Bi u sau ây ch* bi u tr ng thái c a m t l p máy ATM, ho c bi u c ng tác ã c trình bày ph n tr c Hình 6.10- Chuy n m t bi u tu n t sang bi u c chi t su!t t bi u tu n t tr ng thái b) Nh n vòng l-p (loop) M t chu.i s ki n có th c nh"c i nh"c l i vơ s l n Hình 6.11- Bi u c g#i vòng l p (loop) l p Chú ý: Trong m t vòng l p, chu.i s ki n c nh"c i nh"c l i c n ph i ng nh!t v i N u có m t chu.i s ki n khác chu.i khác tr ng h p ó khơng có vịng l p Lý t ng nh!t m t tr ng thái vòng l p s& có s ki n k t thúc quan tr#ng, n u khơng vịng l p s& không bao gi k t thúc ây y u t c) B sung thêm i u ki n biên i u ki n -c bi t Sau ã hoàn t!t bi u tr ng thái cho m#i i t ng c n thi t h th ng, ã n lúc c n ki m tra, i ch ng chúng v i i u ki n biên i u ki n c bi t khác, nh ng i u ki n r!t có th ã ch a c quan tâm th i gian t o d ng bi u tr ng thái i u ki n biên nh ng i u ki n thao tác giá tr , ây nh ng giá tr n%m bên ranh gi i c a m t i u ki n quy t nh v tr ng thái c a i t ng, ví d nh quy nh v k0 h n c a m t tài kho n 30 ngày ngày th 31 113 i v i tài kho n s& m t i u ki n biên Các i u ki n c bi t nh ng i u ki n ngo i l , ví d ngày th 30 c a tháng n(m 2000 (n u có m t i u ki n th t s nh v y t n t i i th c) d) Tr'n l n c nh k1ch khác vào bi u $ tr"ng thái M t bi u tr ng thái cho m t i t ng ã s2n sàng, c n ph i tr n nh ng chu.i s ki n có nh h ng n i t ng vào bi u tr ng thái i u có ngh+a c n ph i quan sát hi u ng gián ti p c a s ki n khác i v i i t ng ang ch c a bi u tr ng thái ây vi c quan tr#ng, b i i t ng m t h th ng t ng tác v i i t ng khác c'ng có kh n(ng gây nên s ki n cho m t i t ng nh tr c, nên l i ng x c'ng c n ph i c th hi n bi u tr ng thái i m b"t u cho công vi c là: 7n nh m t i m b"t u chung cho t!t c chu.i s ki n b sung Xác nh i m n i ng x b"t hóa bi u tr ng thái u khác bi t v i nh ng ng x ã c mơ hình ng d n thay th C n B sung thêm s bi n i m i t tr ng thái này, t cách m t n nh ng ng d n có v/ ngồi ng nh!t nh ng th t có khác bi t m t tình hu ng nh!t ó Hãy ý n ng i s d ng gây quy n i u n t i m t th i i m ti m t tài kho n u t ý nh s ki n x y nh ng tình hu ng b!t ti n M.i s ki n khách hàng hay nên u có th sa vào tr ng thái c a s ki n b!t ti n H th ng không n"m i v i ng i s d ng ng i s d ng có th quy t nh làm n y m t s ki n n l i i v i Ví d nh khách hàng có th quy t nh k t thúc tr c k0 h n M t tr ng h p khác c'ng c n ph i c x lý s ki n ng i s d ng gây nên khơng th x y Có m t lo t lý (ng i s d ng thi u t p trung, bu n n n, l ãng ) n cho s ki n lo i c x lý th!u áo Ví d m t khách hàng th!t b i không x y C tr ng h p c'ng ph i vi c báo cho nhà b(ng bi t nh ng m nh l nh c a v k0 h n c a tài kho n, m t t!m séc c vi t nh ng l i khơng có kh n(ng gi i t a m c ti n c n thi t Nhìn theo ph ng di n bi u nh ng i m sau: tr ng thái nh m t thành ph n c a mơ hình Bi u tr ng thái ch* c n quan tr#ng c t o d ng nên cho l p it Hãy th$m tra bi u tr ng thái theo khía c nh tính nh!t quán dùng chung cho tồn b mơ hình ng c úng "n Dùng tr Khi ng h p s d ng ng có ng x ý ng i v i nh ng s ki n h tr cho trình t o d ng bi u nh ngh+a m t tr ng thái, ch* ng, c n ý tr ng thái n nh ng thu c tính liên quan 6.8 Bi u $ ho"t 'ng (Activity Diagram) Bi u vi c ho t ng n"m b"t hành ng k t qu c a chúng Bi u ho t ng t p trung vào công c th c hi n th c thi m t th t c (hàm), ho t ng m t l n th c thi m t 114 tr ng h p s d ng ho c m t i t ng Bi u ho t ng m t bi n th c a bi u tr ng thái có m t m c tiêu t ng i khác, ó n"m b"t hành ng (cơng vi c nh ng ho t ng ph i c th c hi n) c'ng nh k t qu c a chúng theo s bi n i tr ng thái Các tr ng thái bi u ho t ng ( c g#i tr ng thái hành ng) s& chuy n sang giai o n k ti p hành ng tr ng thái ã c th c hi n xong (mà không xác nh b!t k0 m t s ki n theo nh n i dung c a bi u tr ng thái) M t s i m phân bi t khác gi a bi u ho t ng bi u tr ng thái hành ng c a c nh v lu ng (swimlane) M t lu ng s& gom nhóm ho t ng, ý t i khái ni m ng i ch u trách nhi m cho chúng ho c chúng n%m âu m t t ch c M t bi u ho t ng m t ph ng pháp b sung cho vi c miêu t t ng tác, i kèm v i trách nhi m th hi n rõ hành ng x y nh th nào, chúng làm (thay i tr ng thái i t ng), chúng x y (chu.i hành ng), chúng x y âu (lu ng hành ng) Bi u ho t ng có th c s d ng cho nhi u m c ích khác nhau, ví d nh : n"m b"t công vi c (hành ng) s& ph i c th c thi m t th t c c th c hi n ây tác d ng th ng g p nh!t quan tr#ng nh!t c a bi u ho t ng n"m b"t công vi c n i b m t h it ng ch* m t nhóm hành ng liên quan có th c th c thi sao, chúng s& nh ng n nh ng i t ng n%m xung quanh chúng nh th ch* m t tr ng h p s d ng có th hành ng s bi n i tr ng thái c a c th c th hóa nh th nào, theo khái ni m i t ng ch* m t doanh nghi p ho t ng nh th theo khái ni m cơng nhân (tác nhân), qui trình nghi p v (workflow), ho c t ch c i t ng (các khía c nh v t lý c'ng nh tri th c c s d ng doanh nghi p) Bi u ho t ng có th c coi m t lo i Flow chart i m khác bi t Flow Chart bình th ng ch* c áp d ng i v i qui trình tu n t , bi u ho t ng có th x lý c các qui trình song song Hành 'ng s* thay i tr"ng thái c th c hi n s n sinh m t k t qu Vi c th c thi c a th t c có th c M t hành ng miêu t d i d ng m t t p h p c a hành ng liên quan, sau chúng s& c chuy n thành dòng code th t s Theo nh nh ngh+a ph n tr c, m t bi u ho t ng ch* hành ng m i quan h gi a chúng có th có m t i m b"t u m t i m k t thúc Bi u ho t ng s d ng c'ng nh ng ký hi u nh bi u tr ng thái bình th ng 115 Hình 6.12- Khi m t ng i g#i tác v PrintAllCustomer (trong l p CustomerWindow), hành ng kh i ng hành ng u tiên hi n m t h p thông báo lên hình; hành ng th hai t o m t t p tin postscript; hành ng th ba g i file postscript n máy in; hành ng th t xóa h p thơng báo hình Các hành ng c chuy n ti p t ng; chúng x y hành ng giai o n ngu n c th c hi n Các s thay i có th c b o v b i i u ki n canh gi (Guard-condition), i u ki n ph i c th a mãn s thay i m i n M t ký hi u hình thoi c s d ng th hi n m t quy t nh Ký hi u quy t nh có th có m t ho c nhi u s thay i i vào m t ho c nhi u s thay i i c dán nhãn i kèm i u ki n b o v Bình th ng ra, m t c th a mãn (là úng) M t s thay i c chia s s thay i i bao gi c'ng thành hai hay nhi u s thay i khác s& d n n hành ng x y song song Các hành ng c th c hi n ng th i, m c dù chúng c'ng có th c th c hi n l n l t t ng m t Y u t quan tr#ng ây t!t c thay i ng th i ph i c th c hi n tr c chúng c th ng nh!t l i v i (n u có) M t ng th)ng n%m ngang k/ m (còn c g#i c chia thành nhi u ng h hóa – Synchronisation Bar) ch* r%ng m t s thay i nhánh khác ch* m t s chia s/ thành hành ng song song C'ng ng th)ng ó c s d ng ch* s th ng nh!t nhánh Kí hi u UML cho thành ph n c n b n c a bi u $ ho"t 'ng: Ho t ng (Activity): m t qui trình c m t hàm ho c m t nhóm i t ng Ho t tròn c nh nh ngh+a rõ ràng, có th c th c thi qua ng c th hi n b%ng hình ch nh t bo Thanh ng b hóa (Synchronisation bar): chúng cho phép ta m ho c óng l i nhánh ch y song song n i b ti n trình Hình 6.13- Thanh ng b hóa 116 i u ki n canh gi (Guard Condition): bi u th c logic có giá tr ho c úng ho c sai i u ki n canh gi c th hi n ngo c vng, ví d : [Customer existing] i m quy t nh (Decision Point): hi u hình thoi Hình sau ây miêu t m t o n bi u ho t máy, ta th!y có ba ho t ng song song: c s d ng ch* s thay ng c a máy ATM Sau th/ i kh thi Kí c a vào Xác nh n th/ Xác nh n mã s PIN Xác nh n s ti n yêu c u c rút Ch* s d ng bi u ho t ng, ho t ng song song nh v y m i có th M.i m t ho t ng xác nh n b n thân c'ng ã có th m t trình riêng bi t Hình 6.14- Bi u 6.9 Vòng /i it ho t c miêu t ng c a máy ATM ng (Object Lifecycle) Vòng i mà m t i t ng i qua ph thu c vào lo i v i m t i t ng: vòng i sinh r i ch t i; vịng i t ng Có hai lo i vòng i vòng l p i khác i 117 6.9.1 Vòng i sinh ch t i Trong m t vòng i sinh r i ch t i: S& có m t hay nhi u tr ng thái n i g#i tr ng thái t o i t ng it ng b"t u t n t i Nh ng tr ng thái S& có m t hay nhi u tr ng thái óng t cách i m k t thúc cho vòng t ng Nh ng tr ng thái c g#i tr ng thái k t thúc ic am t c i Có hai lo i tr ng thái k t thúc M t d ng tr ng thái k t thúc lo i n i i t ng b h y không ti p t c t n t i n a Lo i th hai d ng tr ng thái k t thúc mà sau ó i t ng s& c l u tr l i ho c chuy n sang tr ng thái im l ng i t ng ti p t c t n t i nh ng không ti p t c th hi n ng x ng Sau tr ng thái kh i t o tr c tr ng thái k t thúc, i t ng có th i qua m t ho c nhi u tr ng thái trung gian T i m.i m t th i i m, i t ng ph i m t tr ng thái hi n th i Khơng có m t i m sau tr ng thái kh i t o tr tr ng thái Ví d cho it 6.9.2 Vịng Khác v i tr ng có vịng c tr ng thái k t thúc mà it ng l i khơng có i sinh ch t i: khách hàng, tài kho n il p ng h p sinh ch t i, vòng it ng i vịng l p: c coi ã ln ln t n t i ây s& mãi ti p t c t n t i Khơng có tr ng thái kh i t o c'ng khơng có tr ng thái k t thúc M c dù th t i t ng ã c t o t i m t th i i m ó c'ng s& th t s b h y di t t i m t c coi luôn t n t i có m t Th ng nh ng i t ng t th i i m ó, nh ng v n có m t vòng i vòng l p s& c t o t i th i i m cài t h th ng s& ch t i h th ng k t thúc M t i t ng v i vịng i vịng l p s& có m t ho c nhi u tr ng thái "ng yên" ó nh ng tr ng thái n i i t ng n%m ch m t s ki n x y Bên c nh ó, i t ng c'ng ln ln tr ng thái hi n th i Ví d cho it ng có vịng i l p l i: máy rút ti n t ng (ATM), nhân viên thu ngân 6.10 Xem xét l"i mơ hình 'ng 6.10.1 Th'm v n bi u tr ng thái Sau ã hoàn t!t thành ph n c(n b n c a mơ hình ng nh bi u tu n t , bi u c ng tác, bi u tr ng thái bi u ho t ng, nhóm phát tri n có th phác th o bi u thành ph n bi u tri n khai Bi u tri n khai có th c coi bi u cu i mơ hình ng T i th i i m này, có th coi ta ã hoàn t!t m t phiên b n c a mơ hình ng 118 Ph n quan tr#ng nh!t mơ hình bi u tr ng thái Hãy tìm câu tr l i cho m t lo t câu h i xác nh xem bi u tr ng thái ã úng "n có m t m c chi ti t thích h p hay ch a Công vi c c n nh"m t i hai m c ích: Ki m tra tính tr#n v-n c a mơ hình m b o m#i i u ki n gây l.i ã c x lý Trong giai o n này, có th s& có c nh k ch (scenario) m i xu!t hi n gia nh p ph m vi quan sát c a chúng ta, n u tr c ó có m t s tr ng thái ch a c x lý Nh ng tình hu ng lo i lo i v!n có th c gi i quy t, song có th né tránh qua vi c xác nh th t y s ki n tr ng thái 6.10.2 Ph i h p s ki n B c cu i m t vòng ki m tra b sung nh%m m b o tính úng "n c a mơ hình ng: Ki m tra m b o m.i thông i p u có i t ng g i i t ng nh n Trong m t s tr ng h p, s li u xác c a nh ng i t ng nh n s ki n có th không c bi t t i, nh ng ph i m b o r%ng bi t nh ng l p s& x lý nh ng s ki n Hãy nghiên c u mô hình theo khía c nh tr ng thái, tìm nh ng tr ng thái khơng có tr ng thái d n tr c khơng có tr ng thái ti p theo Nh ng tr ng thái thái r!t có th tr ng thái kh i u ho c tr ng thái k t thúc M c dù v y, n u tr ng thái ó khơng thu c v m t hai lo i tr ng thái kia, r!t có th ây m t tri u ch ng cho th!y mơ hình cịn thi u i u ó Nhìn chung, t!t c tr ng thái th sau ng u có tr ng thái d n tr c tr ng thái ti p Hãy l n theo h ng c a s ki n i vào (entry) m b o chúng t ng thích v i tr ng h p s d ng n i chúng xu!t phát làm i u này, l n theo m t s ki n t m t i t ng n i t ng khác, ki m tra xem m.i s ki n có phù h p v i tr ng h p s d ng hay không Trong tr ng h p có mâu thu n, s a l i bi u m b o s nh!t quán tr ng thái ho c tr ng h p s d ng Ki m tra l i nh ng l.i 6.10.3 Bao gi s d ng bi u ng b , có th chúng k t qu c a m t s ki n không ch i Không c n ph i v& t!t c lo i bi u ng cho t!t c lo i h th ng M c dù v y, m t s tr ng h p khác nh!t thi t ph i c n n m t s lo i bi u ng nh!t nh Sau ây m t vài l i mách b o có th giúp gi i thích m t vài i u cịn ch a thơng t v vi c s d ng lo i bi u ng Bi u tu n t bi u c ng tác c v& mu n xem xét ng x ng c a nhi u i t ng/ l p n i b m t c nh k ch c a m t tr ng h p s d ng Bi u tu n t bi u c ng tác r!t h u d ng vi c ch* s c ng tác gi a i t ng, nh ng chúng l i không h u d ng mu n miêu t ng x xác c a m t i t ng Bi u tr ng thái c s d ng th hi n ng x xác c a m t it ng 119 Bi u ho t ng c s d ng th hi n l i ng x xuyên su t nhi u tr ti u trình x y song song c a m t l n th c thi Bi u thành ph n bi u tri n khai thành ph n ph n c ng h th ng 6.10.4 L p bi u c s d ng ng h p s d ng ho c ch* m i quan h v t lý gi a ph n m m tr ng thái T!t c l p u th a k c thu c tính c'ng nh th t c c a l p cha Vì v y, m t l p c'ng s& th a k c mơ hình ng c a l p cha Ngồi bi u tr ng thái thái c a m t l p cha s& c th a k , l p c'ng có bi u tr ng thái riêng c a Bi u c m r ng bao ch a l i ng x chuyên bi t c a l p tr ng Bi u tr ng thái c a l p bi u tr ng thái c a l p cha ph i c b o trì riêng bi t c l p Bi u tr ng thái c a l p c n ph i c nh ngh+a s d ng thu c tính c a l p ch khơng ph i ch* b%ng thu c tính c a l p cha M t khác, v n có m t s móc n i ngồi ý mu n c a l p cha n v i l p thơng qua thu c tính mà chúng s d ng chung, ví d ch* nên xem xét bi u tr ng thái cho tài kho n có k0 h n theo ph ng di n s thay i c a thu c tính c a chúng, ch khơng ph i thu c tính c a l p cha Ta ph i th c hi n nh v y né tránh tr ng h p tr n l n thu c tính c a l p l p cha Vi c tuân th quy t"c k q trình v& bi u mơ un cho ng tác m r ng c a b n 6.11 Ph i h p mơ hình it tr ng thái cho m t l p s& m b o tính ng mơ hình 'ng Khi k t h p gi a mơ hình i t ng mơ hình ng, m.i s ki n mơ hình ng c n ph i t ng thích v i m t th t c mơ hình i t ng T ó suy ra, m.i s thay i v m t tr ng thái mơ hình ng c n ph i phù h p v i m t th t c c a i t ng Hành ng ph thu c vào tr ng thái c a i t ng vào s ki n M i quan h gi a mơ hình Mơ hình it it ng mơ hình ng có th ng c c!u (framework) cho mơ hình Mơ hình ng xác nh chu.i thay mơ hình i t ng Mơ hình ng b h n ch ch* nh ng c'ng nh c!u trúc c a chúng t c miêu t nh sau: i ng c phép x y it i v i it ng ng có m t mơ hình it ng Khơng th có m t mơ hình ng cho m t i t ng khơng t n t i mơ hình ng Có m t m i quan h 1-1 gi a mơ hình i t ng mơ hình ng Mơ hình ng mơ hình it i ng c ng thêm v i ph n ng x "s ng" Mơ hình i t ng miêu t s khác bi t gi a i t ng nh s khác bi t gi a l p Khi m t i t ng ng x khác m t i t ng khác m.i i t ng s ó s& có m t l p riêng 120 M c dù v y, mơ hình ng, s khác bi t ng x thành tr ng thái khác c a m t l p ng s& c mơ hình hóa 6.12 Tóm t)t v mơ hình 'ng T!t c h th ng u có c!u trúc t+nh có ng x ng C!u trúc có th c miêu t qua ph n t mơ hình t+nh, ví d nh l p, quan h gi a l p, nút m ng thành ph n Khái ni m ng x miêu t ph n t mơ hình n i b c!u trúc s& t ng tác v i d#c theo ti n trình th i gian ó th ng nh ng t ng tác c xác nh tr c có th c mơ hình hóa Mơ hình hóa ng x ng c a m t h th ng g#i mơ hình ng, c UML h tr Có t!t c b n lo i bi u khác nhau, m.i lo i v i m t m c ích khác nhau: bi u tr ng thái , bi u tu n t , bi u c ng tác bi u ho t ng Bi u tr ng thái c s d ng miêu t l i ng x c'ng nh tr ng thái n i b m t l p (nó c'ng có th c s d ng cho h th ng ho c cho tồn b h th ng) Nó t p trung vào khía c nh i t ng theo ti n trình th i gian s& thay i tr ng thái c a chúng tùy theo nh ng s c th c hi n tr ng thái, bao gi s ki n x y ra, l i ng x c'ng nh hành ng thay i tr ng thái x y M t s ki n có th n m t i u ki n tr thành c th a mãn, nh n m t tín hi u ho c l nh g#i th t c, ho c m t kho ng th i gian nh tr c qua i Bi u tu n t c s d ng miêu t m t nhóm i t ng s& t ng tác v i m t c nh k ch riêng bi t nh th Nó t p trung vào chu.i thông i p, t c câu h i thông i p cg i nh n gi a m t nhóm i t ng nh th Bi u tu n t có hai tr c; tr c d#c ch* th i gian tr c n%m ngang ch* i t ng tham gia c nh k ch Khía c nh quan tr#ng nh!t c a m t bi u tu n t th i gian Bi u c ng tác c s d ng miêu t i t ng t ng tác v i không gian b nh cn ik tv i (space), có ngh+a bên c nh t ng tác ng, cịn miêu t rõ ràng i t ng nh th Trong bi u c ng tác khơng có tr c cho th i gian; thay vào ó, thơng i p s& c ánh s t o chu.i Bi u ho t ng c s d ng miêu t s vi c x y ra sao, công vi c c th c hi n nh th Bi u ho t ng c'ng có th c s d ng cho th t c, l p, tr ng h p s d ng, c s d ng ch* quy trình nghi p v (workflow) c'ng có th 6.13 Ph n câu h i H i: Th m t vòng l p? áp: M t chu i s ki n có th (loop) H i: Mơ hình ng mơ hình c nh"c i, nh"c l i vô s l n it ng c ng thêm ph n ng x c g#i vòng l p ng c a h th ng áp: úng H i: Các s ki n c l p c'ng có th s ki n song song áp: úng H i: M t it ng không nh!t thi t ph i có tr ng thái 121 áp: Sai, m#i it ng u có tr ng thái H i: M t l p có th có tr ng thái ban áp: Sai, m t H i: M t vòng tr ng thái k t thúc it u tr ng thái k t thúc ng có th có tr ng thái ban i (chu trình) vịng l p c a áp: úng, t c t n t i it ng it u tr ng thái k t thúc ng khơng có tr ng thái kh i t o c'ng khơng có c coi ã ln ln t n t i ây s& mãi ti p 122 ... có th t 0-t i-1 (0 1), 0-t i-nhi u (0 * hay ), m t-t i-nhi u (1 ), hai (2) , n(m-t i-m i m t (5 11) C'ng có th miêu t m t dãy s ví d (1,4,6, 12) Giá tr m c nh 79 Hình 5.1 7- M t s l p tiêu bi u Hình... s n ph$m Hình 5 .25 ch* m t ví d c a liên h quy hình 5 .26 m t bi u i t ng cho bi u l p hình 5 .25 Hình 5 .2 5- M t m ng g m nhi u nút n i v i Hình 5 .2 6- M t bi u it ng c a hình 5 .25 , v i tên c a... ã chuy n m t m i liên h m t-t i-nhi u thành liên h m t-t i-m t Hình 5.1 9- Liên h ch n nh b) Liên h VÀ (AND Association): Nhà b(ng n# a quy nh: khách hàng mu n m m t tài kho n ATM ph i ch nhân

Ngày đăng: 11/05/2021, 03:38

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w