CH NG 3 : KHÁI QUÁ TV UML
3.9. Công c( (Tool)
S d ng m t ngơn ng mơ hình hóa ph c t p và r ng m nh UML c n thi t s tr giúp c a công c . M c dù phác th o u tiên c a m t mơ hình có th c th c hi n b%ng b ng tr"ng cùng gi!y và m c, nh ng cơng vi c b o trì, ng b hóa và m b o s nh!t quán trong m t lo t các bi u khác nhau th ng l i không th tr thành kh thi n u khơng có cơng c .
Th tr ng cơng c mơ hình hóa ã d ng trong m c s kh i su t m t th i gian dài k t khi xu!t hi n ý t ng u tiên v các ch ng trình tr giúp cho vi c t o ch ng trình. R!t nhi u công c trong th c t ch* thông minh h n các ch ng trình v& m t chút, s d ng m t vài quy ch ki m tra tính nh!t quán ho c m t vài ki n th c v ph ng pháp và ngơn ng mơ hình hóa. M c dù ã có m t vài b c ti n nh!t nh và nhi u công c hôm nay ã t i g n sáng ki n kh i th y kia nhi u h n (Rational Rose), nh ng th tr ng v n cịn khơng ít cơng c ch a c g#t gi'a, v n còn ch a l.i ho c nh ng nét k0 qu c, k c nh ng v!n n gi n nh copy và dán. Nh ng công c này còn h n ch ph ng di n r%ng t!t c b#n chúng u có ngơn ng mơ hình hóa riêng, hay ít nh!t thì c'ng có nh ng nh ngh+a riêng c a chúng v ngôn ng này.
Cùng v i s ra i c a ngôn ng UML, các nhà cung c!p cơng c mơ hình hóa gi ây có th dành nhi u th i gian h n cho vi c nâng c!p công c , b i h# không c n ph i d n tâm d n s c cho vi c nh ngh+a các ph ng pháp m i c'ng nh các ngôn ng m i.
M t cơng c mơ hình hóa h ên i c n ph i cung c!p các ch c n(ng sau:
V bi u : c n ph i t o i u ki n d dàng v& ra các bi u trong ngơn ng mơ hình hóa. Cơng c c n ph i kh n(ng thông minh hi u m c ích c a các bi u và bi t c nh ng ng ngh+a c'ng nh các quy t"c n gi n, nó có th c nh báo ho c ng(n ch n vi c s d ng khơng thích h p các ph n t mơ hình.
Ho t ng nh m t nhà kho (Repository): công c c n ph i h. tr m t nhà kho trung tâm
t!t c các thơng tin v mơ hình c l u tr trong cùng m t ch.. N u ví d tên c a m t l p b thay i trong m t bi u , thì s thay i này c n ph i x y ra trong t!t c các bi u khác có s d ng l p này.
H tr nh h ng (Navigation): công c c n ph i t o i u ki n d dàng cho ng i s d ng
nh h ng và chuy n d ch trong mơ hình theo dõi m t ph n t t bi u này sang bi u khác, ho c m r ng l i miêu t c a m t ph n t .
H tr nhi u ng i s d ng (multiuser support): Công c c n h. tr cho nhi u ng i s
d ng, và t o i u ki n cho h# cùng làm vi c v i m t mơ hình mà khơng ng(n ch n ho c qu!y phá l n nhau.
T ng t o code (code generate): m t công c cao c!p c n ph i có kh n(ng t o ra code,
n i t!t c các thơng tin trong mơ hình c chuy n t i thành các khung code (code skeletons), c s d ng làm n n t ng cho giai o n xây d ng ch ng trình.
Tái t o mơ hình (Reserve engineer): M t cơng c cao c!p c n ph i có kh n(ng #c nh ng thành ph n code ang t n t i và t ó s n xu!t ra mơ hình. T ó suy ra, m t mơ hình có th c làm t nh ng dòng code ã t n t i; ho c m t nhà phát tri n có th d dàng chuy n i chuy n v gi a cơng vi c mơ hình hóa và cơng vi c l p trình.
Tích h p v i các cơng c khác: m t công c c n ph i có kh n(ng tích h p v i nh ng cơng
d ch (compiler), ch ng trình tìm l.i (debugger) c'ng nh các cơng c c a doanh nghi p khác nh công c qu n tr c!u hình, h th ng theo dõi các phiên b n.
Bao qt mơ hình t t c các m c tr u t ng hóa khác nhau: cơng c c n ph i d
chuy n t i t l i miêu t c!p tr u t ng hóa cao nh!t c a h th ng (t c là d ng m t l ng các gói khác nhau) i xu ng cho t i c!p c a nh ng dòng code th t s . Sau ó, truy xu!t nh ng dòng l nh code cho m t th t c c th nào ó trong m t l p nào ó, b n có th ch* c n nh!p chu t vào tên c a th t c ó trong m t bi u .
Trao i mơ hình: M t mơ hình hay m t bi u c a m t mơ hình nào ó c n ph i có kh
n(ng c xu!t ra t m t công c này r i nh p vào m t công c khác, gi ng nh nh ng dòng l nh code c s n sinh trong m t cơng c này có th c s d ng trong m t công c khác. Nguyên t"c trao i ó c n ph i c áp d ng cho các mơ hình trong m t ngơn ng mơ hình hóa c nh ngh+a chính xác.