BAO CAO TH CNPM

Embed Size (px)

Citation preview

  • 7/30/2019 BAO CAO TH CNPM

    1/34

    I HC N NGI HC BCH KHOA

    KHOA CNG NGH THNG TIN

    BO CO THC HNH

    CNG NGH PHN MM

    GVHD : L TH M HNH

    SVTH : NGUYN TRNG LU 09T4

    PHAN QUC HU 09T4

    TRN C TRNH 09T4

    NHM : 10A

    Nng, thng 11 nm 2012

  • 7/30/2019 BAO CAO TH CNPM

    2/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    1 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    BI TP 1

    bi: Cng ty IT quyt nh sn xut mt my tnh mi cung cp mt mi trngm phng cho cc h thng thi gian thc. Cng ty cn cc cng ngh v h iu hnh mi

    sn xut my tnh. Phn mm h thng cung cp giao din gia h iu hnh v phncng cn phi c pht trin. Cng ty quyt nh s dng ngn ng lp trnh Java vitphn mm hthng. Tuy nhin, Java c mt shn chtrong lp trnh hthng. Nhm phttrin xc nh mt stnh nng mrng cn c tch hp thm vo chng trnh dch Java lp trnh h thng. c t yu cu c th thay i trong qu trnh pht trin d n. Ccthnh vin pht trin phn mm cho my tnh mi cn chng trnh dch Java bin dchphn mm. Hu ht cc yu cu ca phn mm u cn cc m rng ca chng trnh dchJava chy trn h iu hnh mi.

    Hy xc nh m hnh pht trin phn mm ph hp pht trin my tnh mi. Yucu cc sinh vin chia nhm v tho lun.

    M hnh la chn: M hnh xon c

    I. Gii thiu m hnh xon c:

    M hnh xon c, ban u do Boehm xut, l m hnh tin trnh phn mm tin hovn cp i bn cht lp ca lm bn mu vi cc kha cnh hthng v c kim sot ca mhnh trnh t tuyn tnh. N cung cp tim nng cho vic pht trin nhanh cc phinbn tng dn ca phn mm. Dng m hnh xon c ny, phn mm c pht trin thnh

    tng chui cc ln a ra tng dn. Trong nhng ln lp u, vic a ra tng dn c th lm hnh trn giy hay bn mu. Trong cc ln lp sau, cc phin bn y tng dn ca hthng c k ngh ho s c to ra.

    M hnh xon c c chia thnh mt s khun kh hot ng, cng cn c gil vng nhim v. V c bn, c t ba ti su vng:

    1. Trao i vi khch hng - nhim v i hi thit lp vic trao i c hiu qu giangi pht trin v khch hng.2. Lp k hoch - nhim v i hi nh ngha cc ti nguyn, hn thi gian v cc

    thng tin lin quan ti d n.3. Phn tch ri ro - nhim v i hi nh gi c nhng ri ro k thut v qun l4. K ngh - nhim v i hi xy dng mt hay nhiu biu din cho ng dng5. Xy dng v a ra - nhim v i hi xy dng, kim th, thit t v cung cps h tr cho ngi dng (nh ti liu v hun luyn)6. nh gi ca khnh hng - nhim v i hi thu c phn hi ca khch hngda trn nh gi v biu din phn mm c to ra trong giai on k ngh v c

  • 7/30/2019 BAO CAO TH CNPM

    3/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    2 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    ci t trong giai on ci t.Mi mt trong cc vng u c t vo mt tp cc nhim v, c gi l tp nhim

    v, vn c thch ng vi cc c trng ca d n c tin hnh. Vi cc d nnh, s cc nhim v cng vic v tnh hnh thc ca chng l thp. Vi cc d nln, nhiu cng thng hn, th mi vng nhim vli cha nhiunhim vcng vic vnc xc nh t ti mc hnh thc cao hn. Trong mi trng hp, hot ng h tr(nh qun l cu hnh phn mm v m bo cht lng phn mm) s c p dng.

    Khi tin trnh tin ho ny bt u, t k ngh phn mm i vng xon c theo chiungc kim ng h, bt u ttrung tm. Mch u tin quanh xonc c thlm pht sinhvic pht trin c tsn phm; cc bc tip theo quanh xonc c thc dng phttrin bn mu v th ri cc phin bn phc tp dn thm. Mi bc qua vng lp k hochli lm ny sinh vic iu chnh k hoch d n. Chi ph v lch biu c iu chnh datrn phn hi c suy t nh gi ca khch hng. Bn cnh , ngi qun l d n iuchnh svic lp lp k hoch cn hon chnh phn mm.

    Khng ging nh m hnh tin trnh c in vn kt thc khi phn mm c chuyngiao, m hnh xon c c th c thch ng p dng trong ton b cuc i ca phnmm my tnh. Mt ci nhn khc c th c xem xt bng vic kim tra trc im vo dn, nh c v trong hnh trn. Mi hnh hp c t theo trc c th c dng biudin cho im bt u cho cc kiu d n khc nhau. "D n pht trin khi nim" bt uti ct li ca xon c v s tip tc (nhiu ln lp xut hin theo con ng xon c m vn

    gn vi vng t m trung tm) cho ti khi vic pht trin khi nim l y . Nu khinim ny c pht trin thnh mt sn phm thc ti, th tin trnh tin qua hnh hp tip(im vo d n pht trin sn phm mi) v mt "d n pht trin mi" c khi u.Sn phm mi s tin ho qua mt s ln lp quanh xon c, i theo con ng vn gnvng c t mu sng hn vng li. V bn cht, xon c, khi c c trng theo cch ny,vn cn lm vic cho ti khi phn mm c cho ngh. C nhng lc tin trnh nyng, nhng bt k khi no mt thay i c khi u, th tin trnh ny li bt u ti

  • 7/30/2019 BAO CAO TH CNPM

    4/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    3 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    im vo thch hp (tc l nng cao sn phm).M hnh xon c l cch tip cn thc t cho vic pht trin cho cc h thng v phn

    mm qui m ln. Bi v phn mm tin ho khi tin trnh tin ho, nn ngi pht trin vkhch hng hiu r hn v phnng vi ri ro ti tng mc tin ho. M hnh xonc dngcch lm bn mu nh mt c ch lm gim bt ri ro, nhng iu quan trng hn, lm chongi pht trin c kh nng p dng c cch tip cn lm bn mu ti mi giai ontrong tin ho ca sn phm. N duy tr cch tip cn tng bc mt cch c h thngdo cch tip cn vng i c in gi , nhng t hp cch tip cn ny vo mt khunkh lp li, vn phn nh c st thc hn th gii thc. M hnh xon c i hi vic xemxt trc tip cc ri ro k thut ti mi giai on ca dn, v nu c p dng ngth nc thlm gim ri ro trc khi chng trthnh vn thc s.

    Nhng ging nh cc m hnh khc, m hnh xon c khng phi l mt liuthuc bch bnh. C th kh thuyt phc nhng khch hng (c bit trong tnh hung chp ng) rng cch tip cn tin ho l kim sot c. N i hi tri thc chuyn gia nhgi ri ro chnh xc v da trn tri thc chuyn gia ny m t c thnh cng. Nu mt riro chnh khng c pht hin v qun l th khng nghi ng g na vn s xut hin. Cuicng, chnh bn thn m hnh ny cng cn cha c s dng rng ri nh m hnhtrnh t tuyn tnh hoc lm bn mu. Cn phi c thm mt s nm na trc khi tnhhiu qu ca m hnh quan trng ny c th c xc nh vi s chc chn hon ton.

    u im: M hnh xon c l mt trong nhng m hnh linh hot nht ca vng i pht trin

    phn mm. Cc giai on pht trin phn mm c th c xc nh bi ngi qunl d n, theo s phc tp ca d n. Dn c gimst mt cch ddng v hiu qu. Mi giai on l nhng vng lp

    c chia ra mt cch r rng. M hnh xon c hng n s phn tch ri ro trong tng giai on pht trin

    phn mm. S thay i ca phn mm c th c kim sot v gii quyt trong tng giai on. Ph hp vi cc d n c nhiu thay i, mi trng lm vic khng n nh.

    Nhc im: Chi ph p dng m hnh xon c thng rt cao. M hnh xon c phc tp v kh p dng. i hi nng lc lnh o ca ngi qun l d n v nng lc ca nhm d n cao. S thay i t pha khch hang nn nhng bn mu thng khng c s dng

    trong sn phm tht.

  • 7/30/2019 BAO CAO TH CNPM

    5/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    4 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Vic d tr kinh ph kh khn. Ti liu c tphc tp, do phi chnh sa qua tng giai on khc nhau. Khng ph hp cc d n c ri ro thp.

    II. Phn tch bi ton:

    Bi ton t ra, cng ty IT quyt nh xy dng mt my tnh mi vi cng ngh v hiu hnh mi. Phn mm h thng c pht trin bng ngng ng Java. Tuy nhin, Java cnhiu hn ch v lp trnh h thng, nhm pht trin cn tch hp mt s tnh nng m rngcho chng trnh dch Java. Cc c t yu cu c th thay i trong qu trnh pht trin dn. Hu ht cc yu cu ca phn mm u cn cc m rng ca chng trnh dch Java chy trn hiu hnh mi.

    Qua nhng yu cu trn ca bi ton, xy dng mt h iu hnh v p dng cng nghmi vo h thng my tnh mi, y l mt d n vi quy m ln. Trc tin, h thng cn

    tch hp b sung mt s tnh nng cho chng trnh dch ca Java, sau mi c th xydng c cc phn mm h thng v phn mm ng dng khc. Cc tnh nng tch hp nycha c xc nh r rng m d thay i b sung trong qu trnh pht trin d n. Nhvy, vic la chn m hnh xonc pht trin dn ny l ph hp.

    Th nht, d n ca bi ton t ra c quy m ln v tnh ri ro cao, nhng yu cu caphn mm h thng cha c xc nh r ngay t khi pht trin d n, m c thay itrong qu trnh pht trin d n. Khng ging nh m hnh tng trng, cc thay i cnguy c dn n s sp ton b h thng do kin trc h thng khng r rng m cthay i qua tng giai on, m hnh xon c tp trung trc tin vo vic nghin cu tnh

    ri ro ca tng giai on pht trin. Vi mi giai on pht trin, nhim v u tin canhm d n, phi xc nh tnh ri ro ca tnh nng c tch hp vo chng trnh dchJava nh th no ? Liu c dn n hu qu ln n ton b h thng ? T nhng phn tchri ro ban u cng vi nh gi vic tch hp t nhng giai on trc, ngi qun l dn v nhm pht trin d n s iu chnh v quyt nh thch hp.

    Th hai, d n s c pht trin qua tng giai on, vi mi giai on, nhm d n stch hp dn dn cc tnh nng vo chng trnh dch Java, tha mn cc yu cu canhm pht trin phn mm ng dng v h thng. Nhm d n c th s dng bn mu xc nh r hn cc yu cu ca tnh nng cn thm vo. Nh vy h thng s c hon

    thin qua tng giai on, cng vi phn tch ri ro, hthng m bo c tnh kin trc.Thba, vic qun l dn sddngv hiu quhn, do sphn chia r rng ca tnggiai on pht trin h thng. Ngi qun l s nm r tng giai on, cng nh nh ng thayi c t xut hin trong giai on . Nu thay i c xut hin, ngi qun l v nhmd n s gii quyt c vn da trn kin trc ca h thng nhng giai on trc .Qua vic nh gi ri ro cng vi s qun l d dng, ngi qun l bit r cn phi quay tr

  • 7/30/2019 BAO CAO TH CNPM

    6/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    5 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    li giai on no mt cch chnh xc nu vic tch hp s thay i l khng th giai onhin ti.

    Tnhng yu ttrn, vic la chn m hnh xonc l ng n, m bo vn kin trcca h thng khi tch hp thm cc tnh nng vo.

    BI TP 2

    NGHIN CU KH THI FEASIBILITY STUDY

    Khi no chng ta cn dng mt d n khng tt ? Sau mt cuc kho st v 8000 d n

    IT, Standish Group bo co rng khong 30% tng sdn bhy b("Charting the Seasof Information Technology," Dennis, MA: The Standish Group, 1994). Capers Jones bo corng trung bnh d n c hy b M sau mt nm so vi k hoch v chi ph vtkhong 200% so vi dkin ti thi im dn buc phi dng li (Assessment and Controlof Software Risks, Englewood Cliffs, N.J.: Yourdon Press, 1994). Jones c tnh s tin b racho cc dn bhy ln n 15% tng stin U.S bra pht trin phn mm, con snyln n 14 triu $ mi nm, iu ny qu tht ht sc lng ph.

    Mc d nhng thng k trn chra mt cch chn thc,nhng vichy bmt dnqu tht l iu kh khn, tuy nhin nu vic dng d n xy ra qu tr s dn n nhng

    lng ph hn na. Do , m gim ti thiu s tin cn cho cc cng vic cn thit, ngay tnhng bc u ca vng i pht trin phn mm (Software Development Life Cycle:SDLC) cn phi xc nh d n c tip tc hay buc phi dng li.Press Cancel to Exit or OK to Continue

    Lm th no hy b mt d n phn mm sm ? Chng ta cn tin hnh cc nghincu kh thi sm trong d n xc nh quy m d n l hon ton kh thi. Trc tin,nhm d n chun b cc ti liu lin quan n vic nghin cu kh thi. Cc kt qu canghin cu kh thi l mt nh gi tnh kh thi, m ti cc nhm d n, khch hng v

    qun l d n quyt nh tip tc hoc dng d n li. Vic xem xt tnh kh thi thngc quyt nh thng qua mt bui hp hoc i khi ch d vo s quyt nh ca mt cnhn da trn nhng ti liu nghin cu kh thi. Cc thng tin cn thit h tr cho xem xttnh khthic thc a ra sau khi dn hon thnh khong 10-20%.

    Nghin cu kh thi l mt hot ng thi gian-th nhim (time-tested practice), nhngn khng c s dng nhiu. Mt cuc kho st ca KPMG cho thy rng 84% cc cng ty

  • 7/30/2019 BAO CAO TH CNPM

    7/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    6 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    c dn runaway(vt ra khi kim sot) c xut s dng nghin cu kh thi nhl mt phng tin ngn nga cc vn trong tng lai ("Runaway ProjectsCause andEffect," Software World, vol. 26, no. 3, 1995). Cuc kho st ny cho thy rng cc cng ty khng thc hin phn tch kh thi trong cc d n runaway ca h.

    Mt l do m nghin cu kh thi khng c s dng thng xuyn l do s hiu sai vthut ng nghin cu kh thi. Thut ng nghin cu kh thi gi ln cu hi v tnh khthi kthut, v i vi nhng ngi thuc nhm dn l nhng chuyn gia vngn nglptrnh no trn mt h thng my tnh ch o, th nhng cu hi v tnh kh thi k thutkhng th xut hin trong u ca h. Nu nh chng ti bit v tnh kh thi v mt kthut ca d n th ti sao chng ti cn phi tin hnh nghin cu kh thi ?.

    i vi mt vi d n, tnh kh thi k thut l mt mi quan tm ng k: liu c kh thikhi xy dng mt Star War phng chng tn la ? C kh thi v mt k thut khi xy dngmt ngn ng t nhin ting Anh phin dch ting Php ? i vi nhiu d n, tnh khthi k thut khng phi l mi quan tm chnh, m cn phi xem xt n cc vn phi kthut: tng chi ph cn hon thnh d n, thi gian ca d n, kh nng chi tr ca cngty, phn mm s c s dng nh th no sau khi hon thnh

    Trong giai on nghin cu kh thi, chng ta tp trung vo bn lnh vc quan tm chnh:1. Kh thi v kinh t: chi ph pht trin cn phi cn xng vi li ch m h thng c

    xy dng em li. Tnh kh thi v kinh t th hin trn cc ni dung sau:- Kh nng ti chnh ca t chc cho php thc hin d n.- Li ch m d n pht trin h thng mang li b p chi ph phi b ra xy

    dng n.- T chc chp nhn c nhng chi ph thng xuyn khi h thng hot ngMt thut nghaydng chti liu nghin cu khthi vkinh tl lun chng

    kinh t. Lun chng kinh t ni chung c coi nh nn tng cho hu ht cc hthng (cc ngoi l l h thng quc phng, h thng lut, cc h thng phc v chocc nghin cu c bit). Lun chng kinh t bao gm:- cc mi quan tm, nht l phn tch chi ph/li ch- chin lc pht trin di hn ca cng ty- s nh hng ti cc sn phm li nhun khc

    - chi ph cho ti nguyn cn cho vic xy dng v pht trin th trng tim nng2. Kh thi v k thut: kho cu v chc nng, hiu sut v rng buc c th nh hngti kh nng t ti mt h thng chp nhn c. Ni cch khc, kh thi k thut lxem xt kh nng k thut hin ti c m bo thc hin gii php cng ngh dnh p dnghay khng.

    Kh thi k thut thng l lnh vc kh thm nhp nht ti giai on phn tch.iu thc cht l tin trnh phn tch v xc nh nhu cu cn c tin hnh song

  • 7/30/2019 BAO CAO TH CNPM

    8/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    7 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    song vi vic xc nhn tnh kh thi k thut. Cc xem xt thng c gn vi tnhkhthi kthut bao gm:- Ri ro xy dng: liu cc phn t h thng c th c thit k sao cho t c

    chc nng v hiu sut cn thit tha mn nhng rng buc trong khi phn tch

    khng?- C sn ti nguyn: c sn cc nhn vin cho vic xy dng phn t h thng angxt khng? Cc ti nguyn cn thit khc (phn cng v phn mm) c sn chovic xy dng h thng khng ?

    - Cng ngh: cng ngh lin quan t ti trng thi sn sng h tr cho h thngcha?

    3. Kh thi v php l: nghin cu v a ra phn quyt v c hay khng s xm phm, viphm php lut hay kh khn php l t vic xy dng v vn hnh h thng. Tnhkh thi php l bao gm mt phm vi rng cc mi quan tm k c hp ng, nghav php l, s vi phm v v s cc by php l khc m thng l cc nhn vin kthut khng bit ti. Trong nc, vn kh thi v php l vn cha c coi trngmt cch ng mc mc d c mt s lut lin quan n CNTT v bo h bnquyn.

    4. Kh thi v hot ng: nh gi tnh kh thi ca vic vn hnh h thng. Trong miphng n ngi ta cn xem xt hthng c thvn hnh tri chy hay khng trongkhun kh t chc v iu kin qun l m t chc (ngi dng, khch hng) c.Mc cc phng n c xem xt ti trong nghin cu kh thi thng b gii hnbi cc rng buc v chi ph v thi gian.

    Trong qu trnh nghin cu kh thi

    Trong qu trnh nghin cu kh thi, nhm d n phi to ra cc ti liu sau y:- Tha thun r rng vi nhng quyt nh quan trng ca nh sn xut hoc nh

    iu hnhvi khch hng- Tm nhn ca d n- Chin lc kinh doanh phn mm- ng lc ban u v mc tiu t ra- ng lc hin ti v d ton k hoch- Danh sch cc ri ro v k hoch gii quyt tng ri ro- Chi tit giao din ngi dng mu th, nu h thng yu cu mt giao din c th- Yu cu v k thut- K hoch m bo cht lng phn mm- Chi tit k hoch pht trin phn mm

    Cc ti liu ch ra mt hoc mt s mi nguy him i vi d n. Yu cu khng r rng,thiu ngun ti tr, lp k hoch khng ph hp l nhng nguyn nhn chnh dn n s

  • 7/30/2019 BAO CAO TH CNPM

    9/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    8 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    tht bi ca dn c chra bi kho st caStandish Group.Nu nhm dn khng chun by cc ti liu ny cho nghin cu khthi, th khng

    nn t chc cuc hp nh gi v bn khng c thng tin xc nh tnh kh thi ca dn.

    Thi gian cn thit hon thnh cc ti liu nghin cu kh thi ph thuc ch yu vobao nhiu cng vic l cn thit xc nh cc yu cu ca phn mm. Nu ngi dng bitchnh xc hcn nhng gphn mm, giai on nyc thchtn 10% tng thi gian calch trnh pht trin phn mm.Trong nhiu trng hp in hnh khc, qu trnh ny c thmt t 10-20%. Mt s trng hp khc, khch hng thm ch khng bit ci hc mun l g,nh vy nhm dn phi gip ngidng tm ra nhng g hmun, v nh vy thi gianbrac thln n 25% hoc nhiu hn.Vic xem xt tnh kh thi nn tp trung vo cc cu hi sau:

    - Khi nim sn phm l kh thi ?- Liu c sn xut c mt sn phm nh tm nhn ban u ?- c tnh chi ph hin ti v chi ph mc tiu hon thnh sn phm ?- Chi ph ban u, chi ph mc tiu t ra v chi ph hin ti chnh lch nh th no?- Chin lc kinh doanh ca phn mm l hp l khi kinh ph hin ti v d ton k

    hoch c xem xt?- Khi cc nguy c chnh i vi d n c xc nh v h c th khc phc ?- Yu cu c im k thut y v n nh, h tr cng tc pht trin cn

    li ?- Ngi s dng v cc nh pht trin c th ng v mt mu th nghim giaodin ngi dng chi tit ? Nu khng, cc yu cu c thc s n nh?- K hoch pht trin phn mm hon chnh v y h tr cng vic pht

    trin hn na?Cng vic ny c thc hin trong thi gian 10-20% u tin ca d n nn tr

    li nhng cu hi ny. T , khch hng hoc qun l d n c y thng tin quytnh c tip tc phn cn li ca d n.Cc li ch chnh ca nghin cu kh thi

    Quyt nh hy d n vo mt giai on nghin cu kh thi v mt giai on chnh phttrin gip cc cng ty phn mm t nht ba li ch.

    Th nht, mt s ngi xem bt k d n b hy b nh mt s tht bi, nhng mt dn b hy b ti thi im hon thnh 10-20% nn c coi l mt s thnh cng. Hy bmt d n sau khi n hon thnh 10-20% thay v 80-90% (hoc nh Jones ch ra, 200%),

  • 7/30/2019 BAO CAO TH CNPM

    10/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    9 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    vic hy b sm s gip cng ty tit kim rt nhiu chi ph v dnh thi gian kho st cc dn tim nng khc.

    Th hai, nghin cu kh thi gip cho ngi qun l d n a ra cc yu cu ti tr chnhxc hn mc trung bnh. u tin qun l d n yu cu ti tr cho hot ng nghin cukh thi, tc l 10-20% u tin ca d n c hon thnh. Sau khi cc ti liu nghin cukh thi c xem xt v nhng ngi ti tr cho d n a ra quyt nh go, ngi qunl d n yu cu kinh ph ti tr cho cc phn cn li ca sn phm. Ti thi im ny, vnc th xy ra nhng s thay i v chi ph d n, nhng cng vic thm d s gim kh nngbin i ny.

    Cui cng, s yu cu ngi qun l d n hon thnh 10-20% ca mt d n trc khiyu cu ti trcho phn cn li ca dn, iu ny buc nhm dn phi lm vic mt cchnghim tc v tp trung vo nhng cng vic ban u m bo s thnh cng ca d n.Nhng hot ng ny thng c lm qua loa hoc bqua, v nhng hu qutai hi strnn r rng vo cc giai on cui ca d n. Nu i d n c yu cu hon thnh cccng vic ban u quan trng trc khi tip tc d n, th ri ro tng th c th c gimmt cch ng k.

    BITP3

    bi:

    Cu 3.1 Hy c t bi iu kin trc v sau cc hm:

    a. Sp xp mt danh sch cc s nguyn.b. o ngc cc phn t ca mt danh schc.m s phn t c gi tr e trong mt danh sch cc s nguyn

    Cu 3.2 Hy c t cc kiu tru tng:a. c t kiu tru tng cy nh phnb. c t kiu tru tng tp hp

    Cu 3.3 Hy s dng ngn ng Z c t mt s h thng qun l:

    a. Qun l thng tin on vin n gin c mt s tnh nng nh: thm, xa, chnhsa mt on vin, tm kim (theo nhiu tiu ch khc nhau)b. Qun l th vin n gin gm mt stnh nng nh qun l thm, sa, xa c

    gi; thm, sa, xa sch; qun l vic thu mn sch,.

  • 7/30/2019 BAO CAO TH CNPM

    11/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    10 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Bi gii:

    Cu 3.1 Hy c t bi iu kin trc v sau cc hm:a.Sp xp mt danh sch cc s nguyn

    Funtion_sort ( a : danh sch kiu s nguynsize : s phn t ca danh sch)

    Post_condition:i,1

  • 7/30/2019 BAO CAO TH CNPM

    12/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    11 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Cu 3.2 Hy c t cc kiu tru tng:a.c t kiu tru tng cy nh phn

    Sort BinTree(T)Import : T, BooleanOperation

    init : Bintree(T)isEmpty : Bintree(T) Booleancreate : T x BinTree(T) x BinTree(T) BinTree(T)root: BinTree(T)T

    left : BinTree(T) BinTree(T)right : BinTree(T) BinTree(T)isLeaf : BinTree(T) BooleaninsertNode: BinTree(T) x TBinTree(T)searchNode: BinTree(T) x TBooleandeleteNode: BinTree(T) x TBinTree(T)deleteTree: BinTree(T)BinTree(T)

    AxiomsisEmpty (init) = trueisEmpty(deleteTree(L)) = falseisEmpty (create(O,L,R)) = falseroot (create(O,L,R))) = Oleft (create(O,L,R))) = Lright (create(O,L,R))) = RisLeaf(O) = if ( isEmpty(left(O)) isEmpty(right(O)) ) true

    else falseisEmpty(insertNode(init,O)) = falsesearchNode(insertNode(L,O)) = true

  • 7/30/2019 BAO CAO TH CNPM

    13/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    12 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    searchNode(deleteNode(L,O)) = falseWith: O: T; L,R: BinTree(T)

    b. c t kiu tru tng tp hp

    Sort Set(T)Import: T, Integer , BooleanOperations

    init : Set(T)isEmpty : Set(T) Booleaninsert : Set(T) x T Set(T)delete : Set(T) x T Set(T)

    in : Set(T) x T Booleanunion :Set(T)xSet(T)Set(T)intersection :Set(T)xSet(T)Set(T)count : Set(T) Integer

    AxiomsisEmpty (init) = truecount(init) = 0

    isEmpty (insert(init,e)) = falseisEmpty (delete(insert(init,e),e)) = truein(insert(S,e),e) = truecount (insert(S,e) )= if in(S,e)count(S)

    else count(S)+1in(delete(S,e),e) = falsecount(delete(S,e)) = if in(S,e) count(S)-1

    else count(S)in(union(S1,S2),e) =in(S1,e)in(S2,e)In(intersection(S1,S2),e) =in(S1,e)in(S2,e)

    With:S,S1,S2: Set(T); e: T

  • 7/30/2019 BAO CAO TH CNPM

    14/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    13 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Cu 3.3

    a.Qun l thng tin on vin n gin c mt s tnh nng nh: thm, xa, chnh sa mton vin, tm kim (theo nhiu tiu ch khc nhau)+ Sdng kiu c bn

    UnionMember, AgeOfUnion+ cttrng thi hthng (mi ngi on vin chc 1 tui on duy nht)UnionBook

    Ubook: UnionMember AgeOfUnion

    + Khi to h thngInitUbook

    UnionBook

    Ubook= {}

    + Thm 1 on vin vo h thng

    AddUnionBookName? : UnionMember

    Age? : AgeOfUnion

    Name? dom(Ubook)Ubook = Ubook {Name? Age?}

    -

    Trng hp Add thnh cngAddReply == OK|ERROR

  • 7/30/2019 BAO CAO TH CNPM

    15/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    14 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    SuccessAdd

    Reply! : AddReply

    Reply! = OK

    - Trng hp Add liBadAdd

    UnionBookName? : UnionMember

    Age? : AgeOfUnionReply! : AddReply

    Name

    ? dom

    (Ubook

    )Reply! = ERROR

    - Khi:ResultAdd==(AddSuccessAdd)BadAdd

    + Xa 1 on vin ra khi h thngRemove

    UnionBookName? : UnionMemberAge? : AgeOfUnion

    Name? dom(Ubook)Ubook = Ubook {Name? Age?}

    - Trng hp xa thnh cngRemoveReply == OK|ERROR

    SuccessRemoveReply! : RemoveReply

    Reply! = OK

    - Trng hp xa li

  • 7/30/2019 BAO CAO TH CNPM

    16/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    15 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    BadRemove

    UnionBookName? : UnionMember

    Age? : AgeOfUnionReply

    ! :RemoveReply

    Name? dom(Ubook)Reply! = ERROR

    khi:ResultRemove==(RemoveSuccessRemove)BadRemove

    M rng: Xa cc on vin ng vi 1 tp tn

    RemoveNames UnionMemberName? : UnionMember

    Ubook = Name? Ubook

    + Chnh sa tui onUpdate

    UnionBookName? : UnionMember

    Age? : AgeOfUnion

    Name? dom(Ubook)Ubook = Ubook {Name? Age?}

    - Trng hp chnh sa thnh cngUpdateReply == OK|ERROR

  • 7/30/2019 BAO CAO TH CNPM

    17/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    16 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    SuccessUpdate

    Reply! : UpdateReply

    Reply! = OK

    - Trng hp chnh sa liBadUpdate

    UnionBookName? : UnionMember

    Age? : AgeOfUnionReply! : UpdateReply

    Name

    ? dom

    (Ubook

    )Reply! = ERROR

    Khi:ResultUpdate==(UpdateSuccessUpdate)BadUpdate

    + Tm kim- Tm tui on ca 1 ngi

    LookupAge

    UnionBookName? : UnionMember

    Age! : AgeOfUnion

    Name? dom(Ubook)Age! = Ubook(Name?)

    . Trng hp tm thnh cngLookupAgeReply == OK|ERROR

  • 7/30/2019 BAO CAO TH CNPM

    18/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    17 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    SuccessLookupAge

    Reply! : LookupAgeReply

    Reply! = OK

    . Trng hp tm liBadLookupAge

    UnionBookName? : UnionMember

    Age? : AgeOfUnionReply! : LookupAgeReply

    Name? dom(Ubook)Reply! = ERROR

    Khi : ResultLookupAge == (LookupAge SuccessLookupAge)BadLookupAge

    - Tm nhng on vin c cng tui onLookupNames

    UnionBookAge? : AgeOfUnionName! : UnionMember

    Name! : {p : UnionMember| p dom(Ubook) Ubook(p) = Age?}

    . Trng hp tm thnh cngLookupNamesReply == OK|ERROR

    SuccessLookupNamesReply! : LookupNamesReply

    Reply! : OK

  • 7/30/2019 BAO CAO TH CNPM

    19/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    18 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    .Trng hp tm liBadLookupNames

    UnionBookAge? : AgeOfUnionReply! :LookupNamesReply

    Age? ran(Ubook)Reply! = ERROR

    b. Qun l th vin n gin gm mt stnh nng nh qun l thm, sa, xa c gi;thm, sa, xa sch; qun l vic thu mn sch.

    Qun l c gi+ Sdng kiu c bn Readers, IdReaders

    + c t trng thi h thngReadersList

    RList: Readers IdReaders

    + Khi to h thngInitList1ReadersList

    RList= {}

    + Thm c gi

  • 7/30/2019 BAO CAO TH CNPM

    20/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    19 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    AddReader

    ReadersListName? : ReadersId1? : IdReaders

    Name? dom(RList)RList = RList {Name? Id1?}

    + Xa c giRemoveReader

    ReadersListName? : Readers

    Id1? : IdReadersName? dom(RList)RList = RList {Name? Id1?}

    + Sa m c giUpdateReader

    ReadersListName? : ReadersId1? : IdReaders

    Name? dom(RList)RList = RList {Name? Id1? }

    Qun l sch+ Sdng kiu c bn

    Books, IdBooks+ c t h thng trng thiBooksList

    BList: Books IdBooks

  • 7/30/2019 BAO CAO TH CNPM

    21/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    20 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    +Khi to h thngInitList2BooksList

    BList= {}

    + Thm mt cun schAddBook

    BooksListTitle? : BooksId2? : IdBooks

    Title? dom(BList)BList = BList {Title? Id2?}

    +Xa mt cun schRemoveBook

    BooksListTitle? : BooksId

    2? :IdBooks

    Title? dom(BList)BList = BList {Title? Id2?}

    + Sa Id mt quyn schUpdateBooks

    BookListTitle

    ? :Books

    Id2? : IdBooks

    Title? dom(BList)BList = BList {Title? Id2?}

  • 7/30/2019 BAO CAO TH CNPM

    22/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    21 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Qun l vic thu mn schCount

    Dem : N

    0

  • 7/30/2019 BAO CAO TH CNPM

    23/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    22 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    InitNumber

    Number

    Nb = {}

    + Mn sch- Mn sch ln u

    Borrow1LibraryNumberId1? : IdReadersId2? : IdBooksDem? : Count

    Dem? = 0Dem? = Dem? + 1Lib = Lib {Id1? Id2?}Nb = Nb {Id1? Dem?}

    - Mn sch ln sauBorrow2LibraryNumberId1? : IdReadersId2? : IdBooksDem? : Count

    Dem? < 5Lib = Lib {Id1? Id2?}Dem? = Dem? + 1Nb = Nb {Id1? Dem?}

    - Trng hp mn thnh cngBorrowReply == OK|ERROR

  • 7/30/2019 BAO CAO TH CNPM

    24/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    23 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    SuccessBorrow

    Repy! : BorrowReply

    Reply! = OK

    - Trng hp mn liBadBorrow

    LibraryNumberDem? : CountReply! : BorrowReply

    Dem

    ? = 5Reply! = ERROR

    Khi :ResultBorrow == ((Borrow1Borrow2)SuccessBorrow)BadBorrow

    + Tr schPay1LibraryNumberId1? : IdReadersId2? : IdBooksDem? : Count

    Dem? > 1Dem? = Dem? 1Lib = Lib { Id1? Id2?}Nb = Nb {Id1? Dem?}

  • 7/30/2019 BAO CAO TH CNPM

    25/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    24 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Pay2LibraryNumberId1? : IdReadersId

    2? :IdBooks

    Dem? : Count

    Dem? = 1Dem? = Dem? 1Lib = Lib { Id1? Id2?}Nb = Nb {Id1? Dem?}

    + Trng hp tr thnh cngPayReply == OK| ERROR

    SuccessPay

    Reply! : PayReply

    Reply! = OK

    + Trng hp trliBadPay

    LibraryNumberId1? : IdReadersId2? : IdBooksDem? : CountReply! : PayReply

    Id

    1? dom

    (Lib

    ) Id

    2? ran(Lib

    ) Dem? = 0Reply! = ERROR

    Khi : ResultPay == ((Pay1 Pay2)SuccessPay)BadPay

  • 7/30/2019 BAO CAO TH CNPM

    26/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    25 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    BI TP 4

    bi:

    Cu 4.1 Mt chng trnh thng k phn tch mt tp cha tn v im ca sinhvin trong mt nm hc. Tp ny cha nhiu nht 100 trng. Mi trng cha tnca mi sinh vin (20 k t), giitnh (1 k t) v im ca 5 mn hc (t0 n 10).Mc ch chng trnh:- tnh im trung bnh mi sinh vin- tnh im trung bnh chung (theo gii tnh v theo mn hc)- tnh s sinh vin ln lp (im trung bnh trn 5)Xy dng tp d liu th cho chng trnh trn bi k thut kim th gi tr bin.

    Cu 4.2

    Mt chng trnh dch, trong c cu lnh FOR, c t cu lnh FOR nhsau: Lnh FOR ch chp nhn mt tham s duy nht l bin m. Tn bin khngc sdng qu hai k tkhc rng. Sau k hiu= l cn di v cn trn ca binm. Cc cn trn v cn di l cc s nguyn dng v c t gia t kha TO.Xy dng d liu th kim th cu lnh FOR theo k thut kim th lp tngng.

    Cu 4.3 Xy dng d liu th tha mn tiu chun ph tt c cc l trnh cachng trnh sau:

    int pat (char[] subject, char[] pattern)

    { // Post: if pattern is not a substring

    of subject, return -1

    // else return (zero-based) index where

    the pattern (first)

    // starts in subject

    final int NOTFOUND = -1;

    int iSub = 0, rtnIndex = NOTFOUND;

    boolean isPat = false;

    int subjectLen = subject.length;

    int patternLen = pattern.length;

    while (isPat == false && iSub +

    patternLen - 1 < subjectLen){

    if (subject [iSub] == pattern [0]){

    rtnIndex = iSub; // Starting at zero

    isPat = true;

    for (int iPat = 1; iPat < patternLen;

    iPat ++) {

  • 7/30/2019 BAO CAO TH CNPM

    27/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    26 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Bi gii:

    Cu 4.1

    a.Tnh im trung bnh ca sinh vin

    u vo: d liu gm tn sinh vin, gii tnh, v bng im gm 5 mn u ra: im trung bnh mn ca mi sinh vin. D liu cn kim th :

    Tn sinh vin: chui 20 k t l ng im tng mn: thuc khong [010] l ng.

    Xt cc trng hp sau:

    Kim tra tn:- Tn sai: kt quli.- Tn ng: chuyn sang kim tra im.

    Kim tra im:- im sai: im mt trong 5 mn thuc vo trng hp khng hp l th kt

    qu tr v l sai.- im ng: im tng ng c 5 mn l ng th kt qutrvng.

    Gi tr kim th cho tn sinh vin v im nh sau:

    Tn sinh vin:- 19 k t- 20 k t- 21 k t

    im:- -1- 0- 1- 9- 10-

    11Xt cc trng hp kim tra:

    - Tn sai (khc 20 k t) th mi gi tr im u cho kt qu khng hp l.- Tn ng (20 k t), nu mt mn c gi tr im sai m th kt qu tr v khng

    hp l.

  • 7/30/2019 BAO CAO TH CNPM

    28/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    27 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    - Tn ng (20 k t) v im 5 mn u thuc min hp l th kt qu hp l.Ch : Ta chxt im mt mn, chcn vic nhp im mt mn c gi trkhng thuckhong [0,10] th kt qudn n skhng tha mn. Bng dliu thly Mn 1 lm idin:

    Bng d liu th tng ng:

    Trng hp Tn sinh vin Mn 11 20 k t -12 20 k t 03 20 k t 1

    4 20 k t 95 20 k t 106 20 k t 117 19 k t 58 21 k t 5

    b. Tnh im trung bnh chung (theo gii tnh v theo mn hc) Theo gii tnh:

    Xt cc trng hp:- Gii tnh nhp ng v im 5 mn nhp ng: kt qu hp l.- Gii tnh nhp ng v im t nht mt mn nhp sai: kt qu tr v sai.- Gii tnh nhp sai: kt qu sai.- Gii tnh u vo l mt k t v vy gi tr bin cn xt l: 0, 1, 2 k t:- im tng t cu a, im hp l nu trong khong 0 10. Vi phng php

    phn tch gi tr bin th cc trng hp kim th tng ng cho cc mn l : -1, 0, 1, 6, 9, 10, 11.V d: Vi 5 mn hc th ta ch xt mt trng hp mt mn l mn Mn 1 ng

    vi cc trng hp kim th, cc mn cn li c gi tri im hp l, c bng dliuth:

  • 7/30/2019 BAO CAO TH CNPM

    29/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    28 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Trng hp Gii tnh Mn 11 1 k t -12 1 k t 0

    3 1 k t 14 1 k t 65 0 k t 56 2 k t 5

    Theo mn hc:

    Xt cc trng hp:Tnh im trung bnh theo tng mn hc th c hai tr ng hp kim th(ta chxt mt mn hc v trung bnh cho hai sinh vin)

    Gi s ta tnh c im trung bnh ca tng mn, khi im trung bnh tngmn l thuc [0,10], vy im trung bnh tng mn sc hai trng hp:

    - im trung bnh thuc [0,10] l trng hp hp l.- im trung bnh tnh c khng thuc [0,10] l khng hp l.Vi vic phn tch gi tr bin, ta xt cc trng hp kim th vi im trung bnh

    tng ng vi tng mn hc l nhng gi tr: -1,0,1,6,9,10,11 ;V d d liu th tng ng vi im trung bnh Mn 1 ca hai sinh vin 1 v 2:

    Trng hp SV1: im mn 1 SV2: im mn 11 -1 52 0 63 1 74 9 9

    5 10 96 11 9

    c.Tnh s sinh vin ln lp (im trung bnh trn 5)

  • 7/30/2019 BAO CAO TH CNPM

    30/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    29 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    u vo l im trung bnh ca sinh vin.Gischng trnh cho kt qu im trung bnh ca sinh vin.Cc trng hp m bi ton c th xy ra:

    - im trung bnh nh hn 5 nhng ln lp-

    im trung bnh ln hn 5 nhng khng ln lp.B d liu th:Vi vic phn tch nh trn ta c th xy dng b d liu kim th cho bi ton theo

    phng php phn tch gi tr bin nh sau: Tn sinh vin: gi tr th: 19, 20, 21 k t. Gii tnh: gi tr th: 0, 1, 2 k t. imng vi mt mn hc: gi trth:-1,0,1,9,10,11.

    Tn sinh vin Gii tnh Mn 1 Mn 2 Mn 3 Mn 4 Mn 5 Kt qu

    19 k t ..... ..... ..... ..... ..... ..... Khng hp l21 k t ..... ..... ..... ..... ..... ..... Khng hp l20 k t 0 k t ..... ..... ..... ..... ..... Khng hp l20 k t 2 k t ..... ..... ..... ..... ..... Khng hp l20 k t 1 k t -1 ..... ..... ..... ..... Khng hp l20 k t 1 k t 0 -1 ..... ..... ..... Khng hp l

    20 k t 1 k t 0 0 -1 ..... ..... Khng hp l20 k t 1 k t 0 0 0 -1 ..... Khng hp l20 k t 1 k t 0 0 0 0 0 Hp l20 k t 1 k t 1 -1 ..... ..... ..... Khng hp l20 k t 1 k t 1 0 -1 ..... ..... Khng hp l20 k t 1 k t 1 0 0 -1 ..... Khng hp l20 k t 1 k t 1 0 0 0 -1 Khng hp l20 k t 1 k t 1 0 0 0 0 Hp l20 k t 1 k t 1 1 0 0 0 Hp l

  • 7/30/2019 BAO CAO TH CNPM

    31/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    30 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    20 k t 1 k t 1 1 1 0 0 Hp l20 k t 1 k t 1 1 1 1 0 Hp l20 k t 1 k t 1 1 1 1 1 Hp l

    20 k t 1 k t 11 ..... ..... ..... ..... Khng hp l20 k t 1 k t 10 11 ..... ..... ..... Khng hp l20 k t 1 k t 10 10 11 ..... ..... Khng hp l20 k t 1 k t 10 10 10 11 ..... Khng hp l20 k t 1 k t 10 10 10 10 11 Khng hp l20 k t 1 k t 10 10 10 10 10 Hp l20 k t 1 k t 9 9 9 9 9 Hp l

    Ghi ch: k hiu (.....) l gi tr bt k.Cu 4.2

    Cc trng hp cn kim th:

    D liu vo M tFOR Chui k t quy nh ca vng lp FOR

    Bin m Khc rng, 1 hoc 2 k t= K php quy nh

    Cn (cn trn v cn di) S nguyn dngTO K php quy nh

    Phn lp tng ng:

    D liu vo Lp tng ng hp l Lp tng ng khng hp lFOR FOR (1) Khc chui FOR (2)

  • 7/30/2019 BAO CAO TH CNPM

    32/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    31 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    Bin m 1 k t (3) hoc 2 k t (4) Rng (5) hoc > 2 k t (6)= K hiu (=) (7) Khc k hiu (=) (8)

    Cn nguyn 0 32767 (9) < 0 (10), > 32767 (11), (12)

    TO TO (13) Khc chui TO (14) Cc trng hp kim th bao ph cc lp tng ng hp l:

    (1)(3)(7)(9)(13) hoc (1)(4)(7)(9)(13)a. Bin m: a hoc abb. Cn trn: 32600c. Cn di: 10

    FOR a = 0 TO 32767FOR ab = 0 TO 32767

    Cc trng hp kim th tng ng vi tng trng hp kim th khnghp l: (cn trn: 100; cn di: 10)d. (2): Khc chui FOR

    foR a = 10 TO 100e. (5): Tn bin rng

    FOR = 10 TO 100f. (6): Tn bin ln hn 2 k t (abc)

    FOR abc =10 TO 100g. (8): Khng cha k hiu (=)

    FOR a % 10 TO 100h. (10): Cn m (cn di: -1)FOR a = -1 TO 100

    i. (11): Cn >32767 (cn trn: 32900)FOR ab = 10 TO 32900

    j. (12): Cn khng thuc s nguyn:FOR ab=0.112 TO 4.55

    k. (14): Khc chui TO

    FOR a = 10 tof 100Cu 4.3

    Xy dng biu lung iu khin

  • 7/30/2019 BAO CAO TH CNPM

    33/34

    SVTH : TRN C TRNH PHAN QUC HU NGUYN TRNG LU

    32 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    1

    2

    3

    4

    5

    6

    7

    9

    10

    11

    8

    T

    F

    F

    T

    F

    T

    F

    T

    F

    iSub = 0; rtnIndex = -1; isPat = false;

    subjectLen = subject.length;

    isPat!= false

    (iSub+patternLen1) >= subjectLen

    (iSub+patternLen1) < subjectLen

    iSub++

    subject[iSub] != pattern[0]

    subject[iSub] = pattern[0]

    iPat >= patternLen

    iPat < patternLen

    isPat = false

    subject[iSub + iPat] != pattern[iPat]

    rtnIndex = -1;

    subject[iSub + iPat] = pattern[iPat]

    iPat++

    rtnIndex = iSub;

  • 7/30/2019 BAO CAO TH CNPM

    34/34

    33 BO CO THC HNH CNG NGH PHN MM GV: L TH M HNH

    C = 15-11+2 = 5+1=6. Bdliu th:

    - Theo ltrnh (1)(2)(11): rtnIndex =-1- Theo ltrnh (1)(2)(3)(11): rtnIndex =-1-

    Theo l trnh (1)(2)(3)(4)(10)(2)(11): rtnIndex = -1- Theo l trnh (1)(2)(3)(4)(10)(2)(3)(11): rtnIndex = -1- Theo l trnh (1)(2)(3)(4)(5)(6)(7)(9)(10)(2)(11): rtnIndex = -1- Theo ltrnh (1)(2)(3)(4)(5)(6)(10)(2)(11): rtnIndex = iSub