Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 48

By Nguyen Minh Quy - UTEHY

UML
Fundamental
Ni dung
Gii thiu tng quan v UML
1
Mt s Case tool h tr UML
2
Mt s biu UML c bn
3
Ci t (nh x) biu
4
Gii thiu Visual Paradigm
5
1. Tng quan v UML
UML (Unified Model Language) l mt ngn ng
dng cho phn tch thit k hng i tng
(OOAD Object Oriented Analys and Design)
c duy tr v pht trin bi OMG (Object
Management Group), do Jacobson, Booch,
Rumbaugh sng lp. Ngoi ra cn c hng trm
cc tp on ln khc bo tr pht trin.
UML 2.0 c 13 loi biu th hin cc khung
nhn khc nhau (View) v h thng.
Cc biu UML cho ta ci nhn r hn v h
thng (c ci nhn tnh v ng)
1. Tng quan v UML....
Hin nay UML c s dng rt ph bin trong
cc d n phn mm.
UML th hin phng php phn tch hng i
tng nn khng l thuc ngn ng LT.
C rt nhiu cng c phn mm h tr phn tch
thit k dng UML.
Nhiu cng c c th sinh ra m t UML v ngc
li (t m thnh UML-Reverse Eng)
UML khng phi l ngn ng lp trnh !.
Phin bn mi nht ca UML l 2.1.2 (omg.org)
UML dng lm g ?
UML l mt ngn ng dng :
1. Trc quan ha (Visualizing)
2. c t (Specifying)
3. Xy dng (Constructing)
4. Vit ti liu (Documenting)

Trc quan ha-Visualizing
Dng tp cc k hiu ha phong ph biu
din h thng ang c nghin cu.
H thng k hiu u c ng ngha cht ch, c
th hiu bi nhiu cng c khc nhau.
Gip cho cc nh thit k, nh lp trnh khc
bit v ngn ng u c th hiu c.

UML l ngn ng cho c t - specifying


UML gip xy dng cc m hnh chnh xc, y
v khng nhp nhng.
Tt c cc cng on t phn tch, thit k cho
n trin khai u c cc biu UML biu
din.
Use case (dng cho phn tch); Class,
Sequence, Activity... (cho thit k); Component,
Deployment (cho trin khai).
Xy dng - Constructing
Cc m hnh ca UML c th kt ni vi nhiu ngn
ng lp trnh. Tc l c th nh x cc m hnh
UML v mt ngn ng lp trnh nh C++, Java...
Vic chuyn cc m hnh trong UML thnh Code
trong ngn ng lp trnh Forward engineering
Vic chuyn ngc tr li code trong mt ngn ng
lp trnh thnh UML Reverse Engineering.
Cn cng c chuyn i xui & ngc
UML l ngn ng gip vit ti liu
Gip xy dng ti liu c t - requirements
Ti liu kin trc (architecture)
Ti liu thit k
Source code
Ti liu kim th - Test
Ti liu mu - Prototype
Ti liu trin khai Deployment ............
2. Mt s Case tool (Cng c) h tr UML
Rational Rose (ca hng Rational) http://www-
128.ibm.com/developerworks/downloads/r/rsd/?
Visual Paradiagm http://www.visual-paradigm.com
Microsoft Visio www.microsoft.com
Power designer http://www.sybase.com
Visual Case http://www.visualcase.com
Pacestar UML Diagrammer www.peacestar.com
..................................
3. Mt s biu UML c bn
Chiu cao
View 1
3. Mt s biu UML c bn
Chiu cao pha sau
View 2
3. Mt s biu UML c bn
View 3
3. Mt s biu UML c bn

1
Biu ca
s dng
Use Case
Diagram
3
Biu
Tun t
Sequence
Diagram

2
Biu
Lp
Class
Diagram
4
Biu
Hot ng
Activity
Diagram
State Component Deployment
Communication/
Collaboration
Interaction Timming
3. Mt s biu UML c bn

1
Biu ca
s dng
Use Case
Diagram
3
Biu
Tun t
Sequence
Diagram

2
Biu
Lp
Class
Diagram
4
Biu
Hot ng
Activity
Diagram
State Component Deployment Communication Timing Collaboration
1
Biu ca
s dng
Use Case
Diagram

M t cc chc nng ca
h thng da trn quan
im ngi s dng.
M t s tng tc gia
ngi dng v h thng.
Cho bit h thng c
s dng nh th no ?


Actor
Generalization
Include
System
Extend
Use
case
Ch :
Khi no th v quan h <Include> (bao hm)
Use case A c gi l Include B nu trong x l ca A
c gi n B t nht 1 ln !

Minh ha thng qua Code
Class B { public void X () { .... } }
Class A {
Pubic void Y () {
B objB = new B(); objB.X (); ...
}
}
A
B
Include
Ch :
Khi no th v quan h <Extend> (m rng)
Use case B c gi l Exntend A nu use case B
c gi bi A nu tha mn iu kin no .

Minh ha thng qua Code
Class B { public void Inn () { .... } }
Class A {
Pubic void XemDSSV () {
... If (Click_Nt_Inn)
{ B objB = new B(); objB.Inn(); ...}....
}
}
A
B
Extend
Mt s hnh v ng


Mt s hnh v ng
Mt s hnh v sai

V quan h tng qut ha (tha k)
Khi no th v quan h <Generalization> (tng qut ha)
Use case A c gi l Generalization B nu B l mt
trng hp ring ca A !

Nu A Generalization B th code c dng nh th no
Class A {
....................
}
Class B : A
{
..................
}
A
Thanh ton
B
T/t bng Credit
C
T/t bng Sc
3. Mt s biu UML c bn

1
Biu ca
s dng
Use Case
Diagram
3
Biu
Tun t
Sequence
Diagram

2
Biu
Lp
Class
Diagram
4
Biu
Hot ng
Activity
Diagram
State Component Deployment Communication Timing Collaboration
2
Biu
Lp
Class
Diagram
L biu quan trng
nht
M t cc i tng v
mi quan h ca chng
trong h thng.
M t cc thuc tnh v
cc hnh vi (Behavior) ca
i tng.
C biu lp mc phn
tch v mc ci t.
Hai dng lp: phn tch v thit k

B qua cc chi tit
khng cn thit
Phi y & chi
tit cc thnh phn

Cc quan h trong biu lp
Quan h Generalization: Th hin rng mt lp
A k tha t mt lp B (Hay A l trng hp
ring ca B; B l tng qut ca A)
Gi l quan h L mt (Is a)

Th hin:


Cc quan h trong biu lp (2)
Quan h Aggregation: Th hin rng mt lp A
no bao gm lp B. Lp B ny c th tn ti
c lp m khng cn lp A.
Cn gi l mi quan h: C mt (Has a)

Th hin:


Cc quan h trong biu lp (3)
Quan h Composition: th hin rng mt lp A
bao hm lp B. Nhng lp B khng th tn ti
c lp (Tc khng thuc lp no). Tc l, nu
c B th phi suy ra c A.

Th hin:


ng s (Multiplicity)
Th hin rng ng vi mi lp A th c (cha,
dy, c, mua, t,...) bao nhiu phn t lp B?


A

B
1 1
Mt phn t lp A c 1 phn t lp B
ng s (Multiplicity)
Th hin rng ng vi mi lp A th c (cha,
dy, c, mua, t,...) bao nhiu phn t lp B?


A
Khch hng

B
Ti khon
1 0..3
Mt phn t lp A c ti a 3 phn t lp B
Mi phn t lp B c ng 1 phn t lp A
ng s (Multiplicity)
Th hin rng ng vi mi lp A th c (cha,
dy, c, mua, t,...) bao nhiu phn t lp B?


A
Khch hng

B
n hng
1 *
Mt phn t lp A c nhiu phn t lp B
Mi phn t lp B c ng 1 phn t lp A
ng s (Multiplicity)
Th hin rng ng vi mi lp A th c (cha,
dy, c, mua, t,...) bao nhiu phn t lp B?


A
Sinh vin

B
Kha hc
0..* 1..*
Mi sinh vin tham gia t nht 1 kha hc
Mi kha hc c th c 0 hoc nhiu sv tham gia
3. Mt s biu UML c bn

1
Biu ca
s dng
Use Case
Diagram
3
Biu
Tun t
Sequence
Diagram

2
Biu
Lp
Class
Diagram
4
Biu
Hot ng
Activity
Diagram
State Component Deployment Communication Timing Collaboration
3
Biu
Tun t
Sequence
Diagram

M t s tng tc
ca cc i tng theo
trnh t v thi gian.
C s lin kt cht
ch vi biu lp.
Mi biu tun t
m t mt tnh hung
x l.

Lifetime
Message
Return
Local
message
Object
V biu tun t
Ch : c th v mt trong 2 dng

V d v sai !

3. Mt s biu UML c bn

1
Biu ca
s dng
Use Case
Diagram
3
Biu
Tun t
Sequence
Diagram

2
Biu
Lp
Class
Diagram
4
Biu
Hot ng
Activity
Diagram
State Component Deployment Communication Timing Collaboration
4
Biu
Hot ng
Activity
Diagram
M t cc lung cng
vic, qui trnh nghip v.
Tng t nh s
khi (Flowchart).
H tr vic m t cc
x l song song.
Mt s biu khc
Biu truyn thng: Communication diagram*
Biu tng tc: Interaction Diagram
Biu thi gian Timming diagram*
Biu trng thi State Diagram
Biu i tng Object Diagram
Bu gi - Package Diagram
Biu cu trc kt hp Composite Structured*
Biu thnh phn Component Diagram
Biu trin khai Deployment Diagram

nh x biu sang Code

nh x biu sang Code (2)

nh x khch hng- n hng




nh x biu tun t sang Code

Class B { public int Login(string UID, Pass)
{ ...............
}
MainApp
{ .... Nhp User name, password ....
B objB = new B ();
bool Result = objB.Login(UID, Password)
if (Result == true) ....
}
Contact me quynm@utehy.edu.vn/ nminhquy@yahoo.com
Aptech Computer Education

You might also like