You are on page 1of 39

Vng i v Cc M Hnh Pht Trin Phn Mm

Cng Ngh Phn Mm Nng Cao

Outline
Software life-cycle Qui h h i Phn Q i trnh pht trin Ph 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
Pham Ngoc Hung, Coltech, VNU, 2009 2

Vng i phn mm (Software life-cycle) 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 phn chia thnh cc pha chnh: phn tch, thit k h hi h h h h h h h hi k, ch to, kim th, bo tr. Biu din cc pha c khc nhau theo tng ngi

Pham Ngoc Hung, Coltech, VNU, 2009

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 cn bn Kim chng Thit k chi tit Kim chng Lp trnh G li Kim th Chy th Vn hnh Bo tr Kim chng li Pham Ngoc Hung, Coltech, VNU, 2009 4

Suy h i S ngh mi v vng i phn mm h


(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 (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 th th d i l (b h h di ln (bottom-up) )

Pham Ngoc Hung, Coltech, VNU, 2009

Suy h i S ngh mi v vng i phn mm h


( ) (4) Trc khi chuyn sang pha k tip phi m bo pha y gp pp p hin nay c kim th khng cn li (5) Cn c c ch kim tra cht lng, xt duyt gia cc pha nhm b kh gy li cho pha sau h h m bo khng h h (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 cht lng ca tng quy trnh v ca chnh phn mm

Pham Ngoc Hung, Coltech, VNU, 2009

Suy h i S ngh mi v vng i phn mm h


( ) (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

Cc phng php lun v k thut cho tng pha


Tn pha Xc nh yu cu Thit k h thng Thit k chng g trnh Lp trnh m bo cht lng Vn hnh Bo tr Ni dung nghip v c t yu cu ngi dng Xc nh yu cu phn mm Thit k c bn phn mm Thit k cu trc ngoi ca phn mm Phng php, k thut Phn tch cu trc ha Thit k cu trc ha

Lp trnh cu trc L thit k chi tit: Thit k cu Phng php Jackson trc bn trong ca phn mm ( g p (n Phng h Ph php v chng trnh hoc mun) Warnier M ha bi ngn ng lp trnh M ha cu trc ha Kim tra cht lng phn mm Phng php kim th chng trnh pht trin S dng, vn hnh phn mm pht trin Bin i, iu chnh trin. i Cha c th phn mm
8

Pham Ngoc Hung, Coltech, VNU, 2009

Quy trnh pht trin phn mm


Common process framework Framework activities Task sets Tasks Milestones, d li Mil deliverables bl SQA points

Umbrella activities

Pham Ngoc Hung, Coltech, VNU, 2009

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 / y g waterfall model: l m hnh hay oc dng nht
10

Pham Ngoc Hung, Coltech, VNU, 2009

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 cng, ngi v CSDL 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


Thit k (Design): l qu trnh nhiu bc vi 4 thuc tnh khc nhau ca mt chng trnh: cu trc d liu, kin h ki trc phn mm, bi di giao di v chi tit th biu din i din hi i h tc (thut ton). Cn t liu ha v l mt phn quan 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


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 nhng thay i nng cp phn mm pht trin d h h i, h h i 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 nng th l mt th h ! t thm ha!

Pham Ngoc Hung, Coltech, VNU, 2009

14

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?


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 gi yu cu ca ngi d i i dng

Pham Ngoc Hung, Coltech, VNU, 2009

16

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 trnh pht trin rt ngn (60 90 ngy) h h i (60-90 ) Xy dng da trn hng thnh phn (Component-based 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

Team #3

M h h hnh pht trin ng dng nhanh

Team #2 Business Modeling g

Team #1 Business Modeling

Modeling g Application A li ti Data Generation Modeling Testing & Process Turnover

Data Modeling g Process Modeling g Application Data Generation Modeling g Testing & Process Turnover

Business Modeling g

Modeling

Application Ge e at o Generation Testing & Turnover


60 - 90 days
Pham Ngoc Hung, Coltech, VNU, 2009 18

RAD: Business modeling


Lung thng tin c m hnh ha tr li cc cu hi:
Thng tin no iu khin x l nghip v? Thng tin g c sinh ra? Ai sinh ra n? Thng tin i n u? Ai x l chng?

Pham Ngoc Hung, Coltech, VNU, 2009

19

RAD: Data d Process modeling RAD D and P d li


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 Process modeling: Cc i tng d li d li d liu c chuyn sang lung thng tin thc hin chc nng nghip v To m t x l cp nht (thm v. (thm, sa, xa, khi phc) tng i tng d liu

Pham Ngoc Hung, Coltech, VNU, 2009

20

RAD: Appl Generation and Testing Appl.


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 v ki chng mi giao di ( thnh phn c kim h i i din (cc h h h c kim th v dng li)

Pham Ngoc Hung, Coltech, VNU, 2009

21

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 phn mm h chnh, thiu trch nhim ca mt b d h hon h h hi h hi bn lm d n v RAD khng phi tt cho mi ng dng nht l vi ng dng, dng khng th mun ha hoc i hi tnh nng cao 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 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) ngy cng h thi h hon thin hn, phc t h h tp hn Cc m hnh: incremental, spiral, WINWIN spiral, concurrent development model

Pham Ngoc Hung, Coltech, VNU, 2009

23

M hnh gia tng (The incremental model)


Kt hp m hnh tun t v tng lp li ca ch bn mu Sn phm li vi nhng yu cu c bn nht ca h thng c pht trin Cc h C chc nng vi nhng yu cu kh i h 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


Gia tng 1
Phn tch Thit k

Lp trnh

Kim th

Xut xng 1

System/info. Engineering E i i

Gia tng 2

Phn tch

Thit k

Lp trnh

Kim th

Xut xng 2

Gia tng 3

Phn tch

Thit k

Lp trnh

Kim th Xut xng 3

Gia tng 4

Phn tch

Thit k

Lp trnh

Kim th

XX 4

Calendar time C l d ti
Pham Ngoc Hung, Coltech, VNU, 2009 25

M hnh xon c (spiral)


Lp k hoch Giao tip khch hng Khi nim Lm mi Nng cp Bo tr
Pham Ngoc Hung, Coltech, VNU, 2009

Phn tch ri ro

K ngh

Khch hng nh gi

Xy dng & g Xut xng


26

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)


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 on k ngh v ci h i t

Pham Ngoc Hung, Coltech, VNU, 2009

28

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 ha xon c c th kim sot c 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 (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 (client/server applications): system and componets are ( li t/ li ti ): t d t developed concurrently

Pham Ngoc Hung, Coltech, VNU, 2009

30

M hnh hng thnh phn (Component-based model)


Gn i h G vi nhng cng ngh h i t h hng tng (Obj t (Objectoriented technologies) qua vic to cc lp (classes) c 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 / 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 thnh phn hnh hng h h h


Lp k hoch Phn tch ri ro
Xc nh thnh phn ng vin

Giao tip khch hng

Xy dng bc lp th n ca h thng

Tm thnh phn t th vin

Khch hng nh gi

K ngh Xy dng & Xut xng

t thnh phn vo th vin th i

Ly thnh phn nu c

Xy dng thnh phn nu kh c kh.c

Pham Ngoc Hung, Coltech, VNU, 2009

32

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 gp cao (y t, hng khng, . . .)

Pham Ngoc Hung, Coltech, VNU, 2009

33

M hnh hnh thc: im yu?


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 Kh s dng rng ri v cn kin thc ton v k nng ca kh h h khch hng

Pham Ngoc Hung, Coltech, VNU, 2009

34

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
Pham Ngoc Hung, Coltech, VNU, 2009 35

Tho lun
Chn m hnh no cho pht trin PM?

Pham Ngoc Hung, Coltech, VNU, 2009

36

Thc trng ca ngnh Cng nghip PM


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 -> Kh s dng li cc thnh phn Qun l d n vs qun l sn phm vs. M rng mc tiu ca vic qun l bao 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