You are on page 1of 39

Vng i v Cc M Hnh

Pht Trin Phn Mm


Cng Ngh Phn Mm Nng Cao
Outline Outline
Software life-cycle
Q i h h i Ph Qui trnh pht trin Phn mm
Cc m hnh pht trin
M hnh tuyn tnh
M hnh ch th
M hnh pht trin ng dng nhanh
Cc m hnh tin ha
M hnh pht trin ng thi
M hnh hng thnh phn M hnh hng thnh phn
Pham Ngoc Hung, Coltech, VNU, 2009 2
Vng i phn mm (Software life-cycle) Vng i phn mm (Software life cycle)
Vng i phn mm l thi k tnh t khi phn mm g p p
c sinh (to) ra cho n khi cht i (t lc hnh
thnh p ng yu cu, vn hnh, bo dng cho n
) khi loi b khng u dng)
Quy trnh phn mm (vng i phn mm) c
h hi h h h h h h h hi k phn chia thnh cc pha chnh: phn tch, thit k,
ch to, kim th, bo tr. Biu din cc pha c khc
nhau theo tng ngi nhau theo tng ngi
Pham Ngoc Hung, Coltech, VNU, 2009 3
M hnh vng i phn mm ca Boehm g p
Xc nh yu
cu h thng
Kim chng
Xc nh yu
cu phn mm
Kim chng
Thit k Thit k
cn bn
Kim chng
Thit k
chi tit chi tit
Kim chng
Lp trnh
G li G
Kim th
Chy th
Vn hnh
Bo tr
Kim chng li
Pham Ngoc Hung, Coltech, VNU, 2009 4
S h i i h Suy ngh mi v vng i phn mm
(1) Pha xc nh yu cu v thit k c vai tr quyt
nh n cht lng phn mm, chim phn ln
cng sc so vi lp trnh, kim th v chuyn giao
phn mm phn mm
(2) Pha c th ha cu trc phn mm ph thuc nhiu
vo suy ngh trn xung (top-down) v tru tng y g g ( p ) g
ha, cng nh chi tit ha
(3) Pha thit k, ch to th theo trn xung, pha kim
h h d i l (b ) th th di ln (bottom-up)
Pham Ngoc Hung, Coltech, VNU, 2009 5
S h i i h Suy ngh mi v vng i phn mm
(4) Trc khi chuyn sang pha k tip phi m bo pha ( ) y g p p p p
hin nay c kim th khng cn li
(5) Cn c c ch kim tra cht lng, xt duyt gia cc
h h b kh li h h pha nhm m bo khng gy li cho pha sau
(6) T liu ca mi pha khng ch dng cho pha sau, m
chnh l i tng quan trng cho kim tra v m bo chnh l i tng quan trng cho kim tra v m bo
cht lng ca tng quy trnh v ca chnh phn mm
Pham Ngoc Hung, Coltech, VNU, 2009 6
S h i i h Suy ngh mi v vng i phn mm
(7) Cn chun ha mu biu, cch ghi chp to t liu ( ) , g p
cho tng pha, nhm m bo cht lng phn mm
(8) Thao tc bo tr phn mm l vic x l quay vng
tr li cc pha trong vng i phn mm nhm bin
i, sa cha, nng cp phn mm
Pham Ngoc Hung, Coltech, VNU, 2009 7
Cc phng php lun v k thut cho tng pha
Tn pha Ni dung nghip v
Phng php, k
thut
Xc nh c t yu cu ngi dng Phn tch cu trc Xc nh
yu cu
c t yu cu ngi dng
Xc nh yu cu phn mm
Phn tch cu trc
ha
Thit k
h thng
Thit k c bn phn mm
Thit k cu trc ngoi ca phn Thit k cu trc ha
h thng
mm
Thit k
chng
L thit k chi tit: Thit k cu
trc bn trong ca phn mm (n
Lp trnh cu trc
Phng php Jackson
Ph h
g
trnh
g p (
v chng trnh hoc mun)
Phng php
Warnier
Lp trnh M ha bi ngn ng lp trnh M ha cu trc ha
m bo Kim tra cht lng phn mm Phng php kim m bo
cht lng
Kim tra cht lng phn mm
pht trin
Phng php kim
th chng trnh
Vn hnh

S dng, vn hnh phn mm
pht trin Bin i iu chnh Cha c th
Bo tr
pht trin. Bin i, iu chnh
phn mm
Cha c th


Pham Ngoc Hung, Coltech, VNU, 2009 8
Quy trnh pht trin phn mm Quy trnh pht trin phn mm
Common process framework
Framework activities
Task sets
Tasks
Mil d li bl Milestones, deliverables
SQA points
Umbrella activities
Pham Ngoc Hung, Coltech, VNU, 2009 9
M hnh tuyn tnh M hnh tuyn tnh
Phn tch Thit k Lp trnh Kim th
Cng ngh hc
H thng/Thng tin
in hnh l m hnh vng i c in
(m hnh thc nc) Classic life cycle /
waterfall model: l m hnh hay oc dng nht y g
Pham Ngoc Hung, Coltech, VNU, 2009 10
M hnh tuyn tnh M hnh tuyn tnh
Cng ngh hc H thng/Thng tin v m hnh ha g g g g
(System / Information engineering and modeling): thit
lp cc yu cu, nh x mt s tp con cc yu cu sang
phn mm trong qu trnh tng tc gia phn cng phn mm trong qu trnh tng tc gia phn cng,
ngi v CSDL
Phn tch yu cu (Requirements analysis): hiu lnh vc Phn tch yu cu (Requirements analysis): hiu lnh vc
thng tin, chc nng, hnh vi, tnh nng v giao din ca
phn mm s pht trin. Cn phi to t liu v bn tho
vi khch hng, ngi dng
Pham Ngoc Hung, Coltech, VNU, 2009 11
M hnh tuyn tnh M hnh tuyn tnh
Thit k (Design): l qu trnh nhiu bc vi 4 thuc
tnh khc nhau ca mt chng trnh: cu trc d liu,
ki h bi di i di hi i h kin trc phn mm, biu din giao din v chi tit th
tc (thut ton). Cn t liu ha v l mt phn quan
trng ca cu hnh phn mm trng ca cu hnh phn mm
To m / lp trnh (Code generation/programming):
Chuyn thit k thnh chng trnh my tnh bi ngn
ng no . Nu thit k c chi tit ha th lp
trnh c th ch thun ty c hc
Pham Ngoc Hung, Coltech, VNU, 2009 12
M hnh tuyn tnh M hnh tuyn tnh
Kim th (Testing): Kim tra cc chng trnh v ( g) g
mun c v lgic bn trong v chc nng bn
ngoi, nhm pht hin ra li v m bo vi u vo
xc nh th cho kt qu mong mun
H tr / Bo tr (Support / Maintenance): p ng
h h i h h i d nhng thay i, nng cp phn mm pht trin do
s thay i ca mi trng, nhu cu
Pham Ngoc Hung, Coltech, VNU, 2009 13
im yu ca M hnh tuyn tnh
Thc t cc d n t khi tun theo dng tun t ca g
m hnh, m thng c lp li (nh m hnh ca
Boehm)
Khch hng t khi tuyn b r rng khi no xong ht
cc yu cu
Khch hng phi c lng kin nhn ch i thi gian
nht nh mi c sn phm. Nu pht hin ra li
th l t th h ! nng th l mt thm ha!
Pham Ngoc Hung, Coltech, VNU, 2009 14
M hnh ch th (Prototyping model) M hnh ch th (Prototyping model)
Nghe Khch
trnh by
To/sa
bn mu
Khch kim tra
bn mu
Pham Ngoc Hung, Coltech, VNU, 2009 15
M hnh ch th: Khi no? M hnh ch th: Khi no?
Khi mi r mc ch chung chung ca phn mm, g g p ,
cha r chi tit u vo hay x l ra sao hoc cha
r yu cu u ra
Dng nh H s khai thu thp yu cu ngi
dng qua cc thit k nhanh
Cc gii thut, k thut dng lm bn mu c th
cha nhanh, cha tt, min l c mu tho lun
i i d gi yu cu ca ngi dng
Pham Ngoc Hung, Coltech, VNU, 2009 16
M hnh pht trin ng dng nhanh (Rapid M hnh pht trin ng dng nhanh (Rapid
Application Development: RAD)
L quy trnh pht trin phn mm gia tng, tng dn tng
bc (Incrimental software development) vi mi chu
h h i (60 90 ) trnh pht trin rt ngn (60-90 ngy)
Xy dng da trn hng thnh phn (Component-based
construction) vi kh nng ti s dng (reuse) construction) vi kh nng ti s dng (reuse)
Gm mt s nhm (teams), mi nhm lm 1 RAD theo
cc pha: M hnh nghip v, M hnh d liu, M hnh x p g p , ,
l, To ng dng, Kim th v nh gi (Business, Data,
Process, Appl. Generation, Test)
Pham Ngoc Hung, Coltech, VNU, 2009 17
h h
Business
Modeling
Team #3
M hnh
pht trin g
Business
Modeling
Data
g Modeling
g
Data
Modeling
g
Process
Modeling
Application
Team #2
ng dng
nhanh
Business
Modeling
g
Data
Modeling
g
Process
Modeling
A li ti
Application
Generation
Testing &
Turnover
Team #1
Data
Modeling
Process
Application
Generation
Testing &
Turnover
Modeling
Application
Generation
Turnover
Ge e at o
Testing &
Turnover
60 - 90 days
Pham Ngoc Hung, Coltech, VNU, 2009 18
RAD: Business modeling RAD: Business modeling
Lung thng tin c m hnh ha tr li cc Lung thng tin c m hnh ha tr li cc
cu hi:
Thng tin no iu khin x l nghip v? Thng tin no iu khin x l nghip v?
Thng tin g c sinh ra?
Ai sinh ra n? Ai sinh ra n?
Thng tin i n u?
Ai x l chng? Ai x l chng?
Pham Ngoc Hung, Coltech, VNU, 2009 19
RAD D d P d li RAD: Data and Process modeling
Data modeling: cc i tng d liu cn h
tr nghip v (business). nh ngha cc thuc
tnh ca tng i tng v xc lp quan h gia
cc i tng
d li i d li Process modeling: Cc i tng d liu c
chuyn sang lung thng tin thc hin chc nng
nghip v To m t x l cp nht (thm nghip v. To m t x l cp nht (thm,
sa, xa, khi phc) tng i tng d liu
Pham Ngoc Hung, Coltech, VNU, 2009 20
RAD: Appl Generation and Testing RAD: Appl. Generation and Testing
Application Generation: Dng cc k thut th h 4 pp g
to phn mm t cc thnh phn c sn hoc to
ra cc thnh phn c th ti dng li sau ny. Dng
cc cng c t ng xy dng phn mm
Testing and Turnover: Kim th cc thnh phn mi
ki h i i di ( h h h v kim chng mi giao din (cc thnh phn c
c kim th v dng li)
Pham Ngoc Hung, Coltech, VNU, 2009 21
RAD: Hn ch? RAD: Hn ch?
Cn ngun nhn lc di do to cc nhm cho cc g
chc nng chnh
Yu cu hai bn giao ko trong thi gian ngn phi c
h h h h hi h hi b d phn mm hon chnh, thiu trch nhim ca mt bn d
lm d n v
RAD khng phi tt cho mi ng dng nht l vi ng RAD khng phi tt cho mi ng dng, nht l vi ng
dng khng th mun ha hoc i hi tnh nng cao
Mo him k thut cao th khng nn dng RAD Mo him k thut cao th khng nn dng RAD
Pham Ngoc Hung, Coltech, VNU, 2009 22
Cc m hnh tin ha:
gia tng, xon c...
Phn ln cc h phn mm phc tp u tin ha theo Phn ln cc h phn mm phc tp u tin ha theo
thi gian: mi trng thay i, yu cu pht sinh thm,
hon thin thm chc nng, tnh nng
Cc m hnh tin ha (evolutionary models) c tnh lp
li. K s phn mm to ra cc phin bn (versions)
h thi h h t h ngy cng hon thin hn, phc tp hn
Cc m hnh: incremental, spiral, WINWIN spiral,
concurrent development model concurrent development model
Pham Ngoc Hung, Coltech, VNU, 2009 23
M hnh gia tng (The incremental model) M hnh gia tng (The incremental model)
Kt hp m hnh tun t v tng lp li Kt hp m hnh tun t v tng lp li
ca ch bn mu
Sn phm li vi nhng yu cu c bn nht Sn phm li vi nhng yu cu c bn nht
ca h thng c pht trin
C h i h kh Cc chc nng vi nhng yu cu khc c
pht trin thm sau (gia tng)
Lp li quy trnh hon thin dn
Pham Ngoc Hung, Coltech, VNU, 2009 24
M hnh gia tng M hnh gia tng
Gia tng 1
Phn tch Thit k Lp trnh Kim th
System/info.
E i i
Gia tng 1
Xut xng 1
Engineering
Phn tch Thit k Lp trnh Kim th
Gia tng 2 Xut xng 2
Phn tch Thit k Lp trnh Kim th
Gia tng 3 Xut xng 3
C l d ti
Phn tch Thit k Lp trnh Kim th
Gia tng 4
XX
4
Calendar time
Pham Ngoc Hung, Coltech, VNU, 2009 25
M hnh xon c (spiral) M hnh xon c (spiral)
Giao tip
Lp k hoch
Phn tch ri ro
Giao tip
khch hng
K ngh
Khi nim
Lm mi
Xy dng &
Xut xng
Khch hng
nh gi
Bo tr
Nng cp
g
Bo tr
Pham Ngoc Hung, Coltech, VNU, 2009 26
M hnh xon c (tip) M hnh xon c (tip)
Giao tip khch hng: gia ngi pht trin v khch p g g g p
hng tm hiu yu cu, kin
Lp k hoch: Xc lp ti nguyn, thi hn v nhng
thng tin khc
Phn tch ri ro: Xem xt mo him k thut v mo
him qun l
K ngh: Xy dng mt hay mt s biu din ca
ng dng
Pham Ngoc Hung, Coltech, VNU, 2009 27
M hnh xon c (tip) M hnh xon c (tip)
Xy dng v xut xng: xy dng, kim th, ci y g g y g, ,
t v cung cp h tr ngi dng (t liu, hun
luyn, . . .)
nh gi ca khch hng: Nhn cc phn hi ca
ngi s dng v biu din phn mm trong giai
k h i on k ngh v ci t
Pham Ngoc Hung, Coltech, VNU, 2009 28
M hnh xon c: Mnh v yu? M hnh xon c: Mnh v yu?
Tt cho cc h phn mm quy m ln p q y
D kim sot cc mo him tng mc tin ha
Kh thuyt phc khch hng l phng php tin Kh thuyt phc khch hng l phng php tin
ha xon c c th kim sot c
Cha c dng rng ri nh cc m hnh tuyn Cha c dng rng ri nh cc m hnh tuyn
tnh hoc ch th
Pham Ngoc Hung, Coltech, VNU, 2009 29
M hnh pht trin ng thi p g
(The concurrent development model)
Xc nh mng li nhng hot ng ng thi Xc nh mng li nhng hot ng ng thi
(Network of concurrent activities)
Cc s kin (events) xut hin theo iu kin vn ng ( ) g
trng thi trong tng hot ng
Dng cho mi loi ng dng v cho hnh nh kh chnh
xc v trng thi hin trng ca d n
Thng dng trong pht trin cc ng dng khch/ch
( li t/ li ti ): t d t (client/server applications): system and componets are
developed concurrently
Pham Ngoc Hung, Coltech, VNU, 2009 30
M hnh hng thnh phn
(Component-based model)
G i h h h i t (Obj t Gn vi nhng cng ngh hng i tng (Object-
oriented technologies) qua vic to cc lp (classes) c
cha c d liu v gii thut x l d liu cha c d liu v gii thut x l d liu
C nhiu tng ng vi m hnh xon c
Vi u im ti s dng cc thnh phn qua Th vin Vi u im ti s dng cc thnh phn qua Th vin
/ kho cc lp: tit kim 70% thi gian, 80% gi thnh,
ch s sn xut 26.2/16.9
Vi UML nh chun cng nghip ang trin khai
Pham Ngoc Hung, Coltech, VNU, 2009 31
M h h h h h h M hnh hng thnh phn
Giao tip
Lp k hoch
Phn tch ri ro
Xc nh
thnh phn
ng vin
Giao tip
khch hng
Tm
thnh phn
t th vin
Xy dng
bc lp th n
ca h thng
Ly
thnh phn

t
thnh phn
th i
K ngh
Xy dng &
Xut xng
Khch hng
nh gi
nu c
Xy dng
thnh phn
nu kh c
vo th vin
nu kh.c
Pham Ngoc Hung, Coltech, VNU, 2009 32
M hnh hnh thc (Formal model) M hnh hnh thc (Formal model)
Cn gi l CNHPM phng sch (Cleanroom SE)
Tp hp cc cng c nhm c t ton hc phn p p g p
mm my tnh t khu nh ngha, pht trin n
kim chng
Gip k s phn mm pht hin v sa cc li kh
Thng dng trong pht trin SW cn an ton rt g g g p
cao (y t, hng khng, . . .)
Pham Ngoc Hung, Coltech, VNU, 2009 33
M hnh hnh thc: im yu? M hnh hnh thc: im yu?
Cn nhiu thi gian v cng sc pht trin Cn nhiu thi gian v cng sc pht trin
Ph o to cao v t ngi c nn cn bn cho
p dng m hnh hnh thc p dng m hnh hnh thc
Kh s dng rng ri v cn kin thc ton v
k kh h h k nng ca khch hng
Pham Ngoc Hung, Coltech, VNU, 2009 34
Outline Outline
Software life-cycle
Qui trnh pht trin Phn mm
Cc m hnh pht trin
M hnh tuyn tnh
M hnh ch th
M hnh pht trin ng dng nhanh
Cc m hnh tin ha
M hnh pht trin ng thi
M hnh hng thnh phn M hnh hng thnh phn
Pham Ngoc Hung, Coltech, VNU, 2009 35
Tho lun Tho lun
Chn m hnh no cho pht trin PM? Chn m hnh no cho pht trin PM?
Pham Ngoc Hung, Coltech, VNU, 2009 36
Thc trng ca ngnh Cng nghip PM Thc trng ca ngnh Cng nghip PM
Hu ht cc t chc/cty PM u tch bit Hu ht cc t chc/cty PM u tch bit
hon ton pha pht trin v pha bo tr
-> HT (sn phm PM) kh bo tr HT (sn phm PM) kh bo tr
-> Kh s dng li cc thnh phn
Qun l d n vs qun l sn phm Qun l d n vs. qun l sn phm
M rng mc tiu ca vic qun l bao
qut c mt h cc sn phm hn l qun qut c mt h cc sn phm hn l qun
l tng sn phm ring bit
Pham Ngoc Hung, Coltech, VNU, 2009 37
Pham Ngoc Hung, Coltech, VNU, 2009 38
Pham Ngoc Hung, Coltech, VNU, 2009 39

You might also like