Bi u$ (diagram)

Một phần của tài liệu Giáo án - Bài giảng học tập công nghệ thông tin: Phân tích thiết kế hệ thống ngôn ngữ UML (Trang 26)

CH NG 3 : KHÁI QUÁ TV UML

3.4.Bi u$ (diagram)

Bi u là các hình v& bao g m các ký hi u ph n t mơ hình hóa c s"p x p minh h#a m t thành ph n c th hay m t khía c nh c th c a h th ng. M t mơ hình h th ng th ng có nhi u lo i bi u , m.i lo i có nhi u bi u khác nhau. M t bi u là m t thành ph n c a m t h ng nhìn c th ; và khi c v& ra, nó th ng th ng c'ng c x p vào m t h ng nhìn. M t khác, m t s lo i bi u có th là thành ph n c a nhi u h ng nhìn khác nhau, tùy thu c vào n i dung c a bi u .

Ph n sau miêu t các khái ni m c(n b n n%m %ng sau m.i lo i bi u . T!t c các chi ti t v bi u ,

ng c nh c a chúng, ý ngh+a chính xác c a chúng và s t ng tác gi a chúng v i nhau c miêu t chi ti t trong các ch ng sau (mơ hình i t ng – mơ hình ng). Các bi u l!y làm ví d ây c l!y ra t nhi u lo i h th ng khác nhau ch* ra nét phong phú và kh n(ng áp d ng r ng kh"p c a ULM.

3.4.1. Bi u Use case (Use Case Diagram)

M t bi u Use case ch* ra m t s l ng các tác nhân ngo i c nh và m i liên k t c a chúng i v i Use case mà h th ng cung c!p (nhìn hình 3.2). M t Use case là m t l i miêu t c a m t ch c n(ng mà h th ng cung c!p. L i miêu t Use case th ng là m t v(n b n tài li u, nh ng kèm theo ó c'ng có th là m t bi u ho t ng. Các Use case c miêu t duy nh!t theo h ng nhìn t ngồi vào c a các tác nhân (hành vi c a h th ng theo nh s mong i c a ng i s d ng), không miêu t ch c n(ng c cung c!p s& ho t ng n i b bên trong h th ng ra sao. Các Use case nh ngh+a các yêu c u v m t ch c n(ng i v i h th ng. Các bi u Use case s& c miêu t chi ti t h n trong ch ng 4 (Use case).

Hình 3.2- Bi u use case c a m t công ty b o hi m

3.4.2. Bi u l p (Class Diagram)

M t bi u l p ch* ra c!u trúc t+nh c a các l p trong h th ng (nhìn hình 3.3). Các l p là i di n cho các “v t” c x lý trong h th ng. Các l p có th quan h v i nhau trong nhi u d ng th c: liên k t (associated - c n i k t v i nhau), ph thu c (dependent - m t l p này ph thu c vào l p khác), chuyên bi t hóa (specialized - m t l p này là m t k t qu chuyên bi t hóa c a l p khác), hay óng gói ( packaged - h p v i nhau thành m t n v ). T!t c các m i quan h ó u c th hi n trong bi u l p, i kèm v i c!u trúc bên trong c a các l p theo khái ni m thu c tính (attribute) và th t c (operation). Bi u c coi là bi u t+nh theo ph ng di n c!u trúc c miêu t ây có hi u l c t i b!t k0 th i i m nào trong tồn b vịng i h th ng.

M t h th ng th ng s& có m t lo t các bi u l p – ch)ng ph i bao gi t!t c các bi u l p này c'ng c nh p vào m t bi u l p t ng th duy nh!t – và m t l p có th tham gia vào nhi u bi u l p. Bi u l p c miêu t chi ti t trong ch ng sau.

3.4.3. Bi u i t ng (Object Diagram)

Bi u i t ng không quan tr#ng b%ng bi u l p, chúng có th c s d ng ví d hóa m t bi u l p ph c t p, ch* ra v i nh ng th c th c th và nh ng m i quan h nh th thì b c tranh tồn c nh s& ra sao. M t bi u i t ng th ng th ng c s d ng làm m t thành ph n c a m t bi u

c ng tác (collaboration), ch* ra l i ng x ng gi a m t lo t các i t ng.

Hình 3.4 - Bi u l p và bi u i t ng th hi n c a l p

3.4.4. Bi u tr ng thái (State Diagram)

M t bi u tr ng thái th ng là m t s b sung cho l i miêu t m t l p. Nó ch* ra t!t c các tr ng thái mà i t ng c a l p này có th có, và nh ng s ki n (event) nào s& gây ra s thay i tr ng thái (hình 3.5). M t s ki n có th x y ra khi m t i t ng t g i thông i p n cho nó - ví d nh thông báo r%ng m t kho ng th i gian c xác nh ã qua i – hay là m t s i u ki n nào ó ã c th a mãn. M t s thay i tr ng thái c g#i là m t s chuy n i tr ng thái (State Transition). M t chuy n i tr ng thái c'ng có th có m t hành ng liên quan, xác nh i u gì ph i c th c hi n khi s chuy n i tr ng thái này di n ra.

Bi u tr ng thái không c v& cho t!t c các l p, mà ch* riêng cho nh ng l p có m t s l ng các tr ng thái c nh ngh+a rõ ràng và hành vi c a l p b nh h ng và thay i qua các tr ng thái khác nhau. Bi u tr ng thái c'ng có th c v& cho h th ng t ng th . Bi u tr ng thái c miêu t chi ti t h n trong ch ng sau (Mơ hình ng).

3.4.5. Bi u trình t (Sequence Diagram)

M t bi u trình t ch* ra m t c ng tác ng gi a m t lo t các i t ng (xem hình 3.6). Khía c nh quan tr#ng c a bi u này là ch* ra trình t các thơng i p (message) c g i gi a các i t ng. Nó c'ng ch* ra trình t t ng tác gi a các i t ng, i u s& x y ra t i m t th i i m c th nào ó trong trình t th c thi c a h th ng. Các bi u trình t ch a m t lo t các i t ng c bi u di n b%ng các ng th)ng ng. Tr c th i gian có h ng t trên xu ng d i trong bi u , và bi u ch* ra s trao i thông i p gi a các i t ng khi th i gian trôi qua. Các thông i p c bi u di n b%ng các ng g ch ngang g"n li n v i m'i tên (bi u th thông i p) n i li n gi a nh ng ng th)ng ng th hi n i t ng. Tr c th i gian cùng nh ng l i nh n xét khác th ng s& c a vào ph n l c a bi u

.

Hình 3.6 - M t bi u trình t cho Print Server

3.4.6. Bi u c ng tác (Collaboration Diagram)

M t bi u c ng tác ch* ra m t s c ng tác ng, c'ng gi ng nh m t bi u trình t . Th ng ng i ta s& ch#n ho c dùng bi u trình t ho c dùng bi u c ng tác. Bên c nh vi c th hi n s trao i thông i p ( c g#i là t ng tác), bi u c ng tác ch* ra các i t ng và quan h c a chúng (nhi u khi c g#i là ng c nh). Vi c nên s d ng bi u trình t hay bi u c ng tác th ng s& c quy t nh theo nguyên t"c chung sau: N u th i gian hay trình t là y u t quan tr#ng nh!t c n ph i nh!n m nh thì hãy ch#n bi u trình t ; n u ng c nh là y u t quan tr#ng h n, hãy ch#n bi u c ng tác. Trình t t ng tác gi a các i t ng c th hi n trong c hai lo i bi u này.

Bi u c ng tác c v& theo d ng m t bi u i t ng, n i m t lo t các i t ng c ch* ra cùng v i m i quan h gi a chúng v i nhau (s d ng nh ng ký hi u nh trong bi u l p/ bi u i t ng). Các m'i tên c v& gi a các i t ng ch* ra dòng ch y thông i p gi a các i t ng. Các thông i p th ng c ính kèm theo các nhãn (label), m t trong nh ng ch c n(ng c a nhãn là ch* ra th t mà các thông i p c g i i. Nó c'ng có th ch* ra các i u ki n, ch* ra nh ng giá tr c tr v , v.v... Khi ã làm quen v i cách vi t nhãn, m t nhà phát tri n có th #c bi u c ng tác và tuân th theo dòng th c thi c'ng nh s trao i thông i p. M t bi u c ng tác c'ng có th ch a c các i t ng tích c c (active objects), ho t ng song song v i các i t ng tích c c khác (hình 3.7). Bi u c ng tác c miêu t chi ti t trong ch ng sau.

Hình 3.7 - M t bi u công tác c a m t printer server

3.4.7. Bi u ho t ng (Activity Diagram)

M t bi u ho t ng ch* ra m t trình t l n l t c a các ho t ng (activity) (hình 3.8). Bi u ho t ng th ng c s d ng miêu t các ho t ng c th c hi n trong m t th t c, m c dù nó c'ng có th c s d ng miêu t các dòng ch y ho t ng khác, ví d nh trong m t Use case hay trong m t trình t t ng tác. Bi u ho t ng bao g m các tr ng thái hành ng, ch a c t c a m t ho t ng c n ph i c th c hi n (m t hành ng - action). M t tr ng thái hành ng s& qua i khi hành ng c th c hi n xong (khác v i bi u tr ng thái: m t tr ng thái ch* chuy n sang tr ng thái khác sau khi ã x y ra m t s ki n rõ ràng !). Dòng i u khi n ây ch y gi a các tr ng thái hành ng liên k t v i nhau. Bi u cịn có th ch* ra các quy t nh, các i u ki n, c'ng nh ph n th c thi song song c a các tr ng thái hành ng. Bi u ngồi ra cịn có th ch a các lo i c t cho các thông i p c g i i ho c c nh n v , trong t cách là thành ph n c a hành ng c th c hi n.

Hình 3.8 - M t bi u ho t ng cho m t printer server

3.4.8. Bi u thành ph n (Component Diagram)

M t bi u thành ph n ch* ra c!u trúc v t lý c a các dòng l nh (code) theo khái ni m thành ph n code. M t thành ph n code có th là m t t p tin source code, m t thành ph n nh phân (binary) hay m t thành ph n th c thi c (executable). M t thành ph n ch a các thông tin v các l p logic ho c các l p

mà nó thi hành, nh th có ngh+a là nó t o ra m t ánh x t h ng nhìn logic vào h ng nhìn thành ph n. Bi u thành ph n c'ng ch* ra nh ng s ph thu c gi a các thành ph n v i nhau, tr giúp cho cơng vi c phân tích hi u ng mà m t thành ph n c thay i s& gây ra i v i các thành ph n khác. Thành ph n c'ng có th c miêu t v i b!t k0 lo i giao di n nào mà chúng b c l , ví d nh giao di n OLE/COM; và chúng có th c nhóm góp l i v i nhau thành t ng gói (package). Bi u thành ph n c s d ng trong cơng vi c l p trình c th (xem hình 3.9).

Hình 3.9 - M t bi u thành ph n ch* ra s ph thu c gi a các thành ph n mã

3.4.9. Bi u tri n khai (Deployment Diagram)

Bi u tri n khai ch* ra ki n trúc v t lý c a ph n c ng c'ng nh ph n m m trong h th ng. B n có th ch* ra t ng máy tính c th và t ng trang thi t b c th (node) i kèm s n i k t gi a chúng v i nhau, b n c'ng có th ch* ra lo i c a các m i n i k t ó. Bên trong các nút m ng (node), các thành ph n th c thi c c'ng nh các i t ng s& c xác nh v trí ch* ra nh ng ph n m m nào s& c th c thi t i nh ng nút m ng nào. B n c'ng có th ch* ra s ph thu c gi a các thành ph n.

Bi u tri n khai ch* ra h ng nhìn tri n khai, miêu t ki n trúc v t lý th t s c a h th ng. ây là m t h ng nhìn r!t xa l i miêu t duy ch c n(ng c a h ng nhìn Use case. M c dù v y, trong m t mơ hình t t, ng i ta có th ch* t!t c nh ng con ng d n t m t nút m ng trong m t ki n trúc v t lý cho t i nh ng thành ph n c a nó, cho t i l p mà nó th c thi, cho t i nh ng t ng tác mà các i t ng c a l p này tham gia r i cu i cùng, ti n t i m t Use case. R!t nhi u h ng nhìn khác nhau c a h th ng

Hình 3.10 - M t bi u tri n khai ch* ra ki n trúc v t lý c a h th ng

3.5. Ph n t% mơ hình (model element)

Các khái ni m c s d ng trong các bi u c g#i là các ph n t mơ hình (model element). M t ph n t mơ hình c nh ngh+a v i ng ngh+a (semantic), ó là m t nh ngh+a v b n ch!t ph n t hay là m t xác nh ý ngh+a chính xác xem nó s& th hi n i u gì trong nh ng l i kh)ng nh rõ ràng. M.i ph n t mơ hình cịn có m t s miêu t tr c quan, m t ký hi u hình h#c c s d ng miêu t ph n t này trong bi u . M t ph n t có th t n t i trong nhi u d ng bi u khác nhau, nh ng c'ng có nh ng nguyên t"c xác nh lo i ph n t nào có th c ch* ra trong lo i bi u nào. M t vài ví d cho ph n t vơ hình là l p, i t ng, tr ng thái, nút m ng, gói, thành ph n (hình 3.11).

Hình 3.11- Các thành ph n mơ hình th ng dùng

Hình 3.12 ch* ra m t vài ví d c a m i quan h , ây c'ng là m t d ng ph n t mơ hình, chúng c s d ng n i các ph n t mơ hình khác v i nhau. M t vài lo i quan h áng chú ý:

• N i k t (Association) : n i các ph n t và các th c th n i (link).

• Khái qt hóa (Generalization): cịn c g#i là tính th a k , có ý ngh+a r%ng m t ph n t này có th là m t s chuyên bi t hóa c a m t ph n t khác.

• S ph thu c (Dependency): ch* ra r%ng m t ph n t này ph thu c trong m t ph ng th c nào ó vào m t ph n t khác.

• K t t p (Aggregation): M t d ng c a n i k t, trong ó m t ph n t này ch a các ph n t khác.

Ngồi ra cịn có các ph n t mơ hình khác nh thơng i p (Message), hành ng (action) và khuôn m u (stereotype). T!t c các ph n t mơ hình, ý ngh+a c a chúng c'ng nh nh ng ng d ng u c gi i thích k, l 4ng h n trong các ch ng sau.

Hình 3.12 – các ví d v vài lo i quan h

3.6. C ch! chung (General Mechanism)

UML th hi n m t s các c ch chung trong t!t c các bi u nh%m m c ích cung c!p thêm các thơng tin b sung, th ng ây là nh ng thông tin không th c th hi n qua các ch c n(ng và kh n(ng c b n c a các ph n t mơ hình.

3.6.1. Trang trí (Adornment)

Các s trang trí tr c quan có th c s d ng kèm thêm vào các ph n t mơ hình trong bi u . ng tác trang trí b sung thêm ng ngh+a cho ph n t . M t ví d là k, thu t c s d ng phân bi t m t lo i th c th (l p) và m t th c th . Khi th hi n m t lo i, tên ph n t s& c in m. Khi c'ng chính ph n t ó th hi n ch* m t th c th c a lo i này, tên ph n t s& c g ch d i và có th c coi là c tên c a th c th l n tên c a lo i ó. M t hình ch nh t th hi n l p v i tên c in m s& th hi n m t l p và tên c g ch d i s& th hi n m t i t ng, ây là m t ví d tiêu bi u c a adornment. C'ng nguyên t"c ó c áp d ng cho các nút m ng, khi ký hi u nút c in m là th hi n m t lo i nút, ví d nh máy in (Printer), khi ký hi u c g ch d i là th hi n m t th c th c a l p nút m ng này ví d John’s HP 5MP-printer. Các ki u trang trí khác là các l i c t v s l ng trong quan h (multiplicity), n i s l ng là m t s hay m t kho ng s ch* ra bao nhiêu th c th c a các lo i th c th

Một phần của tài liệu Giáo án - Bài giảng học tập công nghệ thông tin: Phân tích thiết kế hệ thống ngôn ngữ UML (Trang 26)