TÀI LIỆU MÔN HỌC PHÂN TÍCH VÀ THIẾT KẾ HTTT THEO UML

122 12 0
TÀI LIỆU MÔN HỌC PHÂN TÍCH VÀ THIẾT KẾ HTTT THEO UML

Đ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

chúng ta có thể thấy rằng một số tập hợp dữ liệu phức tạp nhất định khi được trình bày bằng đồ thị sẽ chuyển tải đến người đọc nhiều thông tin hơn so với các dữ liệu thô. với phần mềm cũng vậy, khi ngành công nghiệp của chúng ta ngày càng phát triển, các hệ thống sẽ trở nên phức tạp hơn.

TÀI LI U MƠN H C PHÂN TÍCH VÀ THI T K HTTT THEO UML ( ây tài li u s u t m, t ng h p) GI NG VIÊN PH TRÁCH: NGUY N GI NG VIÊN: TÔN TH T HOÀ AN – D CC NG NG KI U HOA (S u t m t ng h p) M CL C CH NG 1: T NG QUAN V PHÂN TÍCH THI T K H TH NG 1.1 D n nh p 1.1.1 Tính tr c quan 1.1.2 Mơ hình tr u t ng 1.1.3 Mơ hình hóa tr c quan 1.2 Mơ t chu trình phát tri n ph n m m 1.2.1 Software Development – m t toán ph c t p 1.2.2 Chu Trình Phát Tri n Ph n M m (Software Development Life Cycle) 1.2.3 Các giai o n c a Chu Trình Phát Tri n Ph n M m 1.3 Ph ng pháp h ng ch c n ng ph ng pháp h ng i t ng 13 1.4 u i m c a mơ hình h ng i t ng 13 1.4.1 Tính tái s d ng (Reusable) 13 1.4.2 Các giai o n c a chu trình phát tri n ph n m m v i mơ hình h ng i t ng 14 1.5 Ph n câu h i 16 CH NG 2: NGÔN NG MƠ HÌNH HĨA TH NG NH T LÀ GÌ? 17 2.1 Gi i thi u UML 17 2.1.1 Mơ hình hóa h th ng ph n m m 17 2.1.2 Tr c UML 2.1.3 S i 18 i c a UML 18 2.1.4 UML (Unifield Modeling Language) 19 2.1.5 Ph ng pháp ngôn ng mơ hình hố 19 2.2 UML phân tích thi!t k! h th ng 19 2.3 UML giai o"n phát tri n h th ng 20 2.4 Ph n câu h i 21 CH NG 3: KHÁI QUÁT V UML 22 3.1 UML giai o"n c a chu trình phát tri n ph n m m 22 3.1.1 Giai o n nghiên c u s b 22 3.1.2 Giai o n phân tích 22 3.1.3 Giai o n thi t k 22 3.1.4 Giai o n xây d ng 22 3.1.5 Th nghi m 23 3.2 Các thành ph n c a ngôn ng# UML 23 3.3 H ng nhìn (View) 23 3.3.1 H ng nhìn Use case (Use case View) 25 3.3.2 H ng nhìn logic (Logical View) 25 3.3.3 H ng nhìn thành ph n (Component View) 25 3.3.4 H ng nhìn song song (Concurrency View) 26 3.3.5 H ng nhìn tri n khai (Deployment View) 26 3.4 Bi u $ (diagram) 26 3.4.1 Bi u Use case (Use Case Diagram) 26 3.4.2 Bi u l p (Class Diagram) 27 3.4.3 Bi u 3.4.4 Bi u it ng (Object Diagram) 28 tr ng thái (State Diagram) 28 3.4.5 Bi u trình t (Sequence Diagram) 29 3.4.6 Bi u c ng tác (Collaboration Diagram) 29 3.4.7 Bi u ho t 3.4.8 Bi u thành ph n (Component Diagram) 30 ng (Activity Diagram) 30 3.4.9 Bi u tri n khai (Deployment Diagram) 31 3.5 Ph n t% mơ hình (model element) 32 3.6 C ch! chung (General Mechanism) 33 3.6.1 Trang trí (Adornment) 33 3.6.2 Ghi (Note) 34 3.6.3 c t (Specification) 34 3.7 M& r'ng UML 35 3.7.1 Khuôn m u (Stereotype) 35 3.7.2 Giá tr ính kèm (Tagged Value) 36 3.7.3 H n ch (Constraint) 36 3.8 Mơ hình hóa v i UML 37 3.9 Công c( (Tool) 40 3.10 Tóm t)t v UML 41 3.11 Ph n câu h i 42 CH NG 4: MƠ HÌNH HÓA USE CASE 43 4.1 Gi i thi u Use Case 43 4.2 M't s ví d( Use Case 44 4.3 S* c n thi!t ph i có Use Case 44 4.4 Mô hình hóa Use Case 45 4.5 Bi u $ Use Case 46 4.5.1 H th ng 47 4.5.2 Tác nhân 48 4.5.3 Tìm tác nhân 49 4.5.4 Bi u di n tác nhân ngôn ng UML 49 4.5.5 Use Case 50 4.5.6 Tìm Use Case 51 4.5.7 Ví d tìm Use Case 52 4.6 Các bi!n th (Variations) m't Use Case 53 4.7 Quan h gi#a Use Case 54 4.7.1 Quan h m r ng 54 4.7.2 Quan h s d ng 55 4.7.3 Quan h chung nhóm 56 4.8 Miêu t Use Case 57 4.9 Th% Use Case 60 4.10 Th*c hi n Use Case 61 4.11 Tóm t)t v Use Case 63 4.12 Ph n câu h i 63 CH NG : MƠ HÌNH I T +NG 65 5.1 L p, i t ng quan h – thành ph n c b n c a mơ hình 65 5.1.1 it ng (Object) 65 5.1.2 Tr ng thái, ng x nh n di n c a it ng 65 5.1.3 L p (Class) 66 5.1.4 Bi u l p (Class diagram) 67 5.2 Tìm l p 68 5.2.1 Phân tích ph m vi tốn tìm l p 69 5.2.2 Các l p ng c viên 72 5.2.3 Lo i b l p ng c viên khơng thích h p 73 5.3 L p i t ng UML 74 5.3.1 Tên l p (class name) 74 5.3.2 Thu c tính (attribute) 74 5.3.3 Ph ng th c (method) 75 5.3.4 Kí hi u i t ng 76 5.4 Quan h gi#a l p 77 5.5 Liên h (Association) 78 5.5.1 Vai trò liên h 78 5.5.2 Liên h m t chi u (Uni-Directional Association) 79 5.5.3 S l ng (Cardinality) liên h 79 5.5.4 Phát hi n liên h 80 5.5.5 X lý liên h không c n thi t 80 5.5.6 Nâng c!p m i liên h 81 5.6 Quan h k!t t p (Aggregation) 85 5.6.1 Khái ni m k t t p 85 5.6.2 Kí hi u k t t p 86 5.6.3 K t t p liên h 87 5.7 Khái quát hóa chuyên bi t hóa (Generalization & Specialization) 87 5.7.1 Kí hi u khái qt hóa chun bi t hóa 88 5.7.2 Y u t phân bi t (Discriminatior) 89 5.8 Quan h ph( thu'c nâng c,p (Dependency & Refinement) 92 5.9 Nâng c,p mơ hình qua vịng l-p k! ti!p 94 5.10 Ch,t l ng mơ hình 95 5.10.1 Th m t mô hình t t? 96 5.10.2 Ta có th giao ti p v i mơ hình? 96 5.10.3 Mơ hình có phù h p v i m c ích c a khơng? 96 5.10.4 N"m b"t nh ng i m tr#ng y u 97 5.10.5 Ph i h p mơ hình 97 5.10.6 ph c t p c a mơ hình 97 5.11 Tóm t)t v mơ hình i t ng 97 5.12 Ph n câu h i 98 CH NG : MÔ HÌNH HĨA NG 100 6.1 S* c n thi!t có mơ hình 'ng (Dynamic Model) 100 6.2 Các thành ph n c a mơ hình 'ng 100 6.3 u i m c a mơ hình 'ng 102 6.4 S* ki n thông i p (Event & Message) 103 6.4.1 S ki n (Event) 103 6.4.2 Thông i p (Message) 105 6.5 Bi u $ tu n t* (Sequence Diagram) 106 6.6 Bi u $ c'ng tác (Collaboration Diagram) 108 6.7 Bi u $ tr"ng thái (State Diagram) 109 6.7.1 Tr ng thái s bi n 6.7.2 Bi u i tr ng thái (State transition) 109 tr ng thái 110 6.7.3 Nh n bi t tr ng thái s ki n 111 6.7.4 M t s l i mách b o cho vi c t o d ng bi u tr ng thái 112 6.8 Bi u $ ho"t 'ng (Activity Diagram) 114 6.9 Vòng /i i t ng (Object Lifecycle) 117 6.9.1 Vòng i sinh ch t i 118 6.9.2 Vòng i l p 118 6.10 Xem xét l"i mơ hình 'ng 118 6.10.1 Th$m v!n bi u tr ng thái 118 6.10.2 Ph i h p s ki n 119 6.10.3 Bao gi s d ng bi u 119 6.10.4 L p bi u tr ng thái 120 6.11 Ph i h p mô hình i t ng mơ hình 'ng 120 6.12 Tóm t)t v mơ hình 'ng 121 6.13 Ph n câu h i 121 CH NG 1: T NG QUAN V PHÂN TÍCH THI T K H TH NG 1.1 D n nh p 1.1.1 Tính tr c quan Chúng ta có th th!y r%ng: "M t s t p h p d li u ph c t p nh!t nh c trình bày b%ng th s& truy n t i n ng i #c nhi u thông tin h n so v i d li u thô" V i ph n m m c'ng v y, ngành Công nghi p c a ngày phát tri n, h th ng s& tr nên ph c t p h n Kh n(ng n"m b"t ki m sốt s ph c t p ó c a i kèm v i kh n(ng trình bày h th ng m t cách tồn di n - m t s trình bày v t ngồi gi i h n c a nh ng dịng l nh thô S thành công th tr ng c a nh ng ngôn ng nh Visual Basic ph n giao di n tr c quan c a C++, Java ã cho th!y s trình bày tr c quan mang tính c t y u i v i trình phát tri n h th ng ph c t p 1.1.2 Mơ hình tr u t ng Tr c ây, có m t th i gian dài, ngành cơng nghi p ã ph i nói t i m t "Cu c kh ng ho ng ph n m m" Các cu c tranh lu n u d a th c t ch)ng nh ng nhi u án ph n m m không th s n sinh nh ng h th ng tho mãn òi h i nhu c u c a khách hàng, mà v t ngân sách th i h n Các công ngh m i nh l p trình h ng i t ng, l p trình tr c quan c'ng nh mơi tr ng phát tri n tiên ti n có giúp nâng cao n(ng su!t lao ng, nh ng nhi u tr ng h p, chúng ch* h ng t i t ng th!p nh!t c a vi c phát tri n ph n m m: ph n vi t l nh (coding) M t nh ng v!n c a ngành phát tri n ph n m m th i có nhi u án b"t tay vào l p trình s m t p trung nhi u vào vi c vi t code Lý m t ph n ban qu n tr thi u hi u bi t v quy trình phát tri n ph n m m h# n y lo âu th!y i quân l p trình c a h# khơng vi t code Và b n thân l p trình viên c'ng c m th!y an tâm h n h# ng i vi t code - v n tác v mà h# quen thu c! – h n xây d ng mơ hình tr u t ng cho h th ng mà h# ph i t o nên 1.1.3 Mơ hình hóa tr c quan s d ng mơ hình c t ch c xoay Mơ hình hố tr c quan m t ph ng th c t v v!n quanh khái ni m i th c Mơ hình giúp hi u v!n , giao ti p v i m#i ng i có liên quan n d án (khách hàng, chuyên gia l+nh v c thu c án, nhà phân tích, nhà thi t k , …) Mơ hình r!t h u d ng vi c mơ hình hố doanh nghi p, so n th o tài li u, thi t k ch ng trình c'ng nh ngân hàng d li u Mơ hình giúp hi u ịi h i c a h th ng t t h n, t o thi t k rõ ràng h n xây d ng nên h th ng d b o trì h n Mơ hình k t qu c a s tr u t ng hóa nh%m miêu t thành ph n c t y u c a m t v!n hay m t c!u trúc ph c t p qua vi c l#c b t chi ti t không quan tr#ng làm cho v!n tr thành d hi u h n Tr u t ng hóa m t n(ng l c c(n b n c a ng i, cho phép gi i quy t v!n ph c t p Các k, s , ngh s+ th th công ã xây d ng mơ hình t hàng ngàn n(m th xây d ng h nghi m thi t k tr c th c hi n Phát tri n ph n m m c'ng không ngo i l th ng ph c t p, nhà phát tri n ph i tr u t ng hóa nhi u h ng nhìn khác c a h th ng, s d ng ký hi u xác xây d ng mơ hình, ki m tra xem mơ hình có th a mãn ịi h i c a h th ng, d n d n b sung thêm chi ti t chuy n mơ hình thành th c hi n Chúng ta xây d ng mô hình cho h th ng ph c t p b i không th hi u th!u áo nh ng h th ng nh th tr ng thái toàn v-n c a chúng Kh n(ng th!u hi u n"m b"t tính ph c t p c a ng i có h n i u ta có th th!y rõ ví d c a ngành xây d ng N u b n mu n t o m t túp l u góc v n, b n có th b"t tay vào xây N u b n xây m t nhà, có l& b n s& c n t i b n v&, nh ng n u b n mu n xây m t tồ nhà ch#c tr i ch"c ch"n b n không th không c n b n v& Th gi i ph n m m c a c'ng th Ch* t p trung vào dịng code hay th m chí c phân tích Forms Visual Basic ch)ng cung c!p m t nhìn tồn c c v vi c phát tri n án Xây d ng mơ hình cho phép nhà thi t k t p trung vào b c tranh l n v s t ng tác gi a thành ph n án, tránh b sa l y vào nh ng chi ti t riêng bi t c a t ng thành ph n M t môi tr ng kinh doanh mang tính c nh tranh gay g"t ln ln thay i d n n tính ph c t p ngày t(ng cao, tính ph c t p t nh ng thách th c c tr ng cho nhà phát tri n h th ng Mơ hình giúp t ch c, trình bày tr c quan, th!u hi u t o nên h th ng ph c t p Chúng giúp áp ng thách th c c a vi c phát tri n ph n m m, hôm c'ng nh ngày mai 1.2 Mô t chu trình phát tri n ph n m m 1.2.1 Software Development – m t toán ph c t p Kinh nghi m c a nhi u nhà thi t k phát tri n cho th!y phát tri n ph n m m m t toán ph c t p Xin nêu m t s lý th ng ck n: Nh ng ng i phát tri n ph n m m r!t khó hi u cho úng nh ng ng Yêu c u c a ng Yêu c u th mâu thu n ng i dùng th ng thay i dùng c n i th i gian phát tri n c miêu t b%ng v(n b n, dài dịng, khó hi u, nhi u th m chí i quân phát tri n ph n m m, v n ng m i quan h ti m $n ph c t p c n l n i "ngoài cu c", r!t khó nh n th c th!u áo c th hi n xác ng d ng Kh n(ng n"m b"t d li u ph c t p c a ng h n i (t i m t th i i m) có Khó nh l ng xác hi u su!t c a thành ph$m th a mãn xác s mong ch t phía ng i dùng Ch#n l a ph n c ng ph n m m thích h p cho gi i pháp m t nh ng thách th c l n i v i Designer Ph n m m ngồi c n có kh n(ng thích ng m r ng Ph n m m c thi t k t t ph n m m ng v ng tr c nh ng bi n i mơi tr ng, dù t phía c ng ng ng i dùng hay t phía cơng ngh Ví d ph n m m ã c phát tri n cho m t nhà b(ng c n có kh n(ng tái s d ng cho m t nhà b(ng khác v i r!t s a i ho c hồn tồn khơng c n s a i Ph n m m tho mãn yêu c u ó c coi ph n m m có kh n(ng thích ng M t ph n m m có kh n(ng m r ng ph n m m ng i dùng mà không c n s a ch a nhi u Chính v y, m t s m khuy t th c thi t k cho d phát tri n theo yêu c u c a ng g p phát tri n ph n m m là: Hi u không úng nh ng ng i dùng c n Khơng th thích ng cho phù h p v i nh ng thay i v yêu c u i v i h th ng Các Module không kh p v i Ph n m m khó b o trì nâng c!p, m r ng Phát hi n tr l h ng c a d án Ch!t l ng ph n m m Hi u n(ng c a ph n m m th!p Các thành viên nhóm khơng bi t ph i thay i c ã thay i gì, nào, âu, t i 1.2.2 Chu Trình Phát Tri n Ph n M m (Software Development Life Cycle) Vì phát tri n ph n m m m t tốn khó, nên có l& tr c h t ta c n i m qua m t s công vi c c(n b n c a trình Th ng ng i ta hay t p h p chúng theo ti n trình th i gian m t cách t ng i, xoay quanh chu trình c a m t ph n m m, d n t i k t q a khái ni m Chu Trình Phát Tri n Ph n M m (Software Development Life Cycle - SDLC) nh sau: Chu Trình Phát Tri n Ph n M m m t chu.i ho t ng c a nhà phân tích (Analyst), nhà thi t k (Designer), ng i phát tri n (Developer) ng i dùng (User) phát tri n th c hi n m t h th ng thông tin Nh ng ho t ng c th c hi n nhi u giai #an khác Nhà phân tích (Analyst): ng i nghiên c u yêu c u c a khách hàng/ng i dùng nh ngh+a m t ph m vi toán, nh n d ng nhu c u c a m t t ch c, xác nh xem nhân l c, ph ng pháp cơng ngh máy tính có th c i thi n m t cách t t nh!t công tác c a t ch c Nhà thi!t k! (Designer): thi t k h th ng theo h ng c!u trúc c a database, screens, forms reports – quy t nh yêu c u v ph n c ng ph n m m cho h th ng c n c phát tri n Chuyên gia l0nh v*c (Domain Experts): nh ng ng i hi u th c ch!t v!n t!t c nh ng s ph c t p c a h th ng c n tin h#c hố H# khơng nh!t thi t ph i nhà l p trình, nh ng h# có th giúp nhà l p trình hi u yêu c u t i v i h th ng c n phát tri n Quá trình phát tri n ph n m m s& có r!t nhi u thu n l i n u i ng' làm ph n m m có c s tr giúp c a h# ch L p trình viên (Programmer): nh ng ng i d a phân tích thi t k ng trình (coding) cho h th ng b%ng ngơn ng l p trình ã c th ng nh!t Ng /i dùng (User): it cho rõ h n, xin l!y ví d v m t v!n Ng i bình th sau: ng ph c v c a h th ng c n vi t c phát tri n n gi n sau: ng nhìn m t chi c xe tơ th ng s& có m t b c tranh t bên ngồi nh V,n Hình 1.1: Nhìn v!n tơ c a ng Chun gia l+nh v c s& giúp nhà phân tích "trình bày l i" v!n Hình 1.2: Nhìn v!n i bình th ng nh sau: ô tô c a chuyên gia phân tích Chính s tr giúp c a chun gia l+nh v c có th óng vai trị r!t quan tr#ng nên nh ng giai o n u c a trình phát tri n ph n m m, k t qu phân tích nên c th hi n cho d hi u i v i chuyên gia l+nh v c ây c'ng môt r!t nhi u lý n cho ph ng pháp h ng i c nhi u ng i h ng ng t ng 1.2.3 Các giai o n c a Chu Trình Phát Tri n Ph n M m Chu trình c a m t ph n m m có th c chia thành giai o n nh sau: Nghiên c u s b (Preliminary Investigation hay g#i Feasibility Study) Phân tích yêu c u (Analysis) Thi t k h th ng (Design of the System) Xây d ng ph n m m (Software Construction) Th nghi m h th ng (System Testing) Th c hi n, tri n khai (System Implementation) B o trì, nâng c!p (System Maintenance) a) Nghiên c u s b': Câu h i quan tr#ng nh!t phát tri n m t h th ng hồn tồn khơng ph i câu h i mang tính ph ng pháp lu n Mà c'ng ch)ng ph i câu h i v k, thu t Nó m t câu h i d ng nh có v/ n gi n, nh ng th t c bi t khó tr l i: “ ây có úng m t h th ng th c hi n khơng?” bu n câu h i th c t th ng ch)ng h c t l i không c tr l i M c dù vi c l m l n v ph ng pháp hay quy t nh sai l m v k, thu t c'ng có th d n t i th!t b i, nh ng th ng d án có th c c u vãn n u có y tài nguyên s c g"ng quên c a nhân viên tài gi i Nh ng s& ch)ng m t m t i u c u vãn cho m t h th ng ph n m m hoàn toàn ch)ng c c n t i ho c c g"ng t ng hóa m t quy trình l m l c Tr c b"t tay vào m t d án, b n ph i có m t ý t ng cho Ý t ng i song song v i vi c n"m b"t yêu c u xu!t hi n giai o n kh i u Nó hồn t!t m t phát bi u: "H th ng mà mong mu n s& làm c nh ng vi c nh sau " Trong su t giai o n này, t o nên m t b c tranh v ý t ng ó, r!t nhi u gi thuy t s& c công nh n hay lo i b Các ho t ng th i gian th ng bao g m thu th p ý t ng, nh n bi t r i ro, nh n bi t giao di n bên ngoài, nh n bi t các ch c n(ng mà h th ng c n cung c!p, có th t o m t vài nguyên m u dùng “minh ch ng khái ni m c a h th ng” Ý t ng có th n t nhi u ngu n khác nhau: khách hàng, chuyên gia l+nh v c, nhà phát tri n khác, chuyên gia v k, ngh , b n nghiên c u tính kh thi c'ng nh vi c xem xét h th ng khác ang t n t i M t khía c nh c n nh"c t i code vi t th i k0 th ng s& b "b i”, b i chúng c vi t nh%m m c ích th$m tra hay tr giúp gi c vi t theo k t qu phân tích thi t k th!u áo thuy t khác nhau, ch ch a ph i th code Trong giai #an nghiên c u s b , nhóm phát tri n h th ng c n xem xét yêu c u c a doanh nghi p (c n dùng h th ng), nh ng ngu n tài nguyên có th s d ng, công ngh c'ng nh c ng ng ng i dùng ý t ng c a h# i v i h th ng m i Có th th c hi n th o lu n, nghiên c u, xem xét khía c nh th ng m i, phân tích kh n(ng l i-l., phân tích tr ng h p s d ng t o nguyên m u xây d ng nên m t khái ni m cho h th ng ích v i m c ích, quy n u tiên ph m vi c a Th ng giai o n ng s d ng tài nguyên i ta c'ng ti n hành t o m t phiên b n thơ c a l ch trình k ho ch M t giai o n nghiên c u s b thích s& l p nên t p h p yêu c u (dù m c khái quát cao) i v i m t h th ng kh thi c mong mu n, k c v ph ng di n k, thu t l n xã h i M t giai o n nghiên c u s b không c th c hi n tho s& d n t i h th ng không c mong mu n, "t ti n, b!t kh thi c nh ngh+a l m l c – nh ng h th ng th ng ch)ng c hoàn t!t hay s d ng K t qu c a giai o n nghiên c u s b Báo Cáo K t Qu Nghiên C u Tính Kh Thi Khi h th ng t ng lai c ch!p nh n d a b n báo cáo c'ng lúc giai o n Phân tích b"t u b) Phân tích yêu c u: Sau ã xem xét v tính kh thi c a h th ng c'ng nh t o l p m t b c tranh s b c a d án, b c sang giai o n th ng c coi quan tr#ng nh!t cơng vi c l p trình: hi u h th ng c n xây d ng Ng i th c hi n công vi c nhà phân tích Q trình phân tích nhìn chung h qu c a vi c tr l i câu h i "H th ng c n ph i làm gì?" Q trình phân tích bao g m vi c nghiên c u chi ti t h th ng doanh nghi p hi n th i, tìm cho nguyên lý ho t ng c a nh ng v trí có th c nâng cao, c i thi n Bên c nh ó vi c nghiên c u xem xét ch c n(ng mà h th ng c n cung c!p m i quan h c a chúng, bên c'ng nh v i phía ngồi h th ng Trong tồn b giai o n này, nhà phân tích ng i dùng c n c ng tác m t thi t v i xác nh yêu c u i v i h th ng, t c tính n(ng m i c n ph i c a vào h th ng 10 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 hồ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, ngồ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 ngoà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 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 qn 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 q 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 ã luôn 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 ln ln 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 luôn 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 Ngoà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 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 toà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 ã luôn t n t i ây s& mãi ti p 122 ... UML phân tích thi!t k! h th ng 19 2.3 UML giai o"n phát tri n h th ng 20 2.4 Ph n câu h i 21 CH NG 3: KHÁI QUÁT V UML 22 3.1 UML. .. c n xây d ng Ng i th c hi n công vi c nhà phân tích Q trình phân tích nhìn chung h qu c a vi c tr l i câu h i "H th ng c n ph i làm gì?" Q trình phân tích bao g m vi c nghiên c u chi ti t h th... giai o n này, nhà phân tích ng i dùng c n c ng tác m t thi t v i xác nh yêu c u i v i h th ng, t c tính n(ng m i c n ph i c a vào h th ng 10 Nh ng m c tiêu c th c a giai o n phân tích là: Xác nh

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

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan