You are on page 1of 11

HNG DN THC HNH UML

XY DNG H THNG QUN L TH VIN BNG CNG C RATIONAL ROSE


Gii thiu
Mc tiu ca bi thc hnh l cho SV thc tp phng php phn tch v thit k bng ngn ng UML thng qua mt cng c CASE l Rational Rose. Trc ht SV c lm quen vi mi trng Rational Rose. Sau s ng dng cng c ny xy dng phn mm qun l h thng th vin. Ton b bi thc hnh c chia lm 4 bui. Bi hng dn s gip sinh vin thc hin cc thao tc c bn thng qua mt s lc mu. Tuy nhin sinh vin cn phi t mnh thc hin cc lc khc c th hon tt vic phn tch/thit k cho h thng qun l th vin.

c t s lc h thng qun l th vin


Trng i hc ng Nam cn xy dng mt phn mm qun l h thng th vin ca trng. Th vin ny phc v nhiu i tng khc nhau nh gio vin, sinh vin trong trng v c sinh vin hoc cn b ca cc c quan ban ngnh c nhu cu. Ngi mn c th mn sch, tp ch, a CD, bng video thuc quyn qun l ca th vin. Ngoi cc chc nng c bn ca h thng th vin nh mn, tr, gia hn cc chc nng khc nh h tr tm kim sch, ng k mn tip, gi ta sch, yu cu sch cng c thit lp trong h thng ny. Vic qun l ti chnh nh tin mn sch, qu hn, mua thit b cn c chuyn qua phng ti v. Thng tin v sch, tp ch, a CD v bng video hin c trong th vin cng nh thng tin v cc c gi c lu tr trong c s d liu t my trung tm ca th vin. H thng c xy dng theo dng Web cho ngi s dng c tng tc c t bt k mt my tnh no c ni mng vi my ch ca th vin.

Hng dn thc hnh UML trn Rational Rose Trang 1

Bui th nht
Mc tiu
Lm quen vi mi trng phn tch/thit k ca Rational Rose Nhn din tc nhn (actor) v cc trng hp s dng (use-case) Xy dng biu s dng (use-case diagram)

Trnh t thc hin


Lm quen vi mi trng
Bt u s dng Rational Rose Chn mc Rational Rose 2000 Enterprise Edition trong nhm phn mm Rational Rose 2000 Enterprise Edition. i hp thoi Create New Model xut hin ri nhn nt Cancel. Mi trng lm vic ca Rational Rose bao gm 3 ca s chnh. Ca s bn tri trn th hin cc view khc nhau ngi s dng c th thao tc trn cc m hnh khc nhau: Use-case View, Logical View, Component View v Deployment View. Mi view c trnh by di dng mt cy (click vo du + s m cy ra, click vo du - s ng cy li). Ca s bn tri di th hin documenation ca phn t ang gi focus (c th l usecase, actor, class). Ca s cn li nm bn phi th hin cc lu . Khi double-click vo icon ca mi biu trong cc view, ca s bn phi s hin th lu . Mt s chc nng quan trng cn ch trong qu trnh thc hin: 1. 2. lu m hnh ang to lp vo mt file chn menu File | Save. Sau c th m n ra bng menu File | Open. Thay i font, mu vin v mu t cho cc phn t mi c to ra S dng menu Tools | Options Dng General Tab Sa font v cc mu sc cn thit Thay i font, mu vin v mu t cho cc phn t trong mt biu Nhn Ctrl+A hoc menu Edit | Select All chn tt c cc phn t c trong biu S dng cc menu Format | Font Size, Format | Line Color, Format | Fill Color, Format | Font Thay i ngn ng m hnh v ngn ng lp trnh mc nh. Cc lp v package to ra s c gn ngn ng lp trnh mc nh. S dng menu Tools | Options Dng Notation Tab Kim tra Default notation l Unified v Default language l Analysis, C++, Java Hin th ch s trong biu tun t (sequence diagram) S dng menu Tools | Options Dng tab Diagram Chn Sequence numbering Hin th tt c thuc tnh v tc v S dng menu Tools | Options Dng tab Diagram Chn Show all Attributes v Show all Operations Thay i ch hin th stereotype cho cc phn t ang gi focus bng cc chc nng con ca menu Format | Stereotype Display Tt Focus of Control (sequence diagram) S dng menu Tools | Options Dng tab Diagram Tt focus of control

3.

4.

5.

6.

7. 8.

Hng dn thc hnh UML trn Rational Rose Trang 2

Nhn din tc nhn v cc trng hp s dng

Phng php: Trc ht nhn din cc actor. Trong s cc danh t c dng miu t, chn ra cc t thch

hp th hin vai tr ca cc tc nhn bn ngoi to ra cc kch thch v pha phn mm. Qua m t ngn gn trn, chng ta nhn ra cc tc nhn sau s tc ng n h thng bao gm: Sinh vin (Student), cn b gio vin (Staff), khch (Guest), v phng ti v (Finance). Tuy khng c miu t trc tip nhng mt tc nhn ng vai tr quan trng trong h thng ny l qun th (Librarian). Tip theo, chng ta cn nhn din cc tnh cht chung tng qut ho cc tc nhn nu c th. Cc tc nhn Student, Staff, Guest u c th s dng chc nng mn, tr hay t ch trc. Nh vy tc nhn ngi mn (Borrower) c to v l lp cha ca Student, Staff v Guest. Librarian l mt trng hp c bit ca Staff. Nhn din cc use-case t cc cm ng t. Chng ta xc nh use-case bng cch xem xt s tng tc ca tng tc nhn vi h thng v c gng m t chng thnh mt chui cc s kin c kt thc. Qua miu t ngn gn trn, chng ta thy, tt c ngi mn u c th yu cu nhng chc nng: t ch trc, xa t ch, tm kim cc item. Qun th ph trch vic cho mn, tr, gia hn, qun l cc item c trong th vin (thm vo, loi b, cp nhp tnh trng) v qun l cc c gi.

Xy dng biu use-case


Phng php: Da vo chiu tc ng gia cc actor v/hoc use-case thit lp cc mi lin kt
(association). Cc trng hp tng qut ha v c th ha c th hin bng mi quan h generalization. ng thi quan h generalization cng c m rng thnh quan h use v extend bng cch s dng stereotype. Trong phn nhn din cc trng hp s dng ta xc nh mt s quan h gia tc nhn v trng hp s dng. Tuy vy ta cn phi cn nhc trng hp sau y: vic gi ta sch c thc hin trong qu trnh tm kim ta sch. V vy, tuy cng tng tc vi ngi mn nhng s l mt trng hp m rng trong khi tm kim sch. Nh vy ring mi quan h gia makes reservation v searchs l association vi stereotype l <<extend>>. Tng t quan h gia borrows v removes reservation l association vi stereotype l <<include>>.

Thc hin:
1. Click vo du + ca use-case view m n sau double-click vo Main 2. Click vo hnh ngi trn thanh cng c v sau click vo biu 3. Trong lc hnh ngi cn c chn, nhp tn Student 4. Lp li bc 2-3 to ra cc actor Staff, Guest, Borrower, Librarian, Finance 5. Click vo icon (generalization) v a chut vo biu . 6. Click vo k hiu ca Student ri ko n Borrower. (Tip: gi phm shift trong khi click vo biu s trnh c vic phi chn li icon generalization) 7. Lm tng t bc 5-6 xc nh quan h gia Staff, Guest vi Borrower; gia Librarian vi Staff. 8. Click vo icon ng thng lin c mi tn ( ) trn thanh cng c v a chut vo biu . 9. Click vo k hiu ca Borrower v ko n k hiu ca Librarian. 10. Click vo icon hnh oval trn thanh cng c ri click vo biu 11. Trong khi use-case vn c chn nhp tn borrows 12. Thc hin bc 10-11 to ra cc use-case khc: returns, renews, makes reservation, removes reservation, searches, manages item v manages borrower. 13. Click vo icon ng thng lin c mi tn ( ) trn thanh cng c 14. Click vo Librarian gi phm chut ko n borrows 15. Tip tc thc hin hai bc trn to cc mi lin kt gia o Librarian n returns o Librarian n renews o Borrower n searches o Borrower n makes reservation o Borrower n removes reservation o returns n Finance Hng dn thc hnh UML trn Rational Rose Trang 3 o Librarian n manages borrower o Librarian n manages item o manages item n Finace o searches n makes reservation 16. Mt s mi lin kt l hai chiu. Chng hn gia Librarian v renews. Right-click vo mi tn biu din lin kt. Chn menu Navigable. 17. Click vo icon (association) v a chut vo biu . 18. Click vo k hiu ca use-case borrows ri ko n use-case removes reservation. Double-click vo mi tn ri chn stereotype l <<include>>.

19. Click vo icon (association) v a chut vo biu . 20. Click vo k hiu ca use-case searches ri ko n use-case makes reservation. Double-click vo mi tn ri chn stereotype l <<extend>>. 21. C th click vo mi k hiu ca actor hay use-case v ko sp xp li biu . Hoc c th s dng menu Format | Layout Diagram cho chng trnh t ng sp xp.

Ch : Nn nhp phn documentation miu t tng use-case trong ca s bn phi di


Mun xo mt phn t khi m hnh th chn menu Edit | Delete from Model hoc dng chut right-click ln phn t cn xo trong view tng ng ri chn menu Delete. Cng c th dng phm tt Ctrl+ D xo mt phn t khi ang focus n; ch nhn phm DEL hoc menu Edit | Delete ch xo phn t ra khi lc ang thao tc m thi.

Bui th hai
Mc tiu
Nhn din cc lp/i tng v phn loi chng theo stereotype Thit lp cc package Xy dng cc biu lp (class diagram)

Trnh t thc hin


Nhn din cc i tng/ lp v cc package
Phng php: Da vo c t ban u ca phn mm trch ra cc danh t th hin cc i tng/lp. Nhn din cc i tng thc th trc. Sau l cc i tng giao din v iu khin. Ch tm kim cc c dim chung thit lp cc i tng c s.
Trong h thng ny d dng nhn thy nhng i tng sch, tp ch, bng video. Nh vy chng ta c 3 lp: Book, Magazine, Video. ng thi chng ta cng to ra mt lp c s ca 3 lp ny t tn l Item. C 4 lp ny u c stereotype l <<entity>>. Cc thuc tnh cng c th c nhn din thng qua cc danh t lin quan n i tng ang xt. Mt s thuc tnh chung c gn cho lp c s Item nh: tn (name), m s (code). Cc thuc tnh c th ca sch nh: Tc gi (author), ISBN, s trang c gn cho lp Book. Lp Magazine c thuc tnh ngy pht hnh (issue), loi tp ch (type). Ngi th th phi qun l cc c gi. Anh ta phi nm c m s, tn, a ch, ngh nghip, ca h mt khi h ng k th th vin cng nh phi bit mi c gi c th mn v t ch item no. Nh vy xut hin lp BorrowerInformation. Cc thuc tnh ca n bao gm: m s (borrowerID), tn (name), a ch (address), n (loans), t trc (reservations), T y chng ta thy xut hin thm 2 lp l Loan v Reservation ng gi thng tin ca vic mn v t ch. C 2 lp c nhng thuc tnh ging nhau: m s ca sch, tp ch hay bng video v m s ca ngi mn. Chng ta to mt lp c s cho 2 lp ny l Signup. Nh vy Signup c 2 Hng dn thc hnh UML trn Rational Rose Trang 4 thuc tnh: itemCode v borrowerID. Ngoi ra lp Loan cn c thuc tnh Period cho bit thi gian mn cho php (tnh theo ngy) v lp Reservation c thuc tnh Order cho bit th t trong hng i ca s t trc ny. Cc i tng to ra ca s giao tip vi Borrower v Librarian c stereotype l <<boundary>>. Lp LoginForm to ra ca s cc actor truy nhp theo quyn ca mnh. Lp BorrowForm to ra ca s thao tc khi Librarian cho mn mt item. Lp ReturnForm to ra ca s thao tc khi Librarian nhn mt item m mt c gi tr. Lp SearchForm to ra ca s c gi tm kim cc item c trong th vin. Lp ManageLibForm to ra ca s Librarian thc hin chc nng qun l cc item. Lp ManageBorrowerForm to ra ca s Librarian thc hin chc nng qun l cc c gi.

Ngoi ra cn xut hin lp Database c stereotype l <<interface>> c chc nng giao tip vi c s d liu thc hin cc tc v cp nht d liu.

Xy dng biu lp
Phng php: Nhn din cc mi quan h gia cc lp. Cc lp Book, Magazine v Video c quan h
generalization vi lp Item. Cc lp Loan v Reservation c quan h generalization vi lp Signup. Quan h gia cc lp giao din v lp Database l dependency. S dng cc stereotype <<call>> gia LoginForm vi cc lp giao din khc. Trong khi quan h dependency gia chng vi Database c stereotype l <<instantiate>>. Nhn din mt s package. Chng ta to ta 3 package l: Library Artifact cha cc lp Book, Magazine, Video v Item; Borrow cha cc lp Loan, Reservation v Signup; Interface cha cc lp Database, LoginForm, BorrowForm, ReturnForm, SearchForm, ManageLibForm, ManageBorrowerForm.

Thc hin:
1. 2. Right-click vo Logical View v chn menu New | Package G vo tn ca package l Library artifact

3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.

20. 21. 22. 23.

Lp li 2 bc trn to ra 2 package na: Borrow v Interface Right-click vo icon ca package Library artifact v chn menu New | Class Diagram. G vo tn ca biu . Click vo icon ca lp ( ) sau click vo biu Trong lc k hiu lp cn c chn nhp tn lp l Item Double-click vo k hiu lp ri chn stereotype l <<entity>>. Sau chn tab Attributes. Right-click v chn menu Insert thm vo 2 thuc tnh name, code. Ch c th ch ra kiu ca thuc tnh. Lp li cc bc 5-7 to ra lp Book, Magazine v Video Click vo icon (generalization) v a chut vo biu . Click vo k hiu ca lp Book. Gi chut v ko n lp Item. Lp li cc bc 10-11 i vi lp Magazine v Video. Lm tng t cc bc 5-11 to ra mt biu lp cho package Borrow cha cc lp Signup, Loan, Reservation v BorrowerInformation. Right-click vo icon ca package Interface v chn menu New | Class Diagram. G vo tn ca biu . Click vo icon ca lp ( ) sau click vo biu Trong lc k hiu lp cn c chn nhp tn lp l LoginForm Double-click vo k hiu lp ri chn stereotype l <<boundary>>. Lp li cc bc 14-16 to ra cc lp BorrowForm, ReturnForm, SearchForm, ManageLibForm v ManageBorrowerForm. Click vo k hiu ca quan h dependency v a vo biu . Click vo lp LoginForm v ko n lp BorrowForm. ng thi t stereotype cho quan h ny l <<instantiate>>. Lm tng t i vi cc lp ReturnForm, SearchForm, ManageLibForm v ManageBorrowerForm. Click vo Interface icon ( ) Click vo biu Trong lc k hiu c chn nhp tn giao din l Database Click vo icon ca quan h dependency

Hng dn thc hnh UML trn Rational Rose Trang 5 24. Click vo k hiu ca BorrowForm v ko n k hiu ca Database, ng thi t stereotype l <<call>>. 25. Lm tng t i vi cc lp ReturnForm, SearchForm, ManageLibForm v ManageBorrowerForm. 26. C th click vo mi k hiu ca class hay package v ko sp xp li biu cho hp l hn. Hoc c th s dng chc nng sp xp t ng Tool | Layout Diagram.

Bui th ba
Mc tiu
Xy dng biu tun t, cng tc, hot ng Hon tt cc lc lp

Trnh t thc hin


Xy dng biu tun t
Phng php: Lc tun t gip c th ho cc use-case. N l mt s chuyn th cc s kin ni tip nhau trong cc use-case tr thnh mt chui cc thng ip gi cho cc i tng. iu quan trng l phi nhn din ra nhng i tng no lin quan n mt use-case c th. Mi use-case c th c nhiu lc tun t dng c th. Mi ci tng ng vi mt kch bn no v lun lun bt u bng mt kch thch t pha actor.
xy dng lc tun t chng ta xem xt mt hon cnh c th ca use-case borrows nh sau: Ngi mn kim c cc tn sch v ly cc sch ny n qun th cng vi m th vin ca mnh. Qun th sau bc kim tra quyn bng tn v mt m s chn chc nng cho mn. Ca s BorrowerForm c m ra. Trn ca s qun th nhp vo m s ngi mn v m s item mun mn. Thng qua database, chng trnh kim tra xem item c ai ang gi khng v ngi mun mn phi l ngi t ch sm nht. Nu kim tra ng th chng trnh s xa t ch cho ngi mn ng thi to thm mt n mi trong database. Xt use-case renews. Ngi mn n gp qun th v yu cu gia hn mt item. Qun th sau bc kim tra quyn bng tn v mt m s chn chc nng gia hn. Trn ca s BorrowerForm ngi qun th nhp m s ngi mn v ca s s hin th nhng item m anh ta ang gi trong mt list box. Ngi qun th chn mt item gia hn. Chng trnh kim tra xem c c gi no t ch khng. Nu khng c ai t ch th ngi mn c tip tc gi item . Chng trnh cp nht ngy tr cho n trc v to ra mt n mi trong database.

Thc hin:
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Right-click vo use-case borrows Chn menu New | Sequence Diagram Trong lc biu cn c chn nhp tn l Borrow a reserved item Double-click ln biu tun t ny m biu Click vo icon ca Librarian trong use-case view v ko vo biu tun t Click vo icon ca LoginForm, BorrowerForm, Database, Loan trong logical view v ko vo biu tun t. C th t tn cho actor biu tun t v cc i tng trong biu tun t bng cch double-click vo icon ca n ri g tn vo. Click vo icon ca thng ip (hnh mi tn) trn thanh cng c v a vo biu . Click vo ng chm chm biu din actor Librarian v ko n ng biu din i tng LoginForm. Double-click vo mi tn v t tn cho n l library code. Click vo icon ca thng ip (hnh mi tn) trn thanh cng c v a vo biu . Click vo thanh ch nht ca Librarian v ko n ng biu din i tng LoginForm. Double-click vo mi tn v t tn cho n l submit.

Hng dn thc hnh UML trn Rational Rose Trang 6 14. Tip tc thc hin cho thng ip borrow command t Librarian n LoginForm, thng ip activate and show t LoginForm n BorrowerForm, thng ip enter borrower's ID and item code t Librarian n BorrowerForm, thng ip isItemAvailable( iCode ) t BorrowerForm n Database, thng ip isReservationMaker( bID, iCode ) t BorrowerForm n Database, thng ip loan := new( bID, iCode ) t BorrowerForm n Loan, thng ip addLoan(loan) t BorrowerForm n Database v thng ip removeReservation( bID, iCode ) t BorrowerForm n Database. Sinh vin thc hin: thit lp cc biu tun t khc cho renews v cc use-case khc. Ch : cng c Rational Rose c kh nng bin i mt lc tun t tr thnh lc cng tc tng Nhn F5 khi ang thao tc vi lc tun t.

ng

Xy dng biu hot ng


Phng php: Thit lp lc hot ng cho tng lp m t s thc thi ca mt tc v. Mi lc hot
ng c th c vi lp tham gia, mi lp c biu din trong mt ng bi. Xt tc v ca lp BorrowerForm tng ng vi thng ip enter borrower's ID and item code. Nh m t trong lc tun t, lp BorrowerForm s tng tc vi lp Database cp nht c s d liu cho n mi (sch, tp ch hoc a CD). Mt s hnh ng c miu t bng s thc thi (thanh ch nht) trong biu tun t. Trong lc hot ng chng ta c th phn r nhng s thc thi thnh nhng hnh ng nh ng thi m t c tt c cc r nhnh c th c thng qua cc iu kin. C th, p ng li thng ip enter borrower's ID and item code, trc ht lp BorrowerForm s c m s c gi v m s item cn mn. Sau n s yu cu lp Database kim tra xem item mun mn sn c trong th vin hay khng. Nu item c c gi khc mn th tip tc kim tra xem ngi mun mn c phi l ngi ng k sm nht hay khng. Yu cu ca c gi c gii quyt nu nh item cha c ai khc mn hoc c gi l ngi ng k u tin. Khi lp BorrowerForm to ra thng tin n mi v thm vo c s d liu ri hin th thng bo thnh cng. Trng hp khng gii quyt c cho c gi th lp BorrowerForm s to ra thng bo Reject. Nh vy, c hai lp tham gia vo lc hot ng ny: BorrowerForm v Database. Lp BorrowerForm thc hin cc hnh ng: c m s c gi v item, to ra n mi, hin th thng bo thnh cng hoc tht bi. Lp Database thc hin cc hnh ng: kim tra xem item c trong th vin hay khng, kim tra xem c gi ng l ngi ng k u tin hay khng, xo t ch v thm n mi.

Thc hin:
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Right-click vo lp BorrowForm Chn New | Activity Diagram Trong lc biu cn c chn nhp tn l borrow Click vo biu tng ca ng bi (nm cui thanh cng c) v a vo biu Click vo cnh trn ca biu to ra ng bi, n s c tn NewSwimlane Double-click vo ng bi NewSwimlane g vo tn v chn class cho n l BorrowForm. Lp li bc 4-6 to ra ng bi biu din lp Database Click vo biu tng ca trng thi bt u ( ) v click vo biu Xo tn mc nh NewState ca trng thi bt u Click vo biu tng hnh ng (hnh ch nht cnh trn) v a vo biu Click vo biu , trong lc hnh ng c chn g vo tn Read borrowers ID and item code. Ch sp xp hnh ng ny v v trng thi bt u nm trong ng bi :BorrowForm. Lp li cc bc 10-11 to ra cc hnh ng Create a loan, Show successful message, Show reject message nm trong ng bi :BorrowForm; cc hnh ng Look for item, Look for the first reservation, Remove reservation, Add new loan nm trong ng bi :Database. Click vo biu tng ca trng thi kt thc v click vo biu trong ng bi :BorrowForm Xo tn mc nh NewState ca trng thi kt thc Click vo biu tng ca s dch chuyn (hnh mi tn) Click vo trng thi bt u trn biu v ko n hnh ng Read borrowers ID and item code Lp li cc bc 15-16 to ra cc dch chuyn: t Remove reservation n Create a loan, t Create a loan n Add new loan, t Add new loan n Show successful message

Hng dn thc hnh UML trn Rational Rose Trang 7

18. Click vo biu tng ca r nhnh (hnh thoi) trn thanh cng c v click vo ng bi :Database 19. Thc hin tng t bc 15-16 to ra cc dch chuyn: t hnh ng Look for item n nt r nhnh va to, t nt r nhnh n Create a loan, t nt r nhnh n Look for the first reservation 20. Double-click vo mi tn ca dch chuyn t nt r nhnh n Create a loan ri chn tab Detail. 21. t guard condition cho dch chuyn l available 22. Thc hin tng t bc 20-21 t guard condition cho dch chuyn t nt r nhnh n Look for the first reservation l unavailable 23. Click vo biu tng ca r nhnh (hnh thoi) trn thanh cng c v click vo ng bi :Database to ra r nhnh khc. 24. Thc hin tng t bc 15-16 to ra cc dch chuyn: t hnh ng Look for the first reservation n nt r nhnh va to, t nt r nhnh n Remove reservation, t nt r nhnh n Show reject message 25. Thc hin tng t bc 20-21 t guard condition cho dch chuyn t nt r nhnh n Remove reservation l borrower = maker (c gi mun mn ng l ngi t ch u tin) v t guard condition cho dch chuyn t nt r nhnh n Show reject message l borrower <> maker 26. Click vo biu tng ca r nhnh (hnh thoi) trn thanh cng c v click vo ng bi :Borrower to ra nt gom cc ng dch chuyn. 27. Thc hin tng t bc 15-16 to ra cc dch chuyn: t hnh ng Show successful message n nt gom va to, t Show reject message n nt gom, t nt gom n trng thi kt thc (Ch sp xp cc hnh ng t trn xung di theo th t xut hin ca chng)

Hon tt cc lc lp
Phng php: Ta c th bin i cc thng ip trong biu tun t thnh cc tc v trong lp sau khi gn cc lp vo cc i tng bng cch click chut phi ln tng thng ip v gn tn tc v. Nu tn tc v cha c, chn menu <new operation> ta s to tc v mi cho lp ny.
Trong qu trnh thit lp biu tun t, mt s i tng/lp khc c th c thm vo, c bit l cc lp bin. Cc tc v c b sung cho cc lp bin v iu khin. Chng ta s tinh ch cc cc lp nhn din trong lc phn tch lm r thuc tnh v cc quan h gia chng. V mt giao din chng trnh s c mt s ca s chnh tng ng vi cc lp bin: ca s kim tra quyn th th tng ng vi lp LoginForm, ca s th th thc hin cc thao tc tr sch, mn sch, gia hn sch tng ng vi lp BorrowerForm, ca s th th qun l ngi mn tng ng vi lp ManageBorrowerForm, ca s th th qun l cc item tng ng vi lp ManageLibForm v ca s ngi mn thc hin cc chc nng tm kim, t ch, xa t ch tng ng vi lp SearchForm. Cc bng c lu trong c s d liu bao gm: mt bng cha thng tin v cc Borrower, mt bng cha thng tin v cc item c trong th vin, mt bng lu li tt c cc ln mn t trc n gi ( Librarian c th thc hin chc nng thng k) v mt bng lu cc t ch hin thi. Nh vy chng ta b i thuc tnh loans v reservations ca lp BorrowerInformation. B sung thm thuc tnh BorrowDate v ReturnDate cho lp Loan lu li ngy mn v ngy tr. Quan h gia lp BorrowerInformation v Item l quan h lin kt 2 chiu, bc c hai bn l 0..*. Ch lp Signup tr thnh association class cho quan h lin kt .

Thc hin:
1. 2. 3. Trong cc lc lp ca package Library artifact v Borrow, to ra quan h lin kt 2 chiu gia Item v BorrowerInformation. Click vo biu tng ca link attribute (on thng ri nt ni vo on thng lin nt) trn thanh cng c v a vo biu . Click vo on thng biu din quan h lin kt gia Item v BorrowerInformation ri ko n biu tng ca Signup.

Hng dn thc hnh UML trn Rational Rose Trang 8

Sinh vin thc hin: Thng qua cc lc hy nhn din y tc v ca lp Database v cc lp bin ri b sung vo cc lc lp.

Bui th t
Mc tiu
Xy dng lc cc thnh phn (component diagram) Sinh m Lp ti liu

Trnh t thc hin


Xy dng lc cc thnh phn (component diagram)
Phng php: Lc thnh phn th hin cc thnh phn thuc nhiu loi: file m ngun, chng trnh thc thi, th vin lin kt tnh/ng, applet, S phn loi ny th hin qua cc stereotype ca thnh phn. Cc thnh phn m ngun s c gn mt s lp trong Logical view. Chng thng c quan h ph thuc vi nhau. Cc thnh phn thc thi cng c quan h ph thuc vi th vin lin kt tnh/ng. Nh vy thng thng chng ta s to ra 2 lc thnh phn:
Lc cc thnh phn m ngun (tng ng vi thi gian bin dch) Lc cc thnh phn thc thi v th vin (tng ng vi thi gian thc thi) Cc lc thnh phn ny c thit lp trong giai on hin thc, do chng ta phi xc nh r ngn ng lp trnh cng nh cng ngh c p dng. Chng hn chn ngn ng Java (nn t ngn ng mc nh ngay t u l Java) v cng ngh JavaServlet. Chng trnh bao gm 2 servlet: LibServ, StatServ v 1 applet CheckReg. LibServ l servlet chnh c nhng vo trang Index.shtml. StatServ thc hin chc nng thng k. CheckReg c chc nng kim tra s b ng k mn hc ca sinh vin. Chng ta phn chia cc package trong logical-view ri, do c th sinh m trc tip t cc lp. Cc package s c nh x tr thnh cc package tng ng trong m ngun Java. Do khng cn thit to ra cc thnh phn m ngun. i vi ngn ng C++ nn to ra cc thnh phn package body v package specification ri gn cc lp cho chng.

Thc hin:
1. 2. 3. 4. 5. 6. 7. 8. 9. Click vo du + ca component-view ri double-click vo Main Click vo icon ca thnh thnh phn trn thanh cng c hoc chn menu Tools | Create | Generic Component ri a vo biu Click vo biu . Trong lc k hiu cn c chn nhp tn Index.shtml Right-click vo Index.shtml trn biu v chn menu Open Standard Specification Trong dialog xut hin t stereotype l <<page>> Thc hin tng t bc 2-5 to ra: thnh phn LibServ c stereotype l <<servlet>>, thnh phn StatServ c stereotype l <<servlet>> v thnh phn CheckReg c stereotype l <<Applet>> Click vo k hiu ca quan h ph thuc (mi tn ri nt) hoc chn menu Tools | Create | Dependency ri a vo biu . Click vo k hiu ca Index.shtml ri ko n LibServ Thc hin tng t bc 7-8 to ra cc ph thuc khc: t LibServ n CheckReg, t LibServ n StatServ

Hng dn thc hnh UML trn Rational Rose Trang 9

Sinh m

Phng php: C th sinh m Java cho cc lp trong logical-view. Ch t ng dn n th mc cha m


ngun Java

Thc hin:
1. 2. 3. 4. 5. 6. Chn menu Tools | Java | Project Specification Trong dialog mi xut hin nhn vo nt bn tri cng trong phn Directories thm vo ng dn n th mc cha m ngun Java. C th chn th mc trc tip hoc s dng symbol to ra trong chc nng File | Edit Path Map Right-click vo k hiu ca lp Item v chn menu Open Standard Specification Chn Export Control l Protected. Nu mun t lp Item l abstract th vo tab Detail ri nh du vo nt Abstract. Right-click vo k hiu ca lp Item v chn menu Java | Generate Java. Trong dialog xut hin chn file ri nhn Map. Nu c li xy ra m ca s Log tm nguyn nhn. Thc hin tng t bc 3-5 sinh m cho cc lp khc.

Lp ti liu
Thc hin:
1. 2. Chn menu Report | Documentation Report Trong dialog mi xut hin c th chn lp ti liu v logical-view hay component-view v thay i ng dn n file Word s to ra

Hng dn thc hnh UML trn Rational Rose Trang 10

You might also like