You are on page 1of 85

PHN TCH THIT K HNG I TNG VI UML

GV: Phan B Tr Email: trip182@gmail.com Website: www.phanbatri.wordpess.com

LOGO
www.themegallery.com

Hu, 2/2012

Chng 2: Tng quan v UML


Ni dung: Chng ny nhm gii thiu v ngn ng m hnh ho thng nht UML v cng c pht trin phn mm hng i tng. Ni dung c th bao gm: - Gii thiu UML - Cc biu trong UML - Cc bc phn tch thit k hng i tng s dng UML - Gii thiu b cng c Enterprise Architecture

2.1 GII THIU V UML


2.1.1 Lch s ra i ca UML - Cui nhng nm 80, u nhng nm 1990, mt lot cc phng php lun v ngn ng m hnh ha hng i tng mi ra i: + Booch ca Grady Booch + OMT ca James Rambaugh + OOSE ca Ivar Jacobson + OOA and OOD ca Coad v Yordon

2.1.1 Lch s ra i ca UML - UML u tin c a ra nm 1997 v sau c chun ho tr thnh phin bn 1.0. - Hin nay chng ta ang s dng ngn ng UML phin bn 2.0. - Tc gi: James Rumbaugh, Grady Booch v Ivar Jacobson

2.1 GII THIU V UML


2.1.2 UML Ngn ng m hnh ho hng i tng - UML (Unified Modelling Language) l ngn ng m hnh ho tng qut c xy dng: + c t + Pht trin + Cc ti liu nh km trong pht trin phn mm hng i tng

2.1 GII THIU V UML


2.1.2 UML Ngn ng m hnh ho hng i tng - UML h tr xy dng h thng hng i tng: + Cu trc tnh + Cc hnh vi ng ca h thng

CU TRC TNH
- Cc cu trc tnh nh ngha cc kiu i tng quan trng ca h thng. - Ci t v ch ra mi quan h gia cc i tng .

HNH VI NG
- Cc hnh vi ng (dynamic behavior) nh ngha cc hot ng ca cc i tng theo thi gian. - Tng tc gia cc i tng hng ti ch.

2.1 GII THIU V UML


Cc mc ch ca ngn ng m hnh ho thng nht UML: M hnh ho cc h thng s dng cc khi nim hng i tng. Thit lp s lin h t nhn thc ca con ngi n cc s kin cn m hnh ho. Gii quyt vn v mc tha k trong cc h thng phc tp vi nhiu rng buc khc nhau. To mt ngn ng m hnh ho c th s dng c bi ngi v my.

2.1 GII THIU V UML


2.1.3 Cc khi nim c bn trong UML a) Khi nim m hnh M hnh l mt biu din ca s vt hay mt tp cc s vt trong mt lnh vc p dng no theo mt cch khc. Cc m hnh thng c xy dng sao cho c th v c thnh cc biu da trn tp k hiu v quy tc cho.

M HNH
M hnh c s dng nhm tho mn cc mc ch sau: - Nm bt chnh xc yu cu v tri thc min m h thng cn pht trin. - Th hin t duy v thit k h thng - Tr gip ra quyt nh thit k da trn vic phn tch yu cu. - T chc, tm kim, lc, kim tra v sa i thng tin v cc h thng ln. - Lm ch c cc h thng phc tp.

M HNH
Cc thnh phn trong mt m hnh bao gm: - Ng ngha v biu din: Ng ngha l nhm a ra ngha, bn cht v cc tnh cht ca tp cc k hiu. Biu din l phng php th hin m hnh theo cch sao cho c th nhn thy c. - Ng cnh: m t t chc bn trong, cch s dng m hnh trong tin trnh phn mm

2.1 GII THIU V UML


2.1.3 Cc khi nim c bn trong UML b) Khung nhn (View) trong UML Mt khung nhn trong UML l mt tp con cc biu UML c xy dng biu din mt kha cnh no ca h thng. S phn bit gia cc khung nhn l rt linh hot. Cc khung nhn cng cc biu tng ng c m t trong bng sau:

KHUNG NHN (VIEW)


Kha cnh Khung nhn Cc biu Cc khi nim chnh

Cu trc h thng

Tnh (static view) use case (Use case view)

Biu lp Lp, k tha, ph thuc, giao din Biu use case Use case, tc nhn,lin h, extend,include,..

Ci t Biu (implementation view) thnh phn


Trin khai (deployment view) ng Trng thi (state view) Hot ng (activity view) Tng tc (interaction view) Biu trin khai Biu trng thi Biu hot ng Biu tun t Biu cng tc Qun l m hnh Qun l m hnh

Thnh phn, giao din, quan h ph thuc


Node, thnh phn, quan h ph thuc, v tr (location) Trng thi, s kin, chuyn tip, hnh ng Trng thi, s kin, chuyn tip, kt hp, ng b Tng tc, i tng, thng ip, kch hot Cng tc,vai tr , thng ip

Biu lp Gi, h thng con, m hnh

2.1 GII THIU V UML


2.1.3 Cc khi nim c bn trong UML c) Cc phn t m hnh v quan h Mt s k hiu m hnh hng i tng thng gp trong UML c biu din trong hnh sau:

CC PHN T M HNH
Mt s k hiu m hnh hng i tng thng gp trong UML:

M hnh 1: M hnh tin trnh nghip v

CC PHN T M HNH

M hnh 2: M hnh yu cu

CC PHN T M HNH

M hnh 3: M hnh use case

CC PHN T M HNH

M hnh 4: M hnh min/ lnh vc

CC PHN T M HNH

M hnh 5: M hnh d liu

CC PHN T M HNH

M hnh 6: M hnh lp

CC PHN T M HNH

M hnh 7: M hnh thnh phn

CC PHN T M HNH

M hnh 8: M hnh trin khai

CC PHN T M HNH

custom Test Model

The Test Model describes and maintains a catalogue of tests, test plans and results that are executed against the current model.

Test Plans

Test Cases

M hnh 9: M hnh kim th

CC PHN T M HNH

M hnh 10: M hnh bo tr

CC PHN T M HNH

act Proj ect Mo... Release Plan

The Project Model details the overall project plan, phases, milestones and resourcing requirements for the current project.

Resources

M hnh 11: M hnh d n

CC PHN T M HNH

M hnh 12: M hnh giao din ngi s dng

MI QUAN H
Quan h ph thuc Quan h tng qut Quan h lin kt Quan h kt tp

Hnh 1: Mt s dng quan h trong UML

2.2 BIU UML


2.2.1 Biu use case Mc ch: - Biu din s chc nng ca h thng. - Biu use case ch ra h thng cn thc hin iu g, tho mn cc yu cu ca ngi dng trong h thng . - i km vi biu use case l cc kch bn.

2.2 BIU UML


2.2.2 Biu lp Mc ch: - Ch ra cc lp i tng trong h thng - Cc thuc tnh v phng thc ca tng lp v cc mi quan h gia nhng lp .

2.2 BIU UML


2.2.3 Biu trng thi Mc ch: - M t cc trng thi m i tng ca lp c th c (tng ng vi mi lp). - S chuyn tip gia nhng trng thi .

2.2 BIU UML


2.2.4 Biu tng tc Mc ch: - Biu din mi lin h gia cc i tng trong h thng v gia cc i tng vi cc tc nhn bn ngoi. - C hai loi biu tng tc: + Biu tun t + Biu cng tc

2.2 BIU UML


2.2.5 Biu hot ng Mc ch: - Biu din cc hot ng v s ng b, chuyn tip cc hot ng. - Thng c s dng biu din cc phng thc phc tp ca cc lp.

2.2 BIU UML


2.2.6 Biu thnh phn Mc ch: - nh ngha cc thnh phn ca h thng. - Mi lin h gia cc thnh phn .

2.2 BIU UML


2.2.7 Biu trin khai Mc ch: - M t h thng s c trin khai nh th no. - Thnh phn no c ci t u. - Cc lin kt vt l hoc giao thc truyn thng no c s dng.

2.2 BIU UML


Lu : - Da trn tnh cht ca cc biu , UML chia cc biu thnh hai lp m hnh: + Biu m hnh ha cu trc (Structural Modeling Diagrams). + Biu m hnh ha hnh vi (Behavioral Modeling Diagrams).

2.2 BIU UML


Biu m hnh ha cu trc (Structural Modeling Diagrams): biu din cc cu trc tnh ca h thng phn mm c m hnh ho. Cc biu trong m hnh tnh bao gm: - Biu gi - Biu i tng v lp - Biu thnh phn - Biu trin khai

2.2 BIU UML


Biu m hnh ha hnh vi (Behavioral Modeling Diagrams): Nm bt cc hot ng v hnh vi ca h thng, s tng tc gia cc phn t bn trong v bn ngoi h thng. Cc biu trong m hnh ng bao gm: - Biu use case - Biu tng tc dng tun t - Biu tng tc dng cng tc - Biu trng thi - Biu ng

2.2 BIU UML


2.2.1 Biu use case a) ngha - Biu use case: + Biu din s chc nng ca h thng. + Tng tc gia cc tc nhn v h thng thng qua cc use case. - Trong : + Mi use case m t mt chc nng h thng + Tc nhn l con ngi hay h thng thc khc cung cp thng tin hay tc ng ti h thng.

2.2 BIU UML


b) Tp k hiu - H thng:
- H thng: ranh gii gia bn trong v bn ngoi ca mt ch th trong phn mm chng ta ang xy dng.
- H thng khng nht thit l phn mm: c th l mt chic my, mt doanh nghip, trng H,

2.2 BIU UML


- Actor
uc Primary ...

Actor

+ L ngi dng ca h thng. + C th l mt ngi dng thc hoc cc h thng my tnh khc. + Thc hin cc use case

2.2 BIU UML


- Use case
+ L thnh phn c bn ca biu use case. + use case c biu din bi cc hnh elip. + Tn cc use case th hin mt chc nng xc nh ca h thng. + Mt use case cng c th c thc hin bi nhiu tc nhn.

uc Primary Use Cases

Use Case1

2.2 BIU UML


- Mi quan h gia cc use case extend: (M rng)

+ use case ny m rng t use case kia bng

cch thm vo mt chc nng c th.

2.2 BIU UML


- Mi quan h gia cc use case include: (Bao hm)

+ X<<include >>Y ch ra rng tin trnh thc

hin X lun lun lin quan n vic thc hin Y t nht mt ln. + X phi p ng cc iu kin tin ca Y trc khi bao hm n.

2.2 BIU UML


- Mi quan h gia cc use case dependency: (ph thuc)

+ Ph thuc l mi quan h c ngha rng mt

hoc mt tp m hnh cc phn t yu cu m hnh cc phn t khc cho cc c t hoc thc thi ca chng.

2.2 BIU UML


- Mi quan h gia cc use case Realization: (thc thi)

+ Thc thi l mi quan h tru tng chuyn

bit gia 2 tp m hnh cc phn t: mt l i din cho c im k thut (Nh cung cp) v hai l i din cho vic thc thi sau ny (Khch hng).

2.2 BIU UML


- Mi quan h gia cc Actor Generalization: (Khi qut)
uc Actors

Actor1

Actor2

Khi qut l mt mi quan h phn loi gia phn loi tng qut v mt phn loi chi tit. Mi th hin

ca phn loi chi tit cng l mt th hin gin tip ca phn loi tng qut. V vy, phn loi chi tit k tha cc tnh nng ca phn loi tng qut.

2.2 BIU UML


- Mi quan h gia Actor v use case Association: (Lin kt)
uc Primary Use Cases X

Actor2

Lin kt t t mt mi quan h ng ngha m n c th xy ra cc dng th hin. N c t nht hai u cui i din bi cc thuc tnh, mi trong s c lin kt vi dng ca kt thc.

2.2 BIU UML


2.2.1 Biu use case c) V d:

2.2 BIU UML


2.2.2 Biu lp a) ngha - Lp: mt nhm i tng c chung mt s thuc tnh v phng thc. - Cc lp (bao gm c cc thuc tnh v phng thc) cng vi cc mi quan h s to thnh biu lp. - Biu lp l mt biu dng m hnh tnh nhm m cc khi nim lp, cc thuc tnh, phng thc v mi quan h gia chng vi nhau.

2.2 BIU UML


2.2.2 Biu lp b) K hiu - K hiu lp:
class System

Employee + + + + + + + IdCode: int FirstName: string LastName: string Address: string Salary: long Display() : void EmployeeDelete(int) : void

- Trong UML, mi lp c biu din bi hnh ch nht gm 3 phn: Tn lp, cc thuc tnh v cc phng thc.

2.2 BIU UML


2.2.2 Biu lp - Tn lp: L tn ca chnh lp - Cc thuc tnh (Attributes): Quy c: + Tn_thuc_tnh + Gi tr thuc tnh + Phm vi truy cp ca thuc tnh

2.2 BIU UML


2.2.2 Biu lp Cc mi quan h trong biu lp: - Quan h lin kt (Association): l mt s ni kt gia cc lp, cng c ngha l s ni kt gia cc i tng ca cc lp ny.
class System

Employee + + + + + + + + + IdCode: int FirstName: string LastName: string Address: string Salary: long IdDepartement: int Display() : void EmployeeDelete(int) : void SetDay(date) : date Departement + + + + IdDepartement: int DepartementName: string Display() : void DepartementAdd(int) : void

2.2 BIU UML


2.2.2 Biu lp - Quan h khi qut (Generalization): + L mi quan h gia mt lp c cc c trng mang tnh khi qut cao hn v mt lp c tnh cht c bit hn. + Trong s lp, mi quan h khi qut chnh l s k tha ca mt lp t lp khc.
class System Employee + + + + + + + + + IdCode: int FirstName: string LastName: string Address: string Salary: long IdDepartement: int Display() : void EmployeeDelete(int) : void SetDay(date) : date Person + + + + Birthday: date Country: string Display() : void SetDay(date) : date

2.2 BIU UML


2.2.2 Biu lp - Quan h kt tp (Aggregation): + L dng quan h m t mt lp A l mt phn ca lp B v lp A c th tn ti c lp. + Quan h kt tp c biu din bng mt mi tn gn hnh thoi rng u hng v lp bao hm.
class System Bill + + + + IdBii: int TypeBill: string IdCustomer: int GetBill(int) : void + + + + + Custumer IdCustomer: int CustomerName: string Address: string GetCustomer(int) : void GetBill(int) : void

2.2 BIU UML


2.2.2 Biu lp - Quan h hp thnh (Composition): + Mt quan h hp thnh biu din mt quan h kiu tng th-b phn. + Lp A c quan h hp thnh vi lp B nu lp A l mt phn ca lp B v s tn ti ca i tng lp B iu khin s tn ti ca i tng lp A.
class System Custumer + + + + + IdCustomer: int CustomerName: string Address: string GetCustomer(int) : void GetBill(int) : void + + + + + Address IdAddress: int StreetName: string StreetNumber: int hasProvince: string GetAddress(int) : void

2.2 BIU UML


2.2.2 Biu lp - Quan h ph thuc (Dependency): + Ph thuc l mi quan h gia hai lp i tng. + Mt lp i tng A c tnh c lp v mt lp i tng B ph thuc vo A; mt s thay i ca A s nh hng n lp ph thuc B.

2.2 BIU UML


2.2.2 Biu lp - Quan h thc thi (Realization): + Biu din mi quan h ng ngha gia cc thnh phn ca biu lp. + Mt thnh phn m t mt cng vic dng hp ng v thnh phn cn li thc hin hp ng .

2.2 BIU UML


2.2.2 Biu lp c) V d

2.2 BIU UML


2.2.3 Biu trng thi a) ngha - Biu din cc trng thi v s chuyn tip gia cc trng thi ca cc i tng trong mt lp xc nh. - Thng thng, mi lp s c mt biu trng thi (tr lp tru tng l lp khng c i tng)

2.2 BIU UML


2.2.3 Biu trng thi C hai dng biu trng thi: - Biu trng thi cho mt use case: m t cc trng thi v chuyn tip trng thi ca mt i tng thuc mt lp no trong hot ng ca mt use case c th - Biu trng thi h thng: m t tt c cc trng thi ca mt i tng trong ton b hot ng ca c h thng

2.2 BIU UML


2.2.3 Biu trng thi - Trng thi (state): miu t cc bin trng thi hoc cc hnh ng (action) tng ng vi trng thi . - Trng thi khi u (initial state): trng thi u tin khi kch hot i tng. - Trng thi kt thc (final state): kt thc vng i i tng. - Cc chuyn tip (transition): biu din cc chuyn i gia cc trng thi. - S kin (event): s kin tc ng gy ra s chuyn i trng thi.

2.2 BIU UML


c) V d:
act Proj ect Model Begin Login

Request Request

Check Username,Passw ord Inv alid

Check

Valid

Request

BooksComposition End

2.2 BIU UML


2.2.4 Biu tng tc dng tun t a) ngha - Biu tun t: + Biu din mi quan h gia cc i tng, gia cc i tng v tc nhn theo th t thi gian. + Biu tun t nhn mnh th t thc hin ca cc tng tc.

2.2 BIU UML


2.2.4 Biu tng tc dng tun t b) K hiu - i tng (object): c biu din bi cc hnh ch nht, bn trong l tn ca i tng.

- Cc thng ip (message): c biu din bng cc mi tn hng t i tng gi sang i tng nhn.

2.2 BIU UML


2.2.4 Biu tng tc dng tun t - ng lifeline: l mt ng k ni di pha di i tng, m t qu trnh ca i tng trong tng tc thuc biu . - Ch thch: biu tun t cng c th c ch thch ngi c d dng hiu c ni dung ca biu .

2.2 BIU UML


c) V d

2.2 BIU UML


2.2.5 Biu tng tc dng cng tc a) ngha - Biu din mi quan h gia cc i tng; gia cc i tng v tc nhn, vai tr ca cc i tng trong tng tc. - Biu cng tc cng c cc thng ip vi ni dung tng t nh trong biu tun t.

2.2 BIU UML


2.2.5 Biu tng tc dng cng tc b) K hiu
- Cc i tng: c biu din bi cc hnh ch nht, bn trong l tn ca i tng. - Cc lin kt: gia hai i tng c tng tc s c mt lin kt ni 2 i tng . Lin kt ny khng c chiu. - Cc thng ip: biu din bng cc mi tn hng t i tng gi sang i tng nhn bn cnh lin kt gia 2 i tng . - Cc thng ip c nh s th t theo th t xut hin trong kch bn m t use case tng ng.

2.2 BIU UML


2.2.5 Biu tng tc dng cng tc c) V d - Biu cng tc: tng t biu tng tc dng tun t trn nhng c nh s th t.

2.2 BIU UML


2.2.6 Biu hot ng a) ngha - Biu hot ng: + Biu din cc hot ng v s ng b, chuyn tip cc hot ng ca h thng trong mt lp, + Kt hp gia cc lp vi nhau trong mt chc nng c th.

2.2 BIU UML


2.2.6 Biu hot ng b) K hiu - Hot ng (Activity): l mt quy trnh c nh ngha r rng, c th c thc hin bi mt hm hoc mt nhm i tng. Hot ng c th hin bng hnh ch nht trn cnh.
act Activ ity1 Activ ity2

2.2 BIU UML


2.2.6 Biu hot ng - Trng thi khi u (Intial): l nt iu khin cho php bt u khi mt hot ng c gi.
act Activ ity1 ActivityInitial

- Trng thi kt thc (Final Intial): Mt hot ng c th c nhiu hn mt trng thi kt thc. Trng thi kt thc u tin dng li tt c cc lung hot ng.
act Activ ity1 ActivityFinal

2.2 BIU UML


2.2.6 Biu hot ng - Thanh ng b ha (Synchronisation bar): cho php ta m ra hoc l ng li cc nhnh chy song song trong tin trnh.
act Activ ity1

- Quyt nh (Decission): M t mt la chn iu kin.


act Act...

2.2 BIU UML


2.2.6 Biu hot ng c) V d

2.2 BIU UML


2.2.7 Biu thnh phn a) ngha - Biu thnh phn: c s dng biu din cc thnh phn phn mm cu thnh nn h thng.

2.2 BIU UML


2.2.7 Biu thnh phn b) K hiu - Thnh phn: M t mt thnh phn ca biu , mi thnh phn c th cha nhiu lp hoc nhiu chng trnh con.
cmp Components Component3

- Giao tip: M t giao tip gn vi mi thnh phn. Cc thnh phn trao i thng tin qua cc giao tip.

2.2 BIU UML


2.2.7 Biu thnh phn b) K hiu - Mi quan h ph thuc gia cc thnh phn (Dependency):

- Gi (Package): nhm mt s thnh phn li vi nhau.


cmp Components Package1

2.2 BIU UML


2.2.7 Biu thnh phn c) V d

2.2 BIU UML


2.2.8 Biu trin khai h thng a) ngha - Biu din kin trc ci t v trin khai h thng di dng cc nodes, - Cc mi quan h gia cc node . - Cc nodes kt ni vi nhau thng qua cc lin kt truyn thng: + Kt ni mng + Lin kt TCP/IP + Microwave, v c nh s theo th t thi gian tng t nh trong biu cng tc.

2.2 BIU UML


2.2.8 Biu trin khai h thng b) K hiu - Cc nodes: Node hoc l mt thnh phn phn cng hoc phn mm. N c hin th nh l mt hnh hp ba chiu, nh hnh di y.
deployment Nodes Node1

- Node minh ha (Instance Node): Node minh ha c th biu din bng mt biu . N c th phn bit vi mt node thc t l tn c gch chn v c du 2 chm trc node c s.

2.2 BIU UML


2.2.8 Biu trin khai h thng

- Node khun mu (Stereotypes Node): Mt s khun mu chun c cung cp cho cc node: cd-rom,computer,disk array, pc, pc client,pc server,secure,server, storage, unix server,user pc.

2.2 BIU UML


2.2.8 Biu trin khai h thng c) V d

2.3 GII THIU ENTERPRISE ARCHITECT


1. Enterprise Architect Download: Enterprise Architect 7.0 Reference: www.visual-paradigm.com/VPGallery/diagrams/ 2. Rational Rose Download: Rational Rose 9.0 Reference: www.sparxsystems.com.au/resources/

Thats all

You might also like