You are on page 1of 51

M hnh ha phn mm

Nguyn Th Minh Tuyn

Ni dung ca slide ny da vo cc slides ca Ian Sommerville


Ni dung

M hnh ng cnh

M hnh tng tc

M hnh cu trc

M hnh hnh vi

Nguyn Th Minh Tuyn Nhp mn CNPM


M hnh ha h thng (system
modeling)
vL quy trnh pht trin cc m hnh tru
tng ca mt h thng, trong mi m
hnh biu din mt gc nhn.
vHin nay m hnh ha h thng tr
thnh mt phng tin biu din mt h
thng s dng mt s k hiu ha UML
(Unified Modeling Language).
vCc m hnh
gip cho ngi phn tch hiu c chc nng ca
mt h thng
c s dng giao tip vi khch hng.

Nguyn Th Minh Tuyn 3 Nhp mn CNPM


M hnh cho h thng tn ti v
cho h thng mi
v Cc m hnh ca nhng h thng c sn
c s dng trong sut giai on cng ngh yu cu.
Gip lm r vic h thng lm c g.
C th c s dng nh l mt c s tho lun v mnh
yu ca n. T s tm ra nhng yu cu cho h thng mi.
v Cc m hnh cho h thng mi
c s dng trong sut qu trnh cng ngh yu cu.
H tr vic gii thch cc yu cu cho cc stakeholder ca h
thng
K s s dng cc m hnh ny tho lun v cc thit k v
vit ti liu h thng cho phn ci t.
v Quy trnh cng ngh hng m hnh (model-driven
engineering process) c th pht sinh mt phn hay
ton b ci t h thng t m hnh h thng.

Nguyn Th Minh Tuyn 4 Nhp mn CNPM


Cc gc nhn h thng
M hnh ha tng
M hnh ha ng tc gia mt h
cnh hay mi trng thng v mi trng
ca h thng. ca n, hoc gia
cc component ca
mt h thng.

external interaction
perspective perspective

System

behavioral structural
perspective perspective

M hnh ha t chc
M hnh ha hnh vi ca mt h thng
ng ca h thng hay cu trc ca d
v cch n tr li s liu c x l bi
kin nh th no. h thng.

Nguyn Th Minh Tuyn 5 Nhp mn CNPM


Cc loi biu UML
UML c nhiu loi biu h tr cho vic to ra nhiu loi m hnh h thng khc nhau.
C 5 loi sau y c th biu din c cc yu t cn thit ca mt h thng.

Biu hot ng (activity diagram)


Ch ra cc hot ng trong mt quy trnh hay trong vic x l d liu.

Biu use case (use case diagram)


Ch ra cc tng tc gia mt h thng v mi trng ca n.

Biu tun t (sequence diagram)


Ch ra cc tng tc gia cc actor v h thng, v gia cc component ca
h thng vi nhau.

Biu lp (class diagram)


Ch ra cc lp i tng trong h thng v cc quan h gia cc lp ny.

Biu trng thi (state diagram)


Ch ra h thng tng tc vi cc s kin bn trong v bn ngoi nh th
no.

Nguyn Th Minh Tuyn 6 Nhp mn CNPM


Cch s dng cc m hnh ha

vL phng tin tho lun v h thng c


sn hoc h thng ra
Cc m hnh khng y v khng chnh xc vn c
th chp nhn v vai tr ca chng l h tr vic tho
lun.
vL mt cch vit ti liu v h thng c sn
Cc m hnh nn c biu din h thng mt cch
chnh xc nhng khng cn y .
vL mt m t chi tit v h thng, c th c
s dng pht sinh vic ci t h thng
Cc m hnh phi va ng v y .

Nguyn Th Minh Tuyn 7 Nhp mn CNPM


Ni dung

M hnh ng cnh

M hnh tng tc

M hnh cu trc

M hnh hnh vi

Nguyn Th Minh Tuyn Nhp mn CNPM


M hnh ng cnh (context model)

vc dng minh ha cho ng cnh


vn hnh ca mt h thng
Ch ra ci no nm bn trong h thng, ci no
nm bn ngoi h thng.
vCc vn v x hi v t chc c th
nh hng n quyt nh a ra v tr
ng ranh gii h thng.
vCc m hnh kin trc ch ra kin trc
ca h thng v mi quan h ca n vi
cc h thng khc.
Nguyn Th Minh Tuyn 9 Nhp mn CNPM
Ranh gii h thng

vCc ranh gii h thng c thit lp nh


ngha ci g bn trong v ci g bn ngoi
h thng.
Ch ra cc h thng khc c s dng hay ph thuc vo h
thng ang xy dng nh th no.
vV tr ca ng ranh gii h thng c nh
hng su sc n yu cu h thng.
vnh ngha mt ng ranh gii h thng l
mt quyt nh lin quan n chnh tr
C th c cc p lc pht trin ng ranh gii h thng sao
cho c th lm tng/gim nh hng hoc tng gim dng cng
vic ca cc b phn khc nhau trong mt t chc.

Nguyn Th Minh Tuyn 10 Nhp mn CNPM


Ng cnh ca h thng MHC-PMS

Patient Record
System
Management
Admissions System
Reporting System

MHC-PMS

HC Statistics
Prescription System
System

Appointments
System

Nguyn Th Minh Tuyn 11 Nhp mn CNPM


Ng cnh ca mt h thng ATM

Security system
Branch Accounting
Account DB
system

ATM
System

Branch counter
Usage DB
system
Mantainance
system

Nguyn Th Minh Tuyn 12


Gc nhn v mt quy trnh

vCc m hnh ng cnh


ch ra cc h thng khc trong mi trng,
khng ch ra vic n c pht trin nh th no trong
mi trng .
vCc m hnh quy trnh lm ni r vic h thng
ang pht trin c s dng trong cc quy
trnh thng mi nh th no.
vCc biu hot ng UML c th c dng
nh ngha cc m hnh quy trnh thng
mi (business process model).

Nguyn Th Minh Tuyn 13 Nhp mn CNPM


M hnh quy trnh ca vic giam gi
bt buc i vi bnh nhn

Transfer to
[not available] police station
Confirm
detention
decision Find secure
place
Transfer to
Inform
[available] secure hospital
[dangerous] social care
Inform
patient of Inform next
rights of kin

Record Update
Admit to
detention register
hospital
decision [not
dangerous]
system
system MHC-PMS
system Admissions
MHC-PMS system

14
M hnh quy trnh mua thit b
Deli very
note

Checked Delivery
Equipment note
spec.
Specify spec. Accept Check
Validate Get cost
equipment delivery of delivered
specification estimates
required equipment items
Spec. +
supplier + Installation
Equipment estimate Order
instructions
spec. Supplier list notification
Place
Supplier Find Choose Install
equipment
database suppliers supplier equipment
Order order
details plus
blank order Installation
form acceptance

Accept
delivered
Check ed and
equipment
signed or der f orm

Equipment
details

Equipment
database

Nguyn Th Minh Tuyn 15


Ni dung

M hnh ng cnh

M hnh tng tc

M hnh cu trc

M hnh hnh vi

Nguyn Th Minh Tuyn Nhp mn CNPM


M hnh tng tc

vM hnh tng tc ngi dng l quan trng v


n h tr vic nhn din cc yu cu ngi
dng.
vM hnh ha tng tc ca mt h thng vi h
thng khc lm ni r cc vn v mt giao
tip c th pht sinh.
vM hnh ha tng tc component gip ta hiu
liu mt cu trc h thng c a ra c p
ng c hiu nng v tin cy ca h thng
hay khng.
vC th s dng biu use case v biu
tun t m hnh ha tng tc.

Nguyn Th Minh Tuyn 17 Nhp mn CNPM


M hnh ha use case

vV ngun gc, cc use case c pht


trin h tr cho vic thu thp yu
cu v hin nay n c tch hp vo
trong UML.
vMi use case biu din mt tc v ri
rc v cha tng tc bn ngoi vi mt
h thng.
vCc actor trong mt use case c th l
ngi hoc cc h thng khc.

Nguyn Th Minh Tuyn 18 Nhp mn CNPM


MHC-PMS: Truyn d liu

vMt use case trong h thng MHC-PMS

Transfer data

Medical receptionist Patient record system

Nguyn Th Minh Tuyn 19 Nhp mn CNPM


Bng m t
MHC-PMS: truyn d liu
Actors Medical Receptionist (L tn y t), Patient Record
System (h thng h s bnh nhn PRS)
M t Mt l tn c th truyn d liu t h thng MHC-PMS
ti CSDL h s bnh nhn. Thng tin c truyn c
th l thng tin b sung v bnh nhn (a ch, s in
thoi, ...) hoc mt bn tm tt v cc triu chng v
vic iu tr ca bnh nhn.

D liu Thng tin v c nhn bnh nhn, bn tm tt v vic


iu tr.
Tc ng Lnh ngi dng c a ra bi l tn y t.
Tr li Xc nhn l PRS c cp nht.
Ch thch L tn phi c quyn hn v bo mt ph hp truy
cp vo thng tin bnh nhn v PRS.

20
Cc use cases v tng tc ca
Medical Receptionist

Register
patient

Unregister
patient

View patient
info.
Medical
receptionist
Transfer data

Contact
patient

21
Biu tun t
vL mt phn ca UML v c s dng m
hnh ha tng tc gia cc actor v cc i
tng trong mt h thng.
vCh ra mt chui tun t cc tng tc xy ra
trong mt use case c th no hoc mt
trng hp ca use case.
vCc i tng v cc actor lin quan c lit
k pha trn biu , vi mt ng nt t
v theo chiu ng t cc i tng ny.
vCc tng tc gia cc i tng ny c
bng nhng ng mi tn c ch thch.

Nguyn Th Minh Tuyn 22 Nhp mn CNPM


Biu tun t xem thng tin
bnh nhn
Medical Receptionist

P: PatientInfo D: MHCPMS-DB AS: Authorization

ViewInfo (PID)
report (Info, PID, i tng v
UID) cc actor
authorize (Info,
thng ip UID)
(message) chu k sng
(lifeline) ca
authorization i tng

alt
[authorization OK] Patient info
thng ip tr
iu kin v (return
[authorization fail] Error (no access)
message)

23
Biu tun t truyn d liu
Medical Receptionist PRS

P: PatientInfo D: MHCPMS-DB AS: Authorization

login ( )
ok

alt
[sendInfo]
updateInfo( ) updatePRS (UID )
authorize (TF, UID)
authorization
update (PID)
update OK
Message (OK)

[sendSummary]
UpdateSummary( )
summarize (UID )
authorize (TF, UID)
authorization

:summary

update (PID)
update OK
Message (OK)

logout ( )

24
Ni dung

M hnh ng cnh

M hnh tng tc

M hnh cu trc

M hnh hnh vi

Nguyn Th Minh Tuyn Nhp mn CNPM


M hnh cu trc

vCc m hnh cu trc ca phn mm hin th


cu trc ca mt h thng v cc component
to nn h thng v mi quan h ca
chng.
vCc m hnh cu trc c th l
Cc m hnh tnh (static model), ch ra cu trc ca thit
k h thng,
Hoc cc m hnh ng (dynamic model), ch ra t chc
ca h thng khi n c thc thi.
vTo ra cc m hnh cu trc ca mt h thng
khi tho lun v thit k kin trc h thng.

Nguyn Th Minh Tuyn 26 Nhp mn CNPM


Biu lp (class diagram)
v c s dng khi pht trin mt m hnh h
thng hng i tng ch ra
cc lp trong mt h thng
v mi lin h gia cc lp .
v Mt lp i tng c th c xem nh mt nh
ngha tng qut v mt loi i tng h thng.
v Mt kt hp (association) l mt lin kt gia
cc lp m n ch ra rng c mt quan h gia
nhng lp ny.
v Khi ang pht trin cc m hnh trong nhng giai
on u ca quy trnh cng ngh phn mm
cc i tng biu din mt ci g trong th gii tht, v
d nh bnh nhn, n thuc, bc s,

Nguyn Th Minh Tuyn 27 Nhp mn CNPM


Cc lp v kt hp UML

1 1 Patient
Patient record

Kt hp
Lp Patient (association)

28
Cc lp v cc kt hp trong h
thng MHC-PMS

Consultant
1
referred-to
1..*
1..* 1..* 1..* 1
Condition Patient General
referred-by practitioner
diagnosed-
with 1..*
attends
1..*
prescribes
Consultation Medication
1..* 1..*
1..*
runs prescribes
1..4 Treatment
1..*
Hospital
Doctor

29
Lp Consultation
Tn lp

Consultation

Doctors Thuc tnh


Date
Time
Clinic
Reason
Medication prescribed
Treatment prescribed
Voice notes
Transcript
... Thao tc

New ( )
Prescribe ( )
RecordNotes ( )
Transcribe ( )
...
30
Tng qut ha (Generalization)

vTng qut ha l mt k thut m ta thng


hay s dng qun l phc tp.
vThay v nghin cu cc c im chi tit ca
mi thc th, ta c th
t nhng thc th no vo trong cc lp tng qut hn
(v d nh ng vt, xe hi, nh, ) v
tm hiu v cc c im ca nhng lp ny.
vCho php suy lun ra rng cc thnh phn
khc nhau ca nhng lp ny c mt s im
chung
v d nh sc v chut u l nhng loi gm nhm.

Nguyn Th Minh Tuyn 31 Nhp mn CNPM


Tng qut ha
v Trong cc h thng m hnh ha, vic kim tra cc lp
trong mt h thng xem c th tng qut ha
nhng lp ny c hay khng.
iu ny c ngha l nhng thng tin chung s c duy tr
cng mt ch.
v Trong ngn ng hng i tng nh Java chng hn,
tng qut ha c ci t s dng c ch k tha
c tch hp trong ngn ng.
v Trong mt tng qut ha, cc thuc tnh v thao tc
lin quan vi cc lp mc cao hn cng lin quan n
cc lp mc thp hn.
v Cc lp mc thp hn l cc lp con (subclass) k
tha cc thuc tnh v thao tc t lp cha
(superclass). Nhng lp mc thp hn sau c th
thm vo cc thuc tnh v thao tc c th hn.

Nguyn Th Minh Tuyn 32 Nhp mn CNPM


Mt h thng phn cp tng qut ha

Doctor l superclass ca Hospital Lp General practitioner l


doctor v General practitioner subclass ca lp Doctor

Doctor

Hospital General
doctor practitioner

Consultant Team doctor

Trainee Qualified
doctor doctor

33
Mt cy phn cp chi tit hn

Doctor
Name
Phone #
Email

register ( )
de-register ( )

Hospital doctor General practitioner

Staff # Practice
Pager # Address

34
M hnh cng gp lp i tng

vMt m hnh cng gp (aggregation


model) ch ra cch m cc lp c tp
hp li thnh cc lp khc.
vCc m hnh cng gp tng t nh
quan h part-of trong cc m hnh d
liu ng ngha.

Nguyn Th Minh Tuyn 35 Nhp mn CNPM


Mt kt hp cng gp

Patient record

1 1
1 1..*
Patient Consultation

36
Ni dung

M hnh ng cnh

M hnh tng tc

M hnh cu trc

M hnh hnh vi

Nguyn Th Minh Tuyn Nhp mn CNPM


M hnh hnh vi (behavioral model)

vL cc m hnh hnh vi ng (dynamic


behavior) ca mt h thng khi n ang
thc thi.
vCc m hnh ny ch ra ci g xy ra
hoc ci g c gi nh l xy ra khi
mt h thng tr li mt tc ng
(stimuli) t mi trng.
vC hai loi tc ng m ta cp n:
D liu Mt s d liu n m h thng phi x l.
Events Mt s s kin xy ra lm kch hot vic x l
ca h thng.

Nguyn Th Minh Tuyn 38 Nhp mn CNPM


M hnh hng d liu

vNhiu h thng doanh nghip l h thng x l


d liu. Nhng h thng ny c iu khin
bi d liu u vo ca h thng, vi vic x l
kh t cc s kin bn ngoi.
vM hnh hng d liu ch ra mt chui tun t
cc hnh ng gm vic x l d liu u vo
v pht sinh u ra tng ng.
vNhng m hnh ny c bit hu ch trong sut
qu trnh phn tch yu cu v chng c th ch
ra c vic x l end-to-end trong mt h
thng.

Nguyn Th Minh Tuyn 39 Nhp mn CNPM


M hnh hot ng ca my bm
insulin
D liu (c biu din X l (c biu din
nh cc i tng) nh cc hot ng)

Blood sugar Get sensor Sensor Compute Blood sugar


sensor value data sugar level level

Calculate
insulin
delivery

Control Calculate
Insulin Pump control Insulin
pump pump
pump commands requirement
commands

40
X l n t hng

Purchase officer Supplier

datastore
:Order Budget
Orders

Fillin ( )
Validate ( )

[validation ok]

Update (amount)

Save ( )
Send ( )

41
M hnh hng s kin

vCc h thng thi gian thc thng l nhng


h thng hng s kin, vi vic x l d liu
cc tiu.
V d, h thng chuyn i ng in thoi tr li cc
s kin nh receiver off hook bng vic pht sinh
chung.
vM hnh hng s kin ch ra cch mt h
thng tr li cc s kin bn trong v bn
ngoi.
vDa vo gi thuyt rng mt h thng c mt
tp hu hn cc trng thi v cc s kin
c th gy nn mt chuyn i t trng thi
ny n trng thi khc.
Nguyn Th Minh Tuyn 42 Nhp mn CNPM
M hnh my trng thi

vM hnh ha hnh vi ca h thng tr li


cc s kin bn trong v bn ngoi.
vCh ra cc tr li ca h thng i vi s kin
v vy thng c s dng m hnh ha
cc h thng thi gian thc.
vCc m hnh my trng thi (state machine
model) ch ra cc trng thi ca h thng nh
l cc nt v s kin nh l mt cung gia cc
nt . Khi mt s kin xy ra, h thng
chuyn t trng thi ny sang trng thi khc.
vBiu trng thi l mt phn ca UML v
c dng biu din cc m hnh my trng
thi.
Nguyn Th Minh Tuyn 43 Nhp mn CNPM
Biu trng thi ca mt l vi ba
Full
power Full power
do: set power
= 600

Timer
Waiting
Number
do: display Operation
Full Set time
time
power do: get number do: operate
exit: set time oven
Half
Half power
Door
power Cancel
Timer closed
Start
Door
open Door
Half power Enabled Waiting
open
do: set power Door do: display do: display
= 300 closed 'Ready' time

Disabled
Trng thi do: display
'Waiting'
Tc ng
44 (stimulus)
Trng thi ca l vi ba (a)

Trng thi M t
Waiting L vi ba ang i u vo. Mn hnh hin th thi gian hin ti.
Half power Ngun c thit lp mc 300 watts. Mn hnh hin th Half
power.
Full power Ngun c thit lp mc 600 watts. Mn hnh hin th Full
power.
Set time Thi gian nu c thit lp bi gi tr u vo ca ngi dng.
Mn hnh hin th thi gian nu c chn v cp nht li thi
gian ngi dng thit lp.
Disabled Hot ng ca l vi ba b dng v l do an ton. n bn trong l bt
sng. Mn hnh hin th Not ready.
Enabled Hot ng ca ca l vi ba trang thi sn sng nu. n trong
l tt. Mn hnh hin th Ready to cook.
Operation L ang trng thi hot ng. n trong l bt sng. Mn hnh
hin th b m li. Khi nu xong, c mt ting buzz trong 5s. n
trong l bt sng. Mn hnh hin th Cooking complete khi ang c
ting buzz.
45
Cc tc ng vo l vi ba (b)

Tc ng M t
Half power Ngi s dng n nt half-power.

Full power Ngi s dng n nt full-power.


Timer Ngi s dng n mt trong cc nt nh thi
gian.
Number Ngi s dng n nt s.
Door open Ca l khng c ng.
Door closed Ca l c ng.
Start Ngi s dng n nt Start.
Cancel Ngi s dng n nt Cancel.

46
Hot ng ca l vi ba

Operation
Time
Checking
OK Cook
do: check do: run
status generator

Turntable Emitter Timeout


fault fault

Done
Alarm
do: buzzer on
do: display
for 5 secs.
event

Door open Cancel

Disabled Waiting

47
Tng kt
v M hnh l gc nhn tru tng ca mt h thng
m n b qua cc chi tit ca h thng. Cc m
hnh h thng c s dng ch ra ng cnh,
tng tc, cu trc v hnh vi ca h thng.
v M hnh ng cnh h tr vic nh ngha ranh gii
ca h thng c pht trin v mi trng m n
thc thi trong .
v Biu use case v biu tun t c dng
m t tng tc gia ngi dng v h thng ang
c thit k.
Cc use case m t tng tc gia mt h thng v cc actor
bn ngoi;
Biu tun t thm thng tin vo nhng use case ny bng
cch ch ra tng tc gia cc i tng h thng.

Nguyn Th Minh Tuyn 48 Nhp mn CNPM


Tng kt
v M hnh cu trc ch ra t chc v thit k ca mt
h thng. Biu lp c dng nh ngha cu
trc tnh ca cc lp trong h thng v mi quan
h ca chng.
v M hnh hnh vi c dng m t hnh vi ng
ca h thng ang thc thi. Hnh vi ny c th
c m hnh ha t gc nhn ca d liu c x
l bi h thng, hoc bng s kin m n kch thch
vic tr li t mt h thng.
v Biu hot ng c th c dng m hnh
ha quy trnh x l d liu, trong mi hot ng
biu din mt bc ca quy trnh.
v Biu trng thi c dng m hnh ho hnh
vi ca h thng tr li cc s kin bn trong v
bn ngoi.
Nguyn Th Minh Tuyn 49 Nhp mn CNPM
Cu hi?

Nguyn Th Minh Tuyn Nhp mn CNPM

You might also like