8/9/2019 UML Chuong 6 Nguyenlythietkelop
1/22
UML/NN 1
Chng 6
Nguyn l thit k,Phng php xc nh lp
UML/NN 2
Ni dung
6.1 Cc tin trong thit k 6.2 Hng tip cn trong xc nh lp 6.3 Xc nh mi quan h gia cc lp 6.4 Xc nh thuc tnh v hnh vi ca lp
UML/NN 3
6.1. Cc tin trong Thit k
Tin 1: tin c lp Duy tr tnh c lp ca cc thnh phn thit k
Tinh c lp ca cc thnhphn khng cao
Tnh c lp ca cc thnhphn cao
UML/NN 4
Coupling (Lin kt)
A B
C
D
Coupling mnh
Coupling yu
8/9/2019 UML Chuong 6 Nguyenlythietkelop
2/22
UML/NN 5
Hai loi coupling
Hai loi coupling: tng tc v ktha Coupling tng tc: chia thnh 5 loi
Data coupling Stamp coupling Control coupling Common coupling Content coupling
Coupling ktha
UML/NN 6
Data coupling
Lin kt gia cc thnh phn l d liunguyn thoc phc hp
V d:
Class_A
+ Operation_A () : Integer
Class_B
+ Operation_B (Integer Para_1) : Integer
integerOperation_A(){int x,y;Class_B cB;
.y = cB.Operation_B(x);}
UML/NN 7
Stamp coupling
Stamp coupling: lin kt gia hai thnhphn l mt phn ca cu trc hoc tonb cu trc
V d:integer Operation_A()
{
int x,y;
Class_B cB; Class_C c;
.
y = cB.Operation_B(c);
}
UML/NN 8
Control coupling
Control coupling: mt thnh phn gicc yu tiu khin ti mt thnh phnkhc th hai thnh phn ny c controlcoupling.
+ A(){int x = 1;
sub(x, dk)}
+ sub(x, dk){
}
dk=1 =2
8/9/2019 UML Chuong 6 Nguyenlythietkelop
3/22
UML/NN 9
Common v Content coupling
Common couping: hai thnh phn cngtham chiu n mt cu trc ton cc(hoc bin ton cc) th c lin h gi lCommon coupling.
Content coupling: nu mt thnh phntham kho trc tip n ni dung scamt thnh phn khc th c gi lcontent coupling.
UML/NN 10
Mc lin kt
Rt thpThpTrung bnh
Cao
Rt cao
Data coupling
Stamp coupling
Control coupling
Common coupling
Content coupling
Xp hng ph thucTn coupling
UML/NN 11
Coupling ktha
L coupling gia lp tng qut v lpchuyn bit trong cu trc phn cp: Linkt gia lp tng qut v lp chuyn bitcng cht cng tt: -> khng ktha nhng thuc tnh khng
lin quan hoc khng cn thit Nu mt lp chuyn bit chng ln hu ht
cc method hoc khng sdng n t lptng qut coupling ktha yu thay itip cn tng qut ho v chuyn bit ho
UML/NN 12
Tin 2: tin thng tin
Gim ti a thng tin cc i tng thit k Tch thnh nhiu i tng n gin hn Tch thnh cu trc phn cp ktha
i tng phc tp Nhiu i tngn gin
8/9/2019 UML Chuong 6 Nguyenlythietkelop
4/22
UML/NN 13
V d
LpHon()
Ho n
InHon()
Ho n
My In
LpHon()
InHon()
UML/NN 14
Ni dung
5.1 Cc tin trong thit k 5.2 Hng tip cn trong xc nh lp 5.3 Xc nh mi quan h gia cc lp 5.4 Xc nh thuc tnh v hnh vi ca lp
UML/NN 15
6.2 Cc cch tip cn xc nh lp
1. Tip cn theo thc thnghip v2. Tip cn theo cm danh t3. Tip cn theo phn loi4. Tip cn theo phn tch hot ng use case
UML/NN 16
1. Tip cn theo thc thnghip v
i vi cc thc thsvt: kim chngxem c nhu cu qun l thng tin v thcthny trong h thng khng? Nu c, xc nh mt lp trong s phn tch
biu din cho thc thny Xc nh tn lp: tn ca svt Thuc tnh: bsung cc thuc tnh m ty
thng tin m h thng c nhu cu qun l vitng
8/9/2019 UML Chuong 6 Nguyenlythietkelop
5/22
UML/NN 17
V d:
Hnh l
NVL
Hng ho
Hnh l
NVL
Hng ho
UML/NN 18
Tip cn theo thc thnghip v
i vi thc ththng tin: Nu thc thm t thng tin v mt hot ng giao
dch h thng th chuyn thnh mt lp trong mhnh phn tch
Nu thc th l mt dng thng tin tng hp cthtch thnh nhiu lp mi hoc bsung thng tincho cc lp ang tn ti
Ho on
Ho n
Th th vin
Th th vin
UML/NN 19
V d
HOHONNS H: Ngy:..//Khch hng: ..a ch:..Ngi lp:..
20003000
ngi
1001000
Slng
CiKg
VT
H1H7
Tnhng
001004
Ms
Tng tr gi:
Ho n
Khch hng
Hng
Chi tit H
UML/NN 20
Worker
Nhn vin bn hng Nhn vin qun l Th kho
Nhn vin
c gi
c gi
Nh CC
NhCCp
8/9/2019 UML Chuong 6 Nguyenlythietkelop
6/22
UML/NN 21
V d: Ha n
Khch hng NgI qun l
H s khch hng Ho n Th khch hng thn thit
0..n 1
1
0..n 0..n 0..n
1
1
Khch hng
Ho n
Th KHTT0..11
1
1..n
UML/NN 22
2. Tip cn theo cm danh t
xut bi Rebecca Wirfs-Brock, BrianWilkerson, v Lauren Wiener
tng: xc nh cc lp thng qua vic ctrong cc vn bn m t use case hoccc m tyu cutm kim v trch lccc cm danh t
Class khng
thch hp(irrelevant)
Class m(fuzzy class)
Class thch hp(relevant class)
UML/NN 23
Tip cn theo cm danh t(noun phrase)
M t use case,yu cu
M tM t use case,use case,yu cyu cuu
Xc nh cc danht, cm danh t
XXc c nh cnh cc danhc danhtt, c, cm danh tm danh t
Danh t, cmdanh t
Danh tDanh t, c, cmmdanh tdanh t
Loi b cc danht m t class giLoLoi bi b ccc danhc danhtt m tm t class giclass gi
Danh t, cmdanh t ng vin
Danh tDanh t, c, cmmdanh tdanh t ng vinng vin
ng nht ccclass trng nghang nhng nht ct ccc
class trclass trng nghng nghaa
Danh sch ccclass
Danh sDanh sch cch cccclassclass
Loi cc danh tthuc tnh
LoLoi ci cc danh tc danh tthuthuc tc tnhnh
Loi cc classkhng c mc tiu
LoLoi ci cc classc classkhng ckhng c mmc tiuc tiu
UML/NN 24
ATM
Bao thBn k sNgn quTinPIN
PIN khng hp lThng ipMt khuM PIN
Mu tinBc
H thngGiao dchLch sgiao dch
Ti khonSdti khonStinTin trnh ng nhpThATMMy ATM
Ngn hng
Khch hng ngn hng
ThTin mtKhch hng
Ti khon khch hngVND
8/9/2019 UML Chuong 6 Nguyenlythietkelop
7/22
UML/NN 25
Loi b cc lp khng thch hp
Bao th
Bn k s
Ngn quTinPIN
PIN khng hp lThng ipMt khuM PIN
Mu tinBc
H thngGiao dchLch sgiao dch
Ti khonSdti khonStinTin trnh ng nhpThATMMy ATM
Ngn hng
Khch hng ngn hng
ThTin mtKhch hng
Ti khon khch hngVND
UML/NN 26
ng nht cc ng vin trng lp
Khch hng, Khch hng ngn hng = Khch hngTi khon, Ti khon khch hng = Ti khonPIN, M PIN = PINTin, Ngn qu = Ngn quTh ATM, Th = Th ATM
UML/NN 27
Cc lp cn li
Bao thBn k sNgn quTinPIN
PIN khng hp lThng ipMt khuM PIN
Mu tinBcH thngGiao dchLch sgiao dch
Ti khonSdti khonStinTin trnh ng nhpThATMMy ATM
Ngn hng
Khch hng ngn hng
ThTin mtKhch hng
Ti khon khch hngVND
UML/NN 28
Danh t, cm danh tc thl thuc tnh
Xc nh danh t, cm danh tc thl thuc tnh: Chc sdng nh l gi tr Khng c nhiu hn mt c trng ring, hoc ch
m t mt c trng ca i tng khc V d: h thng ATM (tip tc phn tch)
Stin: mt gi tr, khng phi mt lp Sdti khon: thuc tnh ca lp Ti khon PIN khng hp l: mt gi tr, khng phi mt lp Mt khu: mt thuc tnh (c thca lp Khch hng) Lch sgiao dch: mt thuc tnh (c thca lp Giao
dch) PIN: mt thuc tnh (c thca lp Khch hng)
8/9/2019 UML Chuong 6 Nguyenlythietkelop
8/22
UML/NN 29
Danh sch danh t, cm danh tcn li
Bao thBn k sNgn quTinPIN
PIN khng hp lThng ipMt khuM PIN
Mu tinBcH thngGiao dch
Lch sgiao dch
Ti khonSdti khonStinTin trnh ng nhpThATMMy ATM
Ngn hng
Khch hng ngnhng
ThTin mtKhch hng
Ti khon khchhng
VNDUML/NN 30
Loi b cc ng vin
Loi b cc ng vin khng mc tiu hoc khngthuc phm vi h thng: Thng ip H thng Mu tin Ngn qu VND Tin mt Tin trnh ng nhp
Bao thBn k sNgn quTinPIN
PIN khng hp lThng ipMt khuM PIN
Mu tinBcH thngGiao dch
Lch sgiao dch
Ti khonSdti khonStinTin trnh ng nhpThATMMy ATM
Ngn hng
Khch hng ngnhng
ThTin mtKhch hng
Ti khon khchhng
VND
UML/NN 31
ATM: cc lp
My ATM: cung cp mt giao din ti ngn hng ThATM: cung cp mt khch hng vi mt kho
ti mt ti khon Khch hng: mt khch hng l mt c nhn s
dng my ATM, c mt ti khon. Ngn hng: cc khch hng ph thuc vo ngn
hng. N l mt ni tp trung cc ti khon v x lcc giao dch ti khon.
Ti khon: n m hnh ho mt ti khon cakhch hng v cung cp cc dch v v ti khoncho khch hng
Giao dch: m t mt giao tc ca khch hng khisdng thATM. Mt giao tc c lu trvi thigian, ngy, loi, stin, v sd
UML/NN 32
3. Tip cn theo phn loi
Tip cn theo phn loi: phn loi cc lp cah thng da trn cc mu chung. Lp khi nim (concept): Mt khi nim l mt
quan nim hoc shiu bit ring bit v thgii.Lp khi nim bao gm cc nguyn l c dng tchc hoc lu trcc hot ng v cc traoi v mt qun l. V d: cc lp khi nim c thl: phng php, hiu nng,
m hnh, mn hc
Lp skin (event): Lp skin l cc im thi gian cn c lu tr. Cc s
vic xy ra ti mt thi im, hoc mt bc trong mt dytun tcc bc
V d: ng k, ho n, n hng, phiu nhp,
8/9/2019 UML Chuong 6 Nguyenlythietkelop
9/22
UML/NN 33
Tip cn theo phn loi
Lp tchc (organisation): tp hp con ngi,ti nguyn, phng tin, hoc nhng nhm xc nhchc nng ngi dng V d: n v, b phn, phng ban, chc danh,
Lp con ngi (people): lp con ngi thhincc vai tr khc nhau ca ngi dng trong victng tc vi h thng. Nhng i tng nythng l ngi dng h thng hoc nhng ngikhng sdng h thng nhng thng tin v hc lu trbi h thng V d: Sinh vin, khch hng, gio vin, nhn vin,
UML/NN 34
Tip cn theo phn loi
Lp v tr (place): Cc v tr vt l m h thng cnm t thng tin v n. V d: to nh, kho, vn phng, chi nhnh, i l,
Lp svt hu hnh v thit b: cc i tngvt l hoc cc nhm ca i tng hu hnh m cthcm nhn trc quan v cc thit b m h thngtng tc. V d: xe hi, my bay, l cc svt hu hnh; thit b
cm ng nhit l mt lp thit b.
UML/NN 35
V d: h thng ATM
Cc lp khi nim:
Cc lp skin:
Cc lp tchc:
TiKhon
GiaoDch
NgnHng
UML/NN 36
H thng ATM
Cc lp con ngi:
Cc lp svt hu hnh v thit b
KhchHng
MyATM ThATM
8/9/2019 UML Chuong 6 Nguyenlythietkelop
10/22
UML/NN 37
4. Tip cn theo phn tch hot ng usecase
Tc nhn
H thngi tng no ca hthng s trc tip tngtc vi tc nhn?
:i tngi tng no tip theoc chuyn giao trchnhim ?
:i tng
Kt thc m t kch bn ca use case cho phpxc nh tt c cc lp lin tham gia
UML/NN 38
V d: h thng thvin
c gi Th th
Yu cu mn schKim tra th
:H sc gi
Kim tra iu kin[Khng tho]T chi
Cp nht h sc gi
Sch gi c gi
:Sch
Cp nht li trng thi sch
T chi thkhng hp l
Use case Mn sch
UML/NN 39
V d 1
Phn tch use case Gii quyt PIN khng hpl. Cc hot ng khch hng c ththc hinvi h thng: a vo thATM Nhp m PIN Rt thATM
UML/NN 40
V d 3
Phn tch usecase Rt tin
: KhchHngNgnHng : MyATM : TiKhon
a vo th ATM
Yu cu PIN
Nhp m PIN Kim tra m PINM PIN hp l
Yu cu s tin
Nhp s tin
X l giao tc rt
Giao tc thnh cngPhn phi tin mt
Yu cu ly th
Ly thYu cu tip tc
Kt thc
In ho n
8/9/2019 UML Chuong 6 Nguyenlythietkelop
11/22
UML/NN 41
Ni dung
5.1 Cc tin trong thit k 5.2 Hng tip cn trong xc nh lp 5.3 Xc nh mi quan h gia cc lp 5.4 Xc nh thuc tnh v hnh vi ca lp
UML/NN 42
Xc nh mi kt hp association
Hng dn xc nh mi kt hp: Mt sph thuc gia hai hay nhiu lp c th
thit lp thnh mi kt hp. Mi kt hp thngtng ng vi mt ng thoc cm gii tnhl thnh phn ca, lm vic cho, chatrong,
Mt tham chiu tmt lp n mt lp khc lmt mi kt hp.
UML/NN 43
Cc mi kt hp
Mi kt hp v tr (location): lin ktti, thnh phn ca, lm vic ti, .
V d:
Nhn Vin Chi NhnhLm vic ti
Bui Hc Phng HcHc ti
UML/NN 44
Cc mi kt hp
Mi kt hp s hu: ca, c, thuc,
Cu Th i BngL thnh phn ca
Phng To NhCha trong
8/9/2019 UML Chuong 6 Nguyenlythietkelop
12/22
UML/NN 45
Cc mi kt hp
Mi kt hp truyn thng, lin lc(communication):t ti, trao i vi, gicho, tip nhn t,
n Hng Nh CCpt ti
Bn Yu Cu Phng BanGi ti
UML/NN 46
Cc mi kt hp
Mi kt hp phn thn: l mi quan hc thit lp gia mt i tng ca mtlp vi mt i tng khc cng thuc lp.
Nhn Vin Thnh Phn
Qun l Cha trong
UML/NN 47
V d: h thng ATM
MyATM
NgnHng
KhchHng
TiKhon GiaoDch
1
C 0..n1..n
1
Ca
Mi kt hp shuMi kt hp shu
Thuc
Thuc v
UML/NN 48
Loi b cc mi kt hp khng cn thit
Mi kt hp a phn: l mi kt hp giaba lp tr ln, mi kt hp ny phc tptrong cch thhin Nu c th, pht biuli n dng mi kt hp nh phn
8/9/2019 UML Chuong 6 Nguyenlythietkelop
13/22
UML/NN 49
Loi b cc mi kt hp khng cn thit
Mi kt hp trc tip dtha: l cc mikt hp c nh ngha trong ngnghaca nhng mi kt hp khc (cn gi l mikt hp suy din hoc bc cu)
Phiu t hng
Nh cung cp Phiu giao hng
t ti Lin quan
T
0..*1
0..*
1 0..1
1
UML/NN 50
Xc nh bn scho mi kt hp: (min, max)
1; 0..1; 1..*; 0..*; a..* (a l hng)
Bn Yu Cu Phng BanGi ti0..*
1
Bn s
UML/NN 51
V d
Cu Th i BngL thnh phn ca
Phng To NhCha trong
2..*
1
1..*
1..*
n Hng Nh CCpt ti 1
0..*
UML/NN 52
H thng ATM
MyATM
NgnHng
KhchHng
TiKhon GiaoDch
1
C 0..n1..n
1
Ca
ThucThuc v
0..*
1
1..*
1
1
1..*
1
1..*
8/9/2019 UML Chuong 6 Nguyenlythietkelop
14/22
UML/NN 53
Lp kt hp (Association class)
Ho n Sn Phm0..*
1..*
Chi Tit Ho nsLngnGi
Sinh Vin Kho Hc
Kt QuimTB
xpLoi
0..*
1..*
UML/NN 54
Lp kt hp
Ho n Sn Phm0..*
1..*
Chi Tit HonsLngnGi
Ho n Sn PhmChi Tit Ho n
sLngnGi
1
1..*
0..*
1
UML/NN 55
Xc nh mi quan h
Nng cp mi kt hp: Xc nh mi kt hp tng qut chuyn bit
(generalization): Thhin quan h ktha giacc lp v mt cu trc phn cp xc nhnhng dng ktha ny Tip cn top-down:
Tmt lp chng ta tm kim cm danh tcha tn lp vtnh t(hoc danh t). nh gi xem cm danh tny cth l mt trng hp c bit cn c qun l trong hthng khng
Tm kim xem c nhng c trng ring ca lp Xy dng mi kt hp chuyn bit t lp ny n lp banu
UML/NN 56
Xc nh mi quan h
Ho n
Ho n giao hng
GiaoDch
GiaoDchRt GiaoDchGi
Ghi ch: ch cn a vo cc lp chuyn bit m chng ta xc nh c cc c trngring (thuc tnh, method, lin kt) ca n trong h thng.
8/9/2019 UML Chuong 6 Nguyenlythietkelop
15/22
UML/NN 57
Xc nh mi quan h
Nhn vin
Nhn Vin VP Cng Nhn
Trng Phng Th K NV Bn Hng
UML/NN 58
Xc nh mi quan h
Nng cp mi kt hp: Xc nh mi kt hp tng qut chuyn bit
(generalization): Tip cn bottom-up:
Tm kim trong cc lp xc nh xem c ccthuc tnh v phng thc ging nhau. Sau chng ta c thgom nhm v a cc thuctnh v phng thc chung ny ln mt lptng qut (tru tng)
To mi kt hp tng qut ho tcc lp nyn lp tng qut mi xc nh
UML/NN 59
Xc nh mi quan h
Ho n n t hng
Hng ho
Chng t
UML/NN 60
Xc nh mi quan h
Khch Hng Nh CCp
i Tc
8/9/2019 UML Chuong 6 Nguyenlythietkelop
16/22
UML/NN 61
Xc nh mi quan h Xc nh stng quan:
Lp A1 Lp A2
Lp A
(complete, disjoint)
(incomplete, disjoint)
(complete, overlapping)
(incomplete, overlapping)
UML/NN 62
Xc nh mi quan h
Khch Hng Nh CCp
i Tc
(incomlete, disjoint)
Nhn Vin VP
Trng Phng Th K NV Bn Hng
(incomplete, overlapping)
Khch Hng
Khch Quen
(incomplete)
UML/NN 63
Xc nh mi quan h Vn a tha k:
Phc tp trong vn ktha Khng nn sdng (phin bn gc UML
khng a vo)
Gio Vin Nh Nghin Cu
Gvin Nh NgCu
UML/NN 64
Xc nh mi quan h Xc nh mi kt hp thnh phn (a-part-
of, aggregration) c trng c bn
Tnh bc cu: Nu lp A l mt thnh phn ca lp Bv lp B l thnh phn ca lp C lp A l thnhphn ca lp C
Tnh i xng: nu lp A l thnh phn ca lp B thlp B khng phi l thnh phn ca lp A
Lp A Lp B
Lp C
8/9/2019 UML Chuong 6 Nguyenlythietkelop
17/22
UML/NN 65
Xc nh mi quan h Xc nh mi kt hp thnh phn (a-part-
of, aggregration) Tp hp: mt i tng vt l c hnh
thnh tcc i tng vt l thnh phnkhc
To Nh Xe T
Phng Thng Xe Bnh Xe ng C
1
1..*
1 1 1
14..81
n Hng
Dng H
1
1..*
UML/NN 66
Xc nh mi quan h
Vt cha: mt i tng vt l chang cc thnh phn nhng khng ccu to bi cc thnh phn
Container Phng Hc
Hng Ho Bn Gh Projector
1
1..*
0..1 0..1 0..1
0..10..*0..*
UML/NN 67
Xc nh mi quan h
Tp hp thnh vin: mt i tngkhi nim cha cc thnh phn c thvtl hoc khi nim
Phng Ban
Nhn Vin
1
0..*
i Bng
Cu Th
1
0..*Lp vt l
Lp khi nim
UML/NN 68
H thng ATM
MyATM
NgnHng
KhchHng
TiKhon GiaoDch
1
C 0..n1..n
1
Ca
ThucThuc
0..*
1
1..*
1
1
1..*
1
1..*
8/9/2019 UML Chuong 6 Nguyenlythietkelop
18/22
UML/NN 69
Ni dung
5.1 Cc tin trong thit k 5.2 Hng tip cn trong xc nh lp 5.3 Xc nh mi quan h gia cc lp 5.4 Xc nh thuc tnh v hnh vi ca
lp
UML/NN 70
Xc nh thuc tnh
Cu hi: Thng tin g vi tng sc qun l ?
Nguyn tc: Tn: danh t; cm danh t n gin: ch dng thuc tnh din t
trng thi i tng giai on phn tch(thuc tnh sc bsung chi tit hn ccgiai on tip theo)
Khng qu quan tm v vic phi khm phht thuc tnh
UML/NN 71
V d: H thng ATM
Lp Khch Hng: Phn tch ln lt tt ccc use case c lin quan n lp KhchHng nh l: ng nhp, X l PIN khnghp l. Cc thuc tnh ca lp khch hngnhsau:
KhchHng
tnKhchHnghKhchHng
mPINsTh
UML/NN 72
ATM: Thuc tnh
GiaoDchRt GiaoDchGi
MyATMaChtrngThi
KhchHngtnKhchHnghKhchHngmPINsTh
GiaoDchgiaoDchIDngyGiaoDchthiGianGiaoDchloiGiaoDchsTinsD
TiKhonsTiKhonloiTiKhonsD
1
1ca
0..n1
c
NgnHng
sTinHinTi
8/9/2019 UML Chuong 6 Nguyenlythietkelop
19/22
UML/NN 73
Xc nh method
Cu hi: Cc i tng chu trch nhim x l g v thng
tin ca n cung cp dch v cho h thng? Nguyn tc:
Tn: ng t+ bng Ch quan tm n cc method c phm vi ton cc
(public), cc method c phm vi cc b sc phthin trong giai on thit kci t (vd: constructor, .)
Cc method chu trch nhim v cc thao tc ln ccthuc tnh ca i tng: truy vn, cp nht, c v ghi
UML/NN 74
Xc nh method qua phn tch use case
Phn tch cc dng message trong stun txem c thchuyn mt hotng thnh mt method khng?
Nu c, t tn cho method ng vi hotng
UML/NN 75
V d
lp TiKhon Rt Tin Gi Tin Xem thng
Tin Ti Khon
: KhchHng : MyATM : TiKhon
Yu cu s tin
Nhp s tin
X l giao tc rt
Giao tc thnh cngPhn phi tin mt
Yu cu ly th
Ly thYu cu tip tc
Kt thc
In ho n
TiKhonsTiKhon
loiTiKhonsD
rtTin()
Use case Rt TinUML/NN 76
V d
Lp TiKhon Rt Tin Gi Tin Xem thng Tin Ti
Khon
: KhchHng : MyATM : TiKhon
Yu cu s tin
Nhp s tin
X l giao tc gi
Giao tc thnh cng
Yu cu ly th
Ly thYu cu tip tc
Kt thc
In ho n
TiKhonsTiKhon
loiTiKhonsD
rtTin()
Use case Rt Tin
giTin()xemTiKhon()
8/9/2019 UML Chuong 6 Nguyenlythietkelop
20/22
UML/NN 77
ATM: method
GiaoDchRt GiaoDchGi
KhchHngtnKhchHnghKhchHngmPINsTh
kimTraMtKhu()
GiaoDchgiaoDchIDngyGiaoDchthiGianGiaoDchloiGiaoDchsTinsD
TiKhonsTiKhonloiTiKhonsD
rtTin()giTin()
11
ca
0..n1
c
NgnHng
MyATMaChtrngThisTinHinTi
khingMy()ngMy()
xemTiKhon()
1
Ghi ch: cc method c pht hin trong giaion ny thng i din xl cho mt use case
UML/NN 78
Tinh chthuc tnh
Kiu thuc tnh Thuc tnh n tr Thuc tnh a tr: c thdng cc cu trc, list,
array, bag khai bo ci t.V d: thuc tnh sinThoi ca lp NhnVin c
th l a tr aCh[3]: String aCh[1..3]: String
UML/NN 79
Hin th thuc tnh
: =
+ : ton cc # : bo v - : cc b
Ghi ch: phm vi mc nh ca cc thuc tnh l cc bUML/NN 80
GiaoDchRt GiaoDchGi
KhchHng#tnKhchHng:String#hKhchHng:String#mPIN::String#sTh:String
GiaoDch#giaoDchID:String#ngyGiaoDch:Date#thiGianGiaoDch:Time#loiGiaoDch:String#sTin:float#sD:float
MyATM#aCh:String#trngThi:String
TiKhon#sTiKhon:String#loiTiKhon:String#sD:float
1
1ca
0..n1
c
NgnHng
#tiKhon:TiKhon
#giaoTc:GiaoDch#khchHng:KhchHng
#sTinHinTi:float
Cc thuc tnhci t lin kt
ATM : thuc tnh lp
8/9/2019 UML Chuong 6 Nguyenlythietkelop
21/22
UML/NN 81
Hin th method
:
Cc method a s l cc method c phm viton cc
V d: +get_Tn(): String +get_STiKhon(vtiKhon : TiKhon): String
UML/NN 82
Thit kni dung method
Cc method c xcnh trong giai on
phn tch
Thit k bngvic phn tch
s use case
Cc method c thit k Cc method va pht hin
UML/NN 83
ATM: kimTraMtKhu
KhchHng::+ kimTraMtKhu(sTh:String,vPIN:String): vkhchHng: KhchHng
: KhchHng: MyATM
KimTraMtKhu(vSTh, vPIN)
vKhchHng = ly_KhchHng(sTh, vPIN)
Hin th thng bo PIN khng hp l, vui lng nhp li
Cung cp quyn truy cp cho ngi dng
vKhchHng
Method mi c pht hin
UML/NN 84
ATM: rtTin
TiKhon::+ rtTin(sTin: foat )
maTraVe = "So tien
rut vuot qua so du"
soDu = soDu -
soTien
#capNhatTaiKhoan(so
TaiKhoan, soDu)
#taoGiaoTac("Rut",
soTien, soDu)
Cap nhat lai so du tai khoan
Tao mot giao tac rut tien cho tai khoan
soTien > soDu
soTien
8/9/2019 UML Chuong 6 Nguyenlythietkelop
22/22
UML/NN 85
H thng ATM
GiaoDchRt GiaoDchGi
KhchHng#tnKhchHng:String#hKhchHng:String#mPIN::String#sTh:String
GiaoDch#giaoDchID:String#ngyGiaoDch:Date#thiGianGiaoD ch:Time#loiGiaoDch:String#sTin:float#sD:float
MyATM#aCh:String#trngThi:String
TiKhon#sTiKhon:String#loiTiKhon:String#sD:float
1
1
ca
0..n1
c
NgnHng
#tiKhon:TiKhon
#giaoTc:GiaoTc#khchHng:KhchHng
#sTinHinTi:float
+kimTraMtKhu()#ly_KhchHng()
+khingMy()+ngMy()
+ktNi()+ngKtNi()
#ttMy()
+giTin()+rtTin()#cpNhtTiKhon()#toGiaoTc()
+gnThngTinGiaoDch()
#cpNhtSTin()
Recommended