Tai Lieu on Thi Mon TKXDPM_final_v2

Embed Size (px)

Citation preview

SE-K48

CNG PHN TCH V THIT K PHN MM ************************* CNG PHN TCH V THIT K PHN MM..................................................1 *************************............................................................................................1 Chng 0. C s ca phn tch v thit k phn mm........................................................5 1. Nu khi nim phn tch v thit k phn mm (Software analysis and development) ..........................................................................................................................................5 2.Phn bit khi nim Phng php lun (methodologies) v K thut (technique) ....5 3.Cng c (tool): Vai tr, tc dng. Nu tn mt s cng c chnh v ng dng ca nhng cng c ny...........................................................................................................5 4. Phn tch vin (Software Analyst): Vai tr v v tr ca cn b ny trong cng ty phn mm.........................................................................................................................6 5. Qu trnh pht trin ca phng php tip cn phn tch v thit k phn mm ........6 6. So snh cc phng php tip cn phn tch v thit k phn mm: phng php c in, phng php hng tin trnh, phng php hng d liu .................................7 7. Hy nu phn loi phn mm theo ng dng .............................................................7 8. [Thiu]..........................................................................................................................7 Chng 1. Tng hp v phn tch cc yu cu phn mm .................................................7 1. M t quy trnh cng ngh hc yu cu phn mm ( Requirement Engineering )......7 2. Hy nu bn cht ca yu cu phn mm....................................................................9 3. Nu nh ngha yu cu phn mm nhn t pha khch hng......................................9 4. Hy nu cc thi quen tt v thi quen khng tt trong cng ngh hc yu cu phn mm..................................................................................................................................9 5. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Phng vn (interview)......................................................10 6. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Hi tho............................................................................10 7. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Brainstorming ..................................................................11 8. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Storyboarding ..................................................................12 9. Trnh by quy trnh thc hin(Cc bc), c im v nhng k thut phng php xc nh yu cu phn mm p dng UseCase..............................................................12 10. Trnh by quy trnh thc hin(Cc bc), c im v nhng k thut phng php xc nh yu cu phn mm p dng Prototyping.........................................................14 11. Trnh by cc yu cu khi xc nh nhim v v phm vi ca phn mm..............14 12. Xc nh v qun l gii hn ca cc yu cu phn mm ......................................15 13. Trnh by phng php xc nh cc yu cu phn mm t khch hng................17 14. Trnh by cc bc (quy trnh) .Phn tch cc yu cu phn mm..........................17 15. Cc k thut p dng trong Phn tch cc yu cu phn mm.................................17 16. Nu cc tiu ch cht lng v o lng cht lng yu cu phn mm................18 17. Phn bit cc khi nim kim th v nh gi cc yu cu phn mm...................18 18. Quan h gia yu cu v thc hin. [Cha lm]......................................................19 19. S dng phng php Traceability kim th cc yu cu phn mm................19

65

SE-K48 20. Hy cho bit khi nim ROI v phng php xc nh ROI khi xy dng ............20 cc yu cu phn mm ..................................................................................................20 21. K thut qun l thay i yu cu phn mm..........................................................22 22. Nu cc yu cu ca c t cc yu cu phn mm ...............................................23 23. Nu khi nim v thnh phn ca c t yu cu phn mm .................................23 24. Nu tn cc biu mu ca c t yu cu phn mm (theo IEEE v CMU) ...........24 25. Nu cc k thut vit c t yu cu phn mm .....................................................24 26. Nu phng php v k thut kim duyt (review) li cc yu cu xy ...........24 dng ..............................................................................................................................24 27. Kim th (testing) yu cu phn mm ...................................................................24 28. nh gi cc yu cu phn mm theo cc thuc tnh cht lng phn mm ........25 29. Nu phng php theo di cc yu cu phn mm v m bo cc yu cu phn mm ...............................................................................................................................26 30. Nu tn mt s k thut pht hin cc yu cu phn mm ....................................28 31. Phn loi ngi s dng c vai tr nh th no trong pht hin cc yu cu phn mm. ..............................................................................................................................28 32. Nu tn cc k thut m hnh ho yu cu phn mm. Hy a ra gii thch ngn gn v c im ca tng k thut. ..............................................................................28 33. Trong cu trc ca c t yu cu phn mm (SRS) System Requirement v Software Requirement c hiu khc nhau nh th no v c c t v tr no trong ti liu SRS. .........................................................................................................29 34. Ti sao cn kim th nh gi cc yu cu phn mm. Nu tn mt s phng php kim th yu cu phn mm thng dng m em bit. ..................................................29 35. Nu cc phng php theo di vt ca yu cu phn mm. ...................................29 36. Qun l thay i yu cu phn mm........................................................................30 37. chc nng ca EA h tr c t yu cu phn mm. ..............................................31 38. Cc chc nng ca EA h tr m hnh ha yu cu phn mm. ............................33 39. Cc k thut trong EA gip phn tch yu cu phn mm. .....................................34 Chng 2. Thit k phn mm (Software Design)............................................................36 1.Nu quy trnh thit k phn mm mc Logic ............................................................36 2. Cc phng php to cc thit k mc logic (Logical Design) ...............................36 3. c t ti liu thit k mc logic...............................................................................36 4. Kim th v ti u thit k mc logic.......................................................................37 5. Qu trnh m hnh ha d liu mc logic..................................................................37 6. Qu trnh v cc phng php to cc thit k mc vt l........................................38 7. Nu phng php xc nh cc yu cu i vi kin trc phn mm.......................38 8. Nu cc hng tip cn xy dng kin trc phn mm.............................................39 9. Cc thuc tnh cht lng ca kin trc phn mm: Availability, Modifiability,.....43 Performance, Security, Testability, Usability................................................................43 10. Cc thuc tnh cht lng ca kin trc phn mm: Availability, Modifiability, Performance, Security, Testability, Usability................................................................44 12. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Modifiability..................................................................................................................45 13. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm ........................................................................................................................................45 Performance...................................................................................................................45

65

SE-K48 14. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm ........................................................................................................................................46 Security..........................................................................................................................46 15. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm ........................................................................................................................................47 Testability......................................................................................................................47 16. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Usability: .......................................................................................................................47 17. Phng php ATAM: c im, Bn cht, Cc k thut tiu biu ........................48 18. Phng php CBAM: c im, Bn cht, Cc k thut tiu biu ........................48 Cu 19: c im v bn cht ca phng php Function-oriented(structured) Design ........................................................................................................................................49 Cu 20: c im v bn cht ca phng php Object-Oriented Design...................49 Cu 21: c im v bn cht ca phng php Data-structure Centered Design.......51 22. Nu c im v bn cht phng php Component-based Design (CBD)............51 23.Nu khi nim v MSF v cc phase trong MSF......................................................52 24.Nu qu trnh thit k giao din v tng tc phn mm.........................................52 25.Nu cc yu cu ca giao din v tng tc.............................................................52 26.Nu mt s k thut trong thit k giao din v tng tc.......................................53 27.c im m hnh ha thit k d liu mc khi nim (conceptual data modeling) ........................................................................................................................................53 28. c im m hnh ha d liu mc khi nim .......................................................54 29. Qu trnh m hnh ha d liu mc khi nim .......................................................54 30. Nu mt s cc k thut trong m hnh ha d liu mc khi nim [Cha lm]....54 31. c im m hnh ha d liu mc Logic ..............................................................54 32. Qu trnh m hnh ha d liu mc Logic ..............................................................55 34. Nu cc k thut m bo cht lng phn mm giai on thit k ...................55 35. Nu cc c im trong giai on n nh v giai on trin khai .........................56 36. Cc yu cu ca c t phn mm ..........................................................................56 37. nh dng c t phn mm: Cc loi ti liu ........................................................57 38. Cc quy nh chung v nh dng c t ................................................................57 39. Mt s k thut chnh trong thit k c t .............................................................57 40. Nu cc phng php kim duyt, kim th v nh gi cc c t phn mm ....58 Cc tiu thc nh gi mt c t: tnh nht qun, tnh thn thin d s dng........58 41. Cc chc nng ca EA gip thit k phn mm mc Logic....................................59 42. Cc chc nng ca EA gip phn tch cc thuc tnh cht lng ca kin trc phn mm................................................................................................................................59 Chng 3. Xy dng phn mm (Software Construction)...............................................59 Cu 1:Trnh t thit k chi tit......................................................................................59 Cu 2: Nu cc k thut thit k thnh phn phn mm : Phn chia thnh cc thnh phn,xc nh c t chc nng ,Giao din gia cc thnh phn..................................59 Cu 3: Nu cc k thut thit k vo /ra :Thit k bo co ,Thit k giao din ngi dng ,Thit k mn hnh ,Phng php kim tra vo /ra v thit k thng bo............60 Cu 4: Thit k d liu vt l.........................................................................................60 Cu 5: Nu tn cc ti liu thit k chi tit....................................................................61 Cu 6: Nu t chc cc ti liu thit k chi tit.............................................................61

65

SE-K48 7. Nu cc biu mu thit k mn hnh [Khng chc chn]:.........................................63 8. Nu cc biu mu thit k bo co [Khng chc chn]:............................................63 9. Nu cc phng php xt duyt thit k chi tit........................................................63 10. Nu trnh t thit k chng trnh............................................................................63 11. Nu cc tiu chun thit k chng trnh ...............................................................64 12. Nu cc tiu chun phn chia module .....................................................................64 13.[Thiu].......................................................................................................................65 14. To ti liu thit k chng trnh.............................................................................65 15. Nu cc phng php xt duyt thit k [Cha lm]...............................................65 16. Nu cc phng php thit k chi tit v sn xut phn mm [Cha lm]..............65 17. Cc chc nng ca EA gip thit k chi tit phn mm..........................................66 Cu 18. Cc chc nng ca EA gip thit k d liu mc vt l...................................66

65

SE-K48

Chng 0. C s ca phn tch v thit k phn mm1. Nu khi nim phn tch v thit k phn mm (Software analysis and development) Thit k phn mm bao gm c chu trnh t xc nh kin trc, thnh phn, giao din v cc nhn t khc ca mt h thng hay mt thnh phn no , ln kt qu ca chu trnh (nh ngha ca IEEE ). 2.Phn bit khi nim Phng php lun (methodologies) v K thut (technique) Methodologies(Phng php lun) - Phng php chung(cch tip cn) to ra phn mm. - Hin ti c hai lung chnh ca cc phng php lun: + Structured Methodology(phng php cu trc)- (SSADM phn tch cu trc v phng php thit k) + Object Oriented Methodology(phng php hng i tng)(OOA/OOD) - c thit k ra lm chun ho qu trnh phn mm (Tham kho K47) - Phng php lun l cc hng tip cn khi phn tch thit k phn mm ni chung. y l cc phng php tun theo mt chun thit k no c a ra nhm lm chun ha qu trnh thit k phn mm. V d: phng php tip cn trn xung, phng php tip cn hng d liu, - Cc k thut l cc phng php c s dng thc hin mt giai on no trong ton b chu trnh pht trin phn mm. V d: o Phng php c t hnh thc l k thut dng m t cc c t ca phn mm da trn cc lut hnh thc. o Phng php Jackson l k thut dng nh ngha thut ton ca mt chng trnh theo cu trc d liu u vo. 3.Cng c (tool): Vai tr, tc dng. Nu tn mt s cng c chnh v ng dng ca nhng cng c ny Tr li : - Vai tr: cung cp nhng h tr t ng hoc bn t ng cho cc quy trnh v phng php phn tch thit k phn mm. Ni cch khc cng c chnh l nhng phn mm c to ra nhm mc ch s dng chung. - Tc dng: khi mt cng c c tch hp th nhng thng tin do n to ra c th c s dng cho vic xy dng v pht trin cc phn mm khc. Chnh v vy vic s dng cng c c mt s tc dng nh sau: Technique(k thut) - Phng php c th trong mt giai on ca phng php lun, thc hin c th ca phng php lun. VD: SSADM: dng 3 k thut ch yu: m hnh d liu logic, m hnh lung d liu, m hnh ng x thc th OOA/OOD: UML

65

SE-K48o Rt ngn thi gian pht trin h thng o Kch c pht trin c rt ngn li o Dch v nng cp c km theo Mt s cng c v vai tr ca n: o CAD: (Computer Aided Design) thit k c my tnh h tr. Ngi lm ra bn thit k bng cch nhn s h tr ca my tnh qua hin th ha. o CAM: (Computer Aided Manufactoring) ch to c my tnh h tr. H tr cho qun l tin trnh, chun b cho sn xut, kim th x l v lp rp. o CAE: (Computer Aided Engineering) k ngh c my tnh h tr. L h thng h tr cho mt lot cc cng vic bao gm t thit k sn phm, kim th hiu nng v ch to.

-

4. Phn tch vin (Software Analyst): Vai tr v v tr ca cn b ny trong cng ty phn mm Tr li : - Vai tr: nhn nhn c cc yu cu t ra i vi h thng c v pha ngi dng ln v pha h thng v d nh v quy m h thng, v chc nng ca h thng, ly c cc yu cu ca khch hng T ra cc chin lc thit k v pht trin h thng. Do phn tch vin cn phi c cc yu t sau : o Am hiu v cng vic ca cng ngh phn mm. o C nhiu kinh nghim v thnh tho trong lp trnh phn mm. o C hiu bit chung v nghip v. o C cc k nng gii quyt vn . o Kh nng giao tip tt. o Linh hot v c kh nng thch nghi. - V tr: C v tr quan trng u tin trong mt d n. Nu khng a ra c nhng phn tch im li ca d n hay nhng im yu cn khc phc cng nh nhng yu cu cn thit t ra ca d n th c th dn ti tht bi d n. Trong mt cng ty phn mm, l ngi chu trch nhim phn tch nhng hng pht trin trong tng lai ca cng ty cng nh a ra nhng u nhc im ca cc m hnh pht trin hin thi m cng ty ang p dng. 5. Qu trnh pht trin ca phng php tip cn phn tch v thit k phn mm - Hng tip cn hng tin trnh: o Tp trung vo cc gii thut v x l d liu o Qu trnh pht trin phn mm tp trung th hinc c phng php x l d liu. o Cu trc d liu thng thng khng c th hin r o Nhc im ca hng tip cn: cc tp d liu rt kh xy dng tha mn phn mm. - Hng tip cn hng d liu: o M t t chc ca d liu: m t d liu c ly u ra v s dng nh th no o M hnh d liu c thnh lp cng nh mi quan h gia cc d liu ny o S dng cc business rules d ch ra phng php x l d liu - Hng tip cn hng kin trc: o Lac hn kin trcv cng ngh phn mm thc hin bi ton

65

SE-K48o o p dng phng php prototyping nhah chng xy dng c phn mm S dng cc partern kin trc mu ch ra phng php x l d liu

6. So snh cc phng php tip cn phn tch v thit k phn mm: phng php c in, phng php hng tin trnh, phng php hng d liu So snh cc phng php tip cn phn tch v thit k phn mm: - Phng php c in: l phng php phn tch v thit k c cu trc. Cc yu cu v h thng ch c pht trin c phn tch bng vic c bit ch ti chc nng ca h thng v lung d liu gia cc chc nng. Mc ch ca phng php ny l chuyn cc tin trnh trong biu DFD thnh cc module chng trnh v tin hnh phn chia cc module bng cch tip cn trn xung. - Phng php hng tin trnh: vic phn tch v thit k t trng tm vo cc chc nng do phn mm thc hin. Khng c chun r rng nh ngha n v chc nng do vic nh ngha ny c th nh hng bi cch ngh ring ca ngi thit k. Kh iu chnh cc yu cu cho nhiu ngi dng. S dngc c chc nng chng cho nhau l kh trnh khi. Kt qu l h thng bao gm nhiu chc nng chng cho nhau l mt trong nhng nhn t lm cho vic bo tr tr nn kh khn. - Phng php hng d liu: d liu khng thay i bi cc yuc u hay i hi ca ngi dng v thao tc nghip v. Trong thit k hng d liu h thng c thit k da trn cu trc tin trnh d liu. Vic phn tch thit k c tin hnh cho d liu c tch bch vi yuc u hay i hi ca ngi dng v thao tc. Do vy tin trnh c xc nh v tch hp vo trong cc th tc chuyn dng d liu.

7. Hy nu phn loi phn mm theo ng dngPhn loi phn mm theo ng dng: Phn mm h thng Phn mm thi gian thc Phn mm qun l Phn mm cng ngh v khoa hc Phn mm nhng Phn mm tr tu nhn to

8. [Thiu]

Chng 1. Tng hp v phn tch cc yu cu phn mm1. M t quy trnh cng ngh hc yu cu phn mm ( Requirement Engineering ). Quy trnh cng ngh hc phn mm c chia thnh 2 giai on: Pht trin yu cu v Qun l yu cu. Trong Pht trin yu cu c chia lm cc giai on nh hn: Pht hin yu cu, Phn tch yu cu, c t yu cu v kim th yu cu.

65

SE-K48

HNH 1-2. Phn cp cng ngh hc yu cu. - Trong Pht trin yu cu c chia lm cc giai on nh hn: Pht hin yu cu Phn tch yu cu c t yu cu Kim th yu cu. - Qun l yu cu c hiu l :thit lp v duy tr mt tho thun vi khch hng v cc yu cu ca d n phn mm (CMU/SEI 1995). Qun l yu cu gm cc bc sau. Xc nh gii hn yu cu phn mm. (Requirement baseline). Duyt cc gii hn ca phn mm. Qun l cc thay i yu cu phn mm. Quy trnh pht trin c th hin trn hnh v sau:

HNH 1-3. Bin phn chia gia pht trin yu cu v qun l yu cu.

65

SE-K48

M t quy trnh nh sau: Maketing Customer Managerment ly yu cu t khch hng, sau cc yu cu c tng hp li, phn tch, tha thun vi khch hng, r sot li ( y l qu trnh pht trin yu cu ). Kt qu ca qu trnh pht trin yu cu l bn Baseline Requrirements. Ti liu ny c chuyn chun ha v lm mc cho c qu trnh thay i ( gi l phin bn c s 1.0). Phin bn c s 1.0 c gi cho khch hng, b phn MCM li tip tc n phn vi khch hng trn c s phin bn ny, nhng yu cu thay i c tng hp, x l cp nhp li Baseline Requirements. Vi mi thay i cp nhp li gm : thay i ci g, ai l ngi thay i, thay i nh hng nh th no n h thng, phng ra sao. Tt c cc thng tin trn c chun ha thnh phin bn 1.1. By gi phin bn 1.1 c ly lm c s. Quy trnh c tip tc cho n khi c s thng nht t khch hng v i pht trin. 2. Hy nu bn cht ca yu cu phn mm. Bn cht ca yu cu phn mm l mu thun. S mu thun th hin nim v yu cu phn mm xut pht t khch hng v t ngi s dng. Cc yu cu phn mm xut pht t ngi s dng i vi ngi pht trin phn mm thng thng qu tru tng, mc cao. Ngc li yu cu phn mm c m t t ngi pht trin i vi ngi s dng li mc qu thp, qu chi tit cho nn ngi s dng khng th hiu ht c. V s mu thun nn IEEE 1997 a ra mt nh ngha yu cu phn mm nhn t gc ngi s dng v ngi pht trin, v nhng yu cu cn c c kt thnh mt vn bn thng nht gia 2 bn. nh ngha IEEE: iu kin hay kh nng ca sn phm phn mm cn thit cho ngi s dng gii quyt mt vn hoc gii quyt mt mc tiu. (1) iu kn hay kh nng cn phi tha mn hoc cn c ca 1 h thng hoc 1 thnh phn h thng nhm p ng 1 hp ng, 1 tiu chun hoc 1 c t ca mt ti liu khc.(2) Vn bn th hin cc iu kin kh nng c th hin (1) v (2). 3. Nu nh ngha yu cu phn mm nhn t pha khch hng. nh ngha IEEE v yu cu phn mm t pha khch hng: iu kin hay kh nng ca sn phm phn mm cn thit cho ngi s dng gii quyt mt vn hoc gii quyt mt mc tiu. (1) 4. Hy nu cc thi quen tt v thi quen khng tt trong cng ngh hc yu cu phn mm Thi quen tt: Lun hi li ngi dng nhng g mnh cha hiu ht v yu cu ca h. Khng ch kho st yu cu vi mt loi ngi s dng, m phi bao qut tt c nhng ngi s dng. nh du nhng im cha r trong c t: i khi chng ta thiu mt s thng tin v cc yu cu phn mm, chng ta cn tho lun vi ngi s dng hiu

65

SE-K48chi tit hn. Tt c nhng ch nh vy c nh u l TBD( Tobe determined). Tt c TBD ny phi c gii quyt trc khi bt u qu trnh phn tch v xy dng phn mm. Thi quen khng tt: T mnh ngh ra nhng yu cu ca ngi dng, hay t cho mnh l ngi dng phn mm. Ngi s dng l chuyn vin trong lnh vc no nn c thi quen ngh l tt c cc phn tch vin l cc chuyn gia trong lnh vc a ra cc yu cu ngn gn m ko miu t k lng hn chng l g. 5. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Phng vn (interview).

t ra cc cu hi v bn cht ca cc vn ngi dng. gii quyt vn ny, cn s dng cc cu hi: - Ngi s dng l ai? - Khch hng l ai? - Nhu cu ca h c khc nhau khng? - Trong trng hp no th c th tm thy gii php cho vn ny? Ni dung ca cuc phng vn c th c thc hin theo mu nh sau: - Thit lp tiu s ngi dng hay khch hng. - i vo vn - Tm hiu v mi trng ngi dng - Tm tt li nhng g thu c. - Phn tch u vo trn cc vn ca khch hng. - i vo gii php ca mnh (nu thch hp). - i vo c hi. - i vo s ng tin cy, hiu qu v cc nhu cu h tr. - Nhng yu cu khc - Bao qut li - Tng kt phn tch. Nhng im cn lu khi tin hnh phng vn: - Chun b trc ni dung cn phng vn. Xem li cc cu hi trc khi tin hnh phng vn. - Trc cuc phng vn nn tm hiu v nn tng ca cc bn lin quan v cng ty c phng vn. - Ghi li nhng cu tr li trong qu trnh phng vn (Khng c gng ly ra thng tin trong lc ny). - Tham kho mu trong qu trnh phng vn m bo t ra nhng cu hi ng n.6. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Hi tho.

65

SE-K48 Quy trnh thc hin v k thut xc nh yu cu phn mm hi tho. - Chun b Hi tho o Qung b ni dung o m bo cc bn lin quan s tham d. o Chun b hu cn tt. o Khi ng vt cht (warm-up materials): gi material ra trc hi tho chun b tham d v cng tng hiu qu ca cuc hi tho. C 2 loi warm-up materials: Thng tin c th v d n. Trong c th bao gm bn phc tho ca cc ti liu yu cu, lit k nhng tnh nng c ngh, bn sao cc cuc phng vn vi nhng ngi dng tim nng, bo co phn tch v xu hng, th t khch hng, bo co li v h thng hin hnh, ch th qun l mi, d liu marketing mi. Chun b cch suy ngh vt ra khi gii hn. - Chun b vai tr cho facilitator (vai tr nh ngi dn chng trnh hay ngi ch ta): o l ngi bn ngoi, c kinh nghim.x l v qun l yu cu hoc. o L mt thnh vin trong nhm v t c nhng thnh tu nht nh. - Ln lch trnh Hi tho - Chy chng trnh o Cc vn v phng php thng mi o Brainstorming o S trnh by v nhng vic tip theo: sau Hi tho, facilitator ghi li cc kt qu thu c. Sau , facilitator kt thc nhim v ca mnh v chuyn sang cho nhm pht trin.7. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Brainstorming

Brainstorming gm c 2 pha: - Nu ra cc tng: Mc ch l a ra c cng nhiu tng cng tt, mc ch mi l b rng, cha cn c chiu su. - Thu tm li tng: Phn tch cc tng c a ra, chn lc, t chc, nh gi, m rng theo chiu su, tinh chnh ... chng li thnh tng thch hp. K thut ny c nhng li ch chnh sau:

Khuyn khch c mi thnh vin tham gia. Cho php cc thnh vin tranh lun vi nhau v cc kin xut. Ngi iu phi hoc th k duy tr cuc hi tho khng b gin on. Din ra nhanh chng. a ra cc gii php kh thi cho vn . Khuyn khch cc tng, suy ngh sng to, c o.

Quy nh:

65

SE-K48 Khng c php tranh ci, ph bnh gay gt. T do sng to, tng tng. a ra cng nhiu tng cng tt Nghin cu tng hp li tng hay.

8. Trnh by quy trnh thc hin (cc bc), c im v nhng k thut phng php xc nh yu cu phn mm Storyboarding

C 3 loi Storyboarding: B ng: Gm cc bn phc tho, nhng hnh nh, slide ... Ngi phn tch m nhim vai tr h thng v hiu r v ngi s dng thng qua storyboard. Ch ng: Lm ngi s dng thy c kt qu cho d n cha c hon thnh. Tng tc: To cho ngi dng kinh nghim v h thng. Cc thnh vin ng vai tr nh ngi s dng.

Nhng ch : Khng nn u t qu nhiu vo Storyboarding Storyboard nn d chnh sa. Khng nn lm qu chi tit. iu s gy kh khn khi s dng cc k thut hoc cng c khc nhau khi ci t sau ny. C gng lm cho storyboard lin h vi nhau, tng tc c vi nhau.9. Trnh by quy trnh thc hin(Cc bc), c im v nhng k thut phng php xc nh yu cu phn mm p dng UseCase. Use Case l mt phng php lun trong ngn ng m hnh ha UML. l mt phng php lun kh hon chnh cho vic pht trin phn mm hng i tng. Use case c m t qua biu Use-case.

65

SE-K48Use case m t tng tc gia ngi dng vi h, n cho bit cc actor (Cc tc nhn) , cc chc nng ca h thng. Qua phng php m hnh ha Use case, cc tc nhn (Actor) bn ngoi quan tm n h thng s c m hnh ha song song vi chc nng m h i hi t pha h thng (tc l Use case). Cc tc nhn v cc Use case c m hnh ha cng cc mi quan h v c miu t trong biu Use case ca UML. Mi mt Use case c m t trong ti liu, v n s c t cc yu cu ca khch hng. Xy dng m hnh Use-case: - Bc u tin ca qu trnh m hnh ha Use-Case l nh ngha h thng(Xc nh phm vi ca h thng Hnh ch nht lin nt) : V h thng l mt thnh phn ca m hnh Use Case nn ranh gii ca h thng m ta mun pht trin cn phi c nh ngha r rng. nh ngha cc ranh gii v trch nhim ca h thng khng phi bao gi cng l vic d dng, bi khng phi bao gi ngi ta cng r rng nhn ra tc v no c kh nng c t ng ha tt nht h thng ny v tc v no th tt nht nn thc hin th cng hoc dnh cho cc h thng khc. Mt kha cnh khc cn ch l h thng cn phi ln ti mc no trong phin bn u tin ca n. C gng ti a cho phin bn u tin ca h thng thng l cch m ngi ta hay thc hin, th nhng nhng mc tiu qu tm nh vy c th khin cho h thng tr nn qu ln v thi gian cung cp h thng qu lu. - Tm ra cc tc nhn(Actor) v cc use-case o Mt tc nhn l mt ngi hoc mt vt no tng tc vi h thng, s dng h thng. Trong khi nim "tng tc vi h thng", chng ta mun ni rng tc nhn s gi thng ip n h thng hoc l nhn thng ip xut pht t h thng, hoc l thay i cc thng tin cng vi h thng. Ni mt cch ngn gn, tc nhn thc hin cc Use Case. Thm mt iu na, mt tc nhn c th l ngi m cng c th l mt h thng khc (v d nh l mt chic my tnh khc c ni kt vi h thng ca chng ta hoc mt loi trang thit b phn cng no tng tc vi h thng). o Mt Use Case l i din cho mt chc nng nguyn vn m mt tc nhn nhn c. Mt Use Case trong ngn ng UML c nh ngha l mt tp hp ca cc chui hnh ng m mt h thng thc hin to ra mt kt qu c th quan st c, tc l mt gi tr n vi mt tc nhn c th. Nhng hnh ng ny c th bao gm vic giao tip vi mt lot cc tc nhn cng nh thc hin tnh ton v cng vic ni b bn trong h thng. - M t cc Use-case - nh ngha mi quan h gia cc Use-case - Kim tra v ph chun m hnh. V d:

65

SE-K48

10. Trnh by quy trnh thc hin(Cc bc), c im v nhng k thut phng php xc nh yu cu phn mm p dng Prototyping. Prototyping l phng php xc nh yu cu phn mm bng cch a ra cc mu th. Ngi pht trin s da vo cc yu cu kho st a ra 1 sn phm ban u phc tho c th bng cng ngh khc vi cng ngh s c s dng. Sau c s trao i vi ngi s dng, t tm ra cc yu cu mt cch c th, r rng hn, c bit l cc yu cu c tnh m. Vic to mu th c th c s dng nhiu ln nhiu phn v giai on khc nhau. Cc mu th c to ra c th c kh nng ti s dng, cc mu th sau s pht trin lin tip nn nn cc mu th trc.(M hnh tin ha) Vi mc ch phn tch yu cu phn mm ta xem mu th yu cu phn mm nh l s thc thi ring l ca h thng, nhm mc ch gip ngi pht trin, ngi s dng v khch hng hiu cn k hn v yu cu ca h thng. Vi mc ch phn tch yu cu ta c th chon xy dng cc mu th : throwaway, horizontal, user interface. (Nu mun ni c th tng loi mi ngi c sch Managing Requirement Software chng 13 nhe) xy dng cc mu th cho mc ch phn tch yu cu phn mm, trc ht ngi pht trin phi kho st cc yu cu ca h thng, tin hnh trao i m phn vi khch hng. La chn cng c thch hp cho vic pht trin mu th. Da vo cc yu cu kho st to bn mu ri tro i vi ngi s dng, vi khch hng, pht hin c th hn cc yu cu c bit cc yu cu c tnh m. Tin hnh pht trin theo mu th c ph duyt, sau bc tip tc to cc mu th c th s dng cc mu th c t trc.

11. Trnh by cc yu cu khi xc nh nhim v v phm vi ca phn mm Trong pht trin phn mm, c nhiu yu t cu thnh phm vi ca d n. Phm vi d n l mt hm ca: Chc nng cn c p ng nhu cu ngi dng. Ti nguyn sn sng cho d n. Thi gian cn c c th thc hin d n.

65

SE-K48

Phm vi d n. Ti nguyn, trc ht bao gm lao ng t developers, testers, tech writers, nhn vin m bo cht lng... Nu thi gian di, kt qu cng vic c th c tng ln, nhng n khng tng t l vi ti nguyn u t thm. Hiu qu tng th ca d n v th m s b gim st. Thm ti nguyn thm ch c th lm chm d n bi v cn phi o to v h tr cho nhn s mi, v th s lm gim nng sut ca d n. Nhm mc ch phn tch phm vi, ta coi ti nguyn l khng i trong sut d n. Thi gian, c th thay i nu nh ti nguyn sn c khng hon thnh cc chc nng mong mun. phn tch phm vi, ta coi nh thi gian l yu t c nh. Chc nng tng th b gii hn bi thi gian (c nh) v ti nguyn (cng c nh), v th phm vi kh thi chnh l hnh ch nht mu trng. Nu hiu nng i hi phi b sung c tnh ca h thng bng vi ti nguyn trn thi gian sn c th d n c phm vi kh thi. Thng thng trong cng nghip, cc d n u l d n vt phm vi.

12. Xc nh v qun l gii hn ca cc yu cu phn mm Mt s vn quan trng khi xc nh gii hn ca cc yu cu phn mm: a. Thit lp mt ranh gii cho cc yu cu cp cao, mt tp cc c tnh c nh ch mc s c phn cho mt phin bn c th ca sn phm. Thit lp mc phc tho hiu nng ca mi c tnh ca ranh gii. c lng ri ro cho mi c tnh, hay xc sut thc hin c th gy ra nh hng ti lch trnh v ngn sch. S dng cc d liu ny, thit lp ranh gii m bo s phn phi cc c tnh c nh hng n thnh cng ca d n. Ranh gii ca cc yu cu.

Mc ch ca qun l gii hn ca cc yu cu phn mm l nhm thit lp mt ranh gii cho cc yu cu cp cao ca d n. Chng ta xc nh ranh gii theo: tp cc c tnh

65

SE-K48c chia thnh cc ch mc, hay cc yu cu s c phn phi cho mt phin bn c th no ca ng dng.

Ranh gii cc yu cu. Ranh gii vch ra phi: t nht l c th chp nhn c i vi khch hng. C mt kh nng thnh cng hp l.

Bc u tin to ranh gii n gin l lit k cc c tnh c nh ngha cho ng dng. Cha kha ca bc ny chnh l vic iu khin mc chi tit. b. Thit lp mc u tin.

Trong thit lp mc u tin, quan trng l khch hng v ngi dng, qun c hoc mt ngi i din no , ch khng phi i pht trin, s thit lp mc u tin t b phn marketing trong nh. c. nh mc hin nng.

Thit lp mc th cho hiu nng mi c tnh ca ranh gii xut. Chia nhm theo 3 mc: thp-trung bnh-cao. d. B sung yu t ri ro.

Chng ta coi xt ri ro l xc sut vic thc hin c tnh s gy ra tc ng bt li n lch trnh v ngn sch. Ri ro cho php chng ta c on c tc ng ca vic gp mi c tnh ring bit vo trong ranh gii. Mt c tnh c ri ro cao c tc ng rt xu n d n, d cho tt c cc c tnh khc c hon thnh ng thi hn. Ri ro cng c chia thnh 3 mc nh vi hiu nng. e. Thu hp phm vi.

Thng thng mc u tin, hiu nng v ri ro khng ng nht vi nhau. C nhiu ch mc cp thit li c hiu nng thp, nhiu ch mc hu dng li kh thc hin. T , ta

65

SE-K48c th xem xt u tin cho cc c tnh, p dng vo cc ti nguyn c cung cp tng ti a li ch cho khch hng. C th thm nhn lc cho i d n hoc c th cho mt s tnh nng c u tin thp hn, dnh ngun lc pht trin cc tnh nng ti cn thit. 13. Trnh by phng php xc nh cc yu cu phn mm t khch hng Trong khi xc nh yu cu ca khch hng, ta phi xem xt c hai dng khch hng: -Khch hng cung cp cc yu cu v nghip v : Cung cp cc thng tin v cng ty, v cc c im mc cao, v m hnh v phm vi ca h thng. -Khch hng cung cp cc yu cu ngi s dng " cung cp cc thng tin v tng nhim v c th m h s lm vic vi phn mm. Ta cn phi hp, kt hp cht ch vi hai loi khch hng trn Phng php xc nh yu cu ca khch hng : -Ln lch hn gp r rng khi thc hin cng vic trao i vi khch hng -To mi trng thn thin vi khch hng trong khi thc hin xc nh cc yu cu, trnh lm cho khch hng kh chu trong qu trnh phng vn(y l vn rt nhy cm) -Trong khi trao i vi khch, cn tn trng cc quyn li ca khch hng. -Trong qu trnh trao i, s dng cc ngn t thng dng, khng s dng nhiu cc thut ng tin hc -Cn trao i v cng vic ca khch hng, nm bt, hc v hiu cc cng vic ( khi thit k v xc nh chc nng cho phn mm chnh xc). Yu cu khch hng gii thch tng c im cng vic nu cha hiu r phn mm c lm ra s tt v d s dng hn. -Khi xc nh c cc yu cu ca khch hng, cn thc hin vic nh trng s, tc l xc nh mc quan trng ca tng yu cu khch hng tp trung xy dng phn mm hp l. -Tn trng khch hng, ngay c khi phng php ca khch hng khc vi mnh, v c th l tng mi! -Kt thc qu trnh trao i, cn vit cc c t phn mm 14. Trnh by cc bc (quy trnh) .Phn tch cc yu cu phn mm Sau khi thu thp c cc thng tin v yu cu phn mm t khch hng, ta cn tin hnh phn tch cc yu cu . Mc ch ca vic phn tch ny l xc cc yu cu c d tha, mc quan trng ca cc yu cu . -T cc yu cu phn mm, ta xc nh biu use case. -Xc nh cc hot ng nghip v vi cc im bt u v kt thc. Trong cc chu trnh ny, ta cn xc nh cc i tng tham gia, cc lung thng tin v iu khin trong chu trnh -Xc nh vn ca mi trng hot ng phn mm -Thc hin kt ni cc yu cu nghip v v yu cu ca ngi s dng -M ta c th chnh xc cc iu kin v thun li trong khi thc hin cc yu cu ... 15. Cc k thut p dng trong Phn tch cc yu cu phn mm Cc k thut p dng trong Phn tch cc yu cu phn mm l: 1. M gi (Pseudocode) 2. My trng thi hu hn (Finite state machines) 3. Cy quyt nh (Decision trees) 4. Cy quyt nh dng th (Graphic decision trees) 5. Biu hot ng (Activity diagrams (flowcharts)) 6. M hnh thc th lin kt (Entity relationship models)

65

SE-K487. Phn tch hng i tng (Object-oriented analysis) 8. Phn tnh cu trc (Structured analysis) 9. Biu lung d liu (Data flow Diagrams) 16. Nu cc tiu ch cht lng v o lng cht lng yu cu phn mm. 1. Tiu ch cht lng. a. Cc tiu ch cht lng i vi ngi s dng. 1) p ng (availability) 2) Hiu qu (eficiency) 3) Mm do (flexibility) 4) Tnh ton vn (integrity) 5) Kh nng kt hp vi h thng (interoperability) 6) Tin cy (realibility) 7) Kh nng kim sot cc d liu khng chnh xc (robustness) 8) D s dng (usability) b. Cc tiu ch cht lng ca phn tch vin. 1) Bo dng (maintainability) 2) Hiu qu (portability) 3) Mm do (reusability) 4) D kim tra (testability) Nh vy tng cng c 12 thuc tnh cht lng, cn phi cn bng cc thuc tnh cht lng. 2. o lng cht lng yu cu phn mm. nh gi mt yu cu phn mm nh th no l tt, da vo cc c im sau. a. Cc c im i vi tng yu cu phn mm. 1) y ( complete ) 2) Chnh xc (Correct) 3) Kh thi ( feasible) 4) Cn thit ( necessary).) 5) Xp hng tnh quan trng v n nh (Ranked for importance and stability) 6) R rng. 7) C th kim tra c (Verifiable) b. Cc c im ca mt ti liu c t phn mm tt. 1) y . 2) C th sa i (Modifiable) 3) C th th theo di c (Traceable) 4) Thng nht ( consistent) 17. Phn bit cc khi nim kim th v nh gi cc yu cu phn mm. * Kim th cc yu cu phn mm (Testing): Vic kim th yu cu phn mm nhm xc nh cc yu cu c p ng c cc yu cu ca ngi s dng khng. Cng vic c thc hin nh sau: Vit cc trng hp kim th cho cc yu cu. S dng m hnh hp en t cc trng hp kim th nh gi hat ng hnh vi ca h thng. Duyt cc hnh vi v theo di cc hot ng kim tra h thng ang c t c p ng yu cu ca ngi s dng hay khng.

65

SE-K48Quy trnh kim th: Business Requirement Use Case Functional Requirement Cc cng c s dng: Dialog Map Test Case Ma trn theo di cc trng hp sdng * anh gia cc yu cu phn mm Khc vi kim th yu cu phn mm l xem xt xem yu cu phn mm c ph hp vi yu cu ngi s dng hay khng, vic nh gi yu cu phn mm li da trn tnh nht qun, thn thin, v d s dng ca ti liu c t yu cu phn mm. C th vic nh da vo cc c im sau: a. Cc c im i vi tng yu cu phn mm tt. a. y ( complete ) b. Chnh xc (Correct) c. Kh thi ( feasible) d. Cn thit ( necessary).) e. Xp hng tnh quan trng v n nh (Ranked for importance and stability) f. R rng. g. C th kim tra c (Verifiable) b. Cc c im ca mt ti liu c t phn mm tt. a. y . b. C th sa i (Modifiable) c. C th th theo di c (Traceable) d. Thng nht ( consistent) (C th tr li theo c tnh cht lng). 18. Quan h gia yu cu v thc hin. [Cha lm] 19. S dng phng php Traceability kim th cc yu cu phn mm Yu cu phn mm c tnh phn cp.

65

SE-K48

Cho nn cch tt nht kim th cc yu cu phn mm l d vt, i t trn xung di, theo tng nhnh, xem yu cu p ng vi mong mun ngi s dng hay cha. K thut traceability s lm cng vic d vt ny. Traceability i t yu cu cao nht ( Bessiness requirement ), t lin kt ti cc yu cu lin quan, t yu cu tng qut cho n yu cu con, to thnh mt cy phn cp. Nh vy khi tin hnh kim th s kim th da theo cc nhnh trn cc cy phn cp ny. 20. Hy cho bit khi nim ROI v phng php xc nh ROI khi xy dng cc yu cu phn mm

( p n c: ROI l cm t vit tt ca Return on Investment ( Li nhun trn vn u t ).L 1 khi nim trong cng ngh phn mm. ROI l mt phng php dng xc nh gi tr ca u t phn mm trong tng trng thi ca s pht trin t khi im ban u cho n giai on trin khai.

ROI gm cc nhn t sau: Tnh d hiu Tnh d lin lc Lin kt vi cc yu cu ca cng ty Chun v cng ngh ) Tt c cc nhn t trn c xy dng cho nhng ngi s dng ROI nh gi u t phn mm. Cc nh pht trin phn mm c th tng li nhun ca d n v nng cao cht lng ca phnmm m bo ng thi gian, ng chi ph bng cch gim nhng yu cu li.

65

SE-K48 Trong cc phn mm pht trin, chi ph b ra sa cha nhng yu cu li l rt tn km, nu pht hin cng mun chi ph li cn tn km hn. Sau y l hnh minh ha cho chi ph sa li yu cu.

Nh vy gim bt nhng chi ph ny cn phi gim bt nguyn nhn yu cu sai bng vic qun l yu cu tht hiu qu. Vn u t: chi ph qun l yu cu hiu qu. Li nhun: Chi ph thu c do khng phi sa cc yu cu sai. ROI=Li nhun/Vn u t. What Does Return On Investment - ROI Mean? A performance measure used to evaluate the efficiency of an investment or to compare the efficiency of a number of different investments. To calculate ROI, the benefit (return) of an investment is divided by the cost of the investment; the result is expressed as a percentage or a ratio. The return on investment formula:

Return on investment is a very popular metric because of its versatility and simplicity. That is, if an investment does not have a positive ROI, or if there are other opportunities with a higher ROI, then the investment should be not be undertaken. Investopedia explains Return On Investment - ROI Keep in mind that the calculation for return on investment and, therefore the definition, can be modified to suit the situation -it all depends on what you include as returns and costs. The definition of the term in the broadest sense just attempts to measure the profitability of an investment and, as such, there is no one "right" calculation. For example, a marketer may compare two different products by dividing the revenue that each product has generated by its respective marketing expenses. A financial analyst, however, may compare the same two products using an entirely

65

SE-K48 different ROI calculation, perhaps by dividing the net income of an investment by the total value of all resources that have been employed to make and sell the product. This flexibility has a downside, as ROI calculations can be easily manipulated to suit the user's purposes, and the result can be expressed in many different ways. When using this metric, make sure you understand what inputs are being used.21. K thut qun l thay i yu cu phn mm

Mt iu r rng rng, thay i l mt phn tp yu ca qu trnh xy dng yu cu phn mm, thay i c th n t bn trong hoc bn ngoi, v vy qun l thay i l cn thit. 1.Thay i l khng th trnh c , t k hoch cho n 2.Vch ranh gii cho yu cu 3.Thit lp mt knh n iu khin thay i 4.S dng h thng iu khin thay i bt cc thay i 5.Qun l thay i mt cch phn cp (Recognize that change is inevitable, and plan for it. Baseline the requirements. Establish a single channel to control change. Use a change control system to capture changes. Manage change hierarchically. Sch Manaing software requirements)

) Thay i yu cu phn mm c tnh phn cp, c ngha l thay i mt yu cu mc trn s ko theo nhng yu cu mc di.

65

SE-K48

Do cn phi theo vt cc thay i, bit thay i no dn n thay i no, khi c thay i cn phi thng bo cho nhng ai. K thut ma trn theo di yu cu phn mm c th t c mc ch nh vy Qu trnh lp ma trn nh sau: (1)Xc nh cc mi lin kt v cc kh nng lp ma trn (2) Chn dng ma trn: tng hp hay chi tit (3) Chn cc chc nng/ cc yu cu cn theo di (3) Xc nh phng php gn nhn cc yu cu (4) Xc nh ngun cc thng tin v cc yu cu phc v cho s linkt (5) Thng bo cho nhng ngi tham gia v s lin kt (6) Kim sot s lin kt trong qu trnh ph trin phn mm

22. Nu cc yu cu ca c t cc yu cu phn mm

M t hon chnh ng x ca h thng pht trin , bao gm tp cc trng hp s dng ( use cases ) m t mi tng tc ngi dng vi phn mm . Ngoi ra SRS cn cha cc yu cu b sung ( cc yu cu p rng buc ln thit k hoc trin khai nh hiu sut , cht lng)23. Nu khi nim v thnh phn ca c t yu cu phn mm

L hiu bit h thng ca khch hang vo thi im thit k v pht trin phn mm. l hp ng m bo v c khch hang v s hiu bit h thng,cc nhu cu khc trc khi n nh thi im.

65

SE-K48

24. Nu tn cc biu mu ca c t yu cu phn mm (theo IEEE v CMU)

-Giao din -Chc nng -C s d liu -Bo mt -Cht lng -Hn ch.25. Nu cc k thut vit c t yu cu phn mm

Lm theo v s dng cc mu c t (v d IEEE 830-1998) Xc nh r cc ngun gc ca yu cu phn mm trong c t t nhn cho cc yu cu phn mm Ghi li cc nguyn tc cng vic To ma trn theo di phn mm

26. Nu phng php v k thut kim duyt (review) li cc yu cu xy dng

Lp k hoch Cc bui hp mt Chun b Cc bui hp duyt Lm sa i Kt thc Cng c s dng, mu s dng Cc tiu thc nh gi Requirement Inspection Checklist27. Kim th (testing) yu cu phn mm

Kim th yu cu phn mm l cng vic thc hin li sau khi c c cc yu cu phn mm t pha NSD, ch d nQa trnh ny l mt qu trnh cn nhc v kh nng p ng li yu cu phn mm do nhng hn ch v nhn lc, thi gian v ti chnh ca i ng pht trin phn mm. Qu trnh kim th pht hin cc yu cu phn mm i qu phm vi v gii hn ca phn mm, nh hng n kin trc h thng. Nhn chung kim th phn mm l mt qu trnh kim tra cc yu cu phn mm, t a ra nhng yu cu hp l v nhng phng n chp nhn c, tha mn c hai bn l ngi s dng v ngi pht trin h thng. Ti sao phi kim th yu cu phn mm:

65

SE-K48 Do tnh cht 2 mt ca yu cu phn mm: Cch nhn v suy ngh v phn mm t pha ngi s dng v cch nhn, suy ngh v phn mm t pha nh pht trin. Ngi s dng a ra nhng i hi qu cao hoc chng lin quan n qu trnh pht trin phn mm NSD a ra cc yu cu v ngh rt kh chp nhn l gy kh khn cho cc lp trnh vin NSD a ra cc yu cu nhp nhng v m h, qu trnh kim th s c trch nhim lm r cc yu cu ny. Pht hin cc c tnh tha do ngi pht trin h thng a thm vo hoc cc yu cu ph phn mm t pha ngi s dng gy tn km v khng cn thit Kim tra kh nng p ng v mt k thut c t r rng v chi tit cc yu cu Tiu ch kim th yu cu phn mm Hon thin Chnh xc Kh thi Cn thit R rng Kim tra c, xc minh c Quy trnh kim th yu cu phn mm: Bussiness Requirement Use Case Functional Requirement Cc cng c s dng: Dialog Map Test Case Ma trn theo di cc trng hp s dng28. nh gi cc yu cu phn mm theo cc thuc tnh cht lng phn mm

(theo slide mi phn 1.4. Khc vi 9 thuc tnh cht lng ca IEEE ??? ) Cc c tnh cht lng i vi ngi s dng Availability Efficiency Flexibility Integrity Interoperability Realibility Robustness Usability Cc c tnh cht lng i vi PTV: Maintainability

65

SE-K48 Portability Reusability Testability Tng hp c 12 thuc tnh cht lng. Cn phi cn bng cc thuc tnh cht lng ny29. Nu phng php theo di cc yu cu phn mm v m bo cc yu cu phn mm

Phng php theo di cc yu cu phn mm:Theo di du vt ca mt yu cu phn mm cho php chng ta qun l c cc yu cu phn mm ny, ngun gc ca n, cc mi lin quan ca n v cch thc hin, kim th, bo dng v pht trin n.

04 thao tc cn thit vi qu trnh theo di du vt ca mt yu cu phn mm: Forward to Requirement: qu trnh mang yu cu khch hng(cusomers needs) chuyn thnh yu cu phn mm. Backward from Requirement: qu trnh xc nhn kh nng ng n ca yu cu phn mm bi yu cu ca khch hng. Forward from Requirement: l qu trnh n nh mt yu cu cho mt hoc nhiu thnh phn h thng. Thao tc ny thun tin cho vic c lng nh hng ca vic thay i yu cu phn mm. Backward to Requirement: qu trnh ny ch ra rng yu cu c kim tra thch ng vi h thng nht nh.

Ngi ta cn s dng ma trn theo di cc yu cu phn mm lin kt cc yu cu phn mm v cc thnh phn khc ca h thng. Cc lin kt ny thng c th hin gia cc thnh phn: Cc trng hp s dng (yu cu phn mm) Cc yu cu chc nng (functional requirement) Cc thnh phn thit k(design element) M chng trnh (code) Trng hp kim th(test case) m bo yu cu phn mm(Thm nh&xc minh cc yu cu phn mm): Mc ch ca vic kim tra xc minh thm nh cc yu cu phn mm v tnh ng n, tnh hon thin v cht lng ca cc yu cu phn mm Cc yu cu phn mm chng ta miu t trong SRS phi ng l nhng yu cu t khch hng, cc yu cu gii quyt c nhng cng vic ca h. Chng ta c nhim v kim sot tnh chnh xc, tnh khng trng lp ca cc yu cu phn mm ny. Cc thao tc thm nh xc minh c th bao gm: Vit cc trng hp kim th cho cc yu cu: s dng m hnh hp en t cc trng hp s dng nh gi hot dng v hnh vi ca h thng. Duyt cc hnh vi v theo di cc hot ng kim tra h thng ang c t c p ng cc yu cu ca NSD hay khng. Xy dng ti liu hng dn s dng (user manual): tit kim thi gian chng ta c th dng bn nhp ca ti liu hng dn s dng v s dng n nh l ti liu kim tra li cc yu cu phn mm.

65

SE-K48nh ngha cc tiu chun chp nhn: Hi NSD xem cc tiu ch thc h nh gi sn phm phn mm cn xy dng theo nhng tiu thc nh th no chng ta c th a nhng tiu thc vo cc trng hp s dng ca h thng

Tham gia vo qu trnh duyt cc yu cu phn mm:

Cc PTV Cc i din ca NSD (Product champions) Tt c cc thnh vin ca cng ty phn mm s tham gia vo qu trnh thc hin phn mm: LTV, cc nh kim th, v.v

Quy trnh duyt: Lp k hoch Cc bui hp mt Chun b Cc bui hp duyt Lm sa i Kt thc Cc cng c/biu mu s dng: Cc tiu thc nh gi(entry and exit criteria check list) Requirement Inspection ChecklistKim th cc yu cu phn mm(Testing):

Quy trnh kim th:

Business Requirement Use Case Functional Requirement

Cc cng c s dng:

65

SE-K48Dialog Map Test Case Ma trn theo di cc trng hp s dng

30. Nu tn mt s k thut pht hin cc yu cu phn mm

( Ch nu tn. Da theo phn 1.2.5 trong slide c b trong slide mi ??? ) Interview Requirements Workshops Brainstorming v Idea Reduction Storyboarding Use-Case View Prototyping31. Phn loi ngi s dng c vai tr nh th no trong pht hin cc yu cu phn mm.

Khi pht hin yu cu phn mm ta khng phi ly yu cu ca tt c cc ngi s dng v ta khng th c iu kin lm vic . V vy c mt phng php c a ra l phn lp ngi s dng: Chng ta s phn lp ngi s dng ra thnh cc nhm da vo cc tiu ch sau: Phn loi theo c im Phn loi theo v tr a l Phn loi theo vai tr cng tc Phn loi theo chc nng Sau ta lit k cc loi ngi s dng ra v m t chi tit cc c im ca nhng nhm ngi s dng Tm ngi s dng tiu biu cho tng lp Ly yu cu t nhng ngi s dng tiu biu ny32. Nu tn cc k thut m hnh ho yu cu phn mm. Hy a ra gii thch ngn gn v c im ca tng k thut.

y l cc hng m hnh ha yu cu phn mm hay cc k thut phn tch yu cu phn mm Stakeholder interviews Thng l m hnh dng phn tch cc yu cu lin quan n gi c, hp ng, phm vi ca d n. Requirement workshops Contract-style requirement list Mesurable goals Prototypes Use case 65

SE-K48 SRS Stakeholder identification

33. Trong cu trc ca c t yu cu phn mm (SRS) System Requirement v Software Requirement c hiu khc nhau nh th no v c c t v tr no trong ti liu SRS.

Trong cu trc ca c t yu cu phn mm (SRS): System Requirement (yu cu h thng) nu ln cu hnh hin ti ca c s h tng thng tin ca h thng s c pht trin phn mm nh : cu hnh h tng mng, h thng my tnh, cc thit b ngoi vi ang c, .. . v nh hng ca chng ln phn mm s xy dng. N xc nh cch m phn mm mi phi tng tc vi h thng c v nhng rng buc quan trng phi c qun l cn thn. Software Requirement c hiu l cc yu cu v phn mm bao gm: cc chc nng ca phn mm, hiu nng ca phn mm, cc yu cu v thit k v giao din, cc yu cu c bit khc... do khch hng a ra. Trong ti liu c t yu cu phn mm (SRS) th System Requirement c t pha trc Software Requirement: System Requirement c c t trong phn cc yu cu chung nht i vi h thng phn mm s pht trin. Software Requirement l phn chnh ca ti liu SRS, bao gm m t chi tit yu cu i vi tng chc nng m h thng cn phi t c , n c c t phn trung tm ca ti liu SRS.34. Ti sao cn kim th nh gi cc yu cu phn mm. Nu tn mt s phng php kim th yu cu phn mm thng dng m em bit.

Vic kim th nh gi cc yu cu phn mm l cn thit bi v qua vic kim th nh gi, chng ta mi c th thm nh c tnh ng n, tnh hon thin v cht lng ca cc yu cu phn mm m chng ta miu t trong SRS. Cc yu cu phi ng l nhng yu cu t khch hng, gii quyt c cc cng vic ca h. Mt s phng php kim th yu cu phn mm thng dng: Kim th hp en Kim th hp trng35. Nu cc phng php theo di vt ca yu cu phn mm.

C 2 loi theo di vt: Tng minh v khng tng minh. o Tng minh: Cc mi quan h c thm vo mt cch tng minh bi i d n. V d: Mi quan h gia yu cu v cc use case. o Khng tng minh: V d mi quan h phn cp gia cc yu cu vi nhau. Yu cu cha c mi quan h khng tng minh vi cc yu cu con. Phng php: (t sch SE Pressman p289) Sau khi xc nh yu cu, chng ta lp cc bng theo di vt. Cc bng ny cho php chng ta bit khi thay i mt yu cu th n s nh hng n nhng nhn t no trong h thng s xy dng. Mt s bng theo di vt:

65

SE-K48 Features traceability table: Cho bit mi quan h gia yu cu v cc tnh nng m khch hng s thy c trong sn phm. Source traceability table: Xc nh ngun ca tng yu cu. Dependency traceability table: Cho bit mi quan h gia cc yu cu vi nhau. Subsystem traceability table: Phn loi cc yu cu theo cc phn h m n c nh hng. Interface traceability table: Cho bit mi quan h gia yu cu v cc giao din ca h thng (c giao din ngoi v giao din trong).36. Qun l thay i yu cu phn mm

L do thay i yu cu phn mm . Cc tc nhn bn ngoi: thay i vn , ngi s dng thay i quyt nh ca mnh, mi trng bn ngoi thay i, h thng mi tn ti. . Cc tc nhn bn trong: chng ta khng hi nhng ngi ng cc cu hi ng ti thi gian ng trong sut qu trnh tp hp yu cu ban u. Chng ta khng to ra mt tin trnh thc hnh gip vic qun l thay i yu cu m thng thng xy ra theo chiu hng tng tin. Qu trnh qun l thay i: 1.on nhn nhng thay i tt yu, v ln k hoch x l n.. 2.Thit lp ranh gii cc yu cu. 3.Thit lp mt knh n kim sot s thay i.. 4.S dng mt h iu khin thay i nm bt nhng thay i.. 5.Qun l s thay i theo phn cp. Qun l Cu hnh cc yu cu : 1. Ngn nga nhng yu cu khng hp php v cc ph hoi tim tng hay nhng yu cu thay i linh tinh. 2. Bo m vic duyt li nhng ti liu v yu cu. 3.Lm thun tin vic ly li v/ hoc xy dng li nhng phin bn trc ca ti liu. 4. H tr qun l, t chc ranh gii gii thot k hoch cho nhng ci tin hoc cp nhp ngy cng tng ca h thng. 5.Ngn chn ng thi vic cp nht ti liu hay xung t v khng cho php cp nhp nhng ti liu khc nhau cng lc.

65

SE-K48

Cc cu t 37- 39 khng chc chn: T khng chc chn v 3 cu hi ca thy: Phn bit 3 cu hi? Thy hi ch tp trung vo phn Requirements trong EA, hay vic ng dng EA vo c t, m hnh , phn tch yu cu ngi dng ni chung ( tc Usecases + Requirements ) C 2 hng: Nu c Requirements v Usecases: Kh ph hp cho cu 38 ( Nu da trn cu 32). Nu tr li tm tt th kh to khc bit gia 3 cu. Cn ni chi tit th kh di v mt cng. Ch tp trung chi tit phn Requirement: trnh by di.37. chc nng ca EA h tr c t yu cu phn mm.

To ra cc yu cu phn mm bn ngoi (External Requirements) + To trong biu ( Diagram ) M Custom pages trong Enterprise Architect UML Toolbox. Chn Requirements Cm i tng Requirement, th vo trong biu Nhp tn v cc thng tin khc cho Requirement. Save li

+ To trong gi ( Package)

65

SE-K48 Nhy phi vo gi, chn Insert | New Element ( hoc Ctrl + M ) Trong hp thoi New Element, chn Requirement Nhp tn v cc thng tin khc cho Requirement. Save li.

To ra cc yu cu phn mm bn trong mt Element khc (Internal Requirements) Ta c th to ra cc yu cu phn mm bn trong 1 Element khc nh Usecase, Class, ch ra rng Element c nhim v ci t cc yu cu nu. thc hin vic ny, ta thc hin nh sau: M hp thoi Properties ca Element. Chn Tab Require Nhp tn Requirement v cc thuc tnh ca n. Bm Save lu Requirement li Nu mun, bm New to tip Internal Requirement khc cho Element, cng hoc thc hin cc thao tc qun l khc ( sp xp, sa, xa ) Bm OK ng hp thoi

Chuyn yu cu bn trong ra ngoi M hp thoi Properties ca Element. Chn Tab Require Chn Requirement cn chuyn. Bm Move External Trong hp thoi m ra, chn package lu External Requirement

Qun l cc thuc tnh c bn ca yu cu: Cc thuc tnh c bn ca yu cu c qun l trong EA: Tn Trng thi thc hin ( xut, ph chun, ang ci t, bt buc, kim tra) kh u tin Loi yu cu ( Chc nng, hin th, bo co, kim th , )

65

SE-K48 Ghi ch Cc thng tin khc

Ghi ch cc thng tin b sung S dng thuc tnh Note S dng i tng ch thch Note S dng Tagged Values (la chn, m ca s Tagged Values, to ra cc cp Key Value lu tr cc thng tin b sung cho yu cu )

Xa, sp xp cc yu cu Thc hin trong ca s Project Browser, thng qua cc button trn toolbox hoc menu ng cnh. To cu trc phn cp cho yu cu Khi mun chuyn 1 Requirement thnh con ca 1 Requirement khc, trong ca s Project Browser, ta r ri th Requirement-con vo Requirement-cha. Vi chc nng ny, ta c th xy dng c cu trc phn cp cho Requirement: 1 requirement ln c th bao gm nhiu Reqiurement nh hn. nh s cho cc Requirement: Nhy phi vo package, chn Show Level Numbering Kt xut thnh vn bn .38. Cc chc nng ca EA h tr m hnh ha yu cu phn mm.

La chn Requirement cn kt xut Vo menu, chn Project | Documentation La chn loi bo co ph hp ( Rich Text Format, HTML,) Trong hp thoi m ra, nhp cc thng s cn thit. Ch chn Use template l requirement template

Xy dng cu trc phn cp ca cc Requirement: o EA h tr lp biu Requirements, cung cp cc chc nng cho php m hnh ha Business rules, features, functional and non-functional requirements.

65

SE-K48 Vi chc nng ny, ta c th xy dng c cu trc phn cp cho Requirement: 1 requirement ln c th bao gm nhiu Reqiurement nh hn. Khi mun chuyn 1 Requirement thnh con ca 1 Requirement khc, trong ca s Project Browser, ta r ri th Requirement-con vo Requirement-cha. Cc Requirement ny lin h vi nhau bng quan h s hu ( owns owned by ) Xy dng quan h kt tp gia cc Requirement: Cc Requirement c th s dng mi tn biu din lin kt Aggregation kt ni vi nhau, xy dng quan h kt tp phn cp . Requirement cha bao gm cc Requirement con, c lm mn v chi tit hn bi cc Requirement con. Chng lin h vi nhau bng quan h kt tp ( composed of part of ) Cu trc phn cp ny gip qun l phc tp ca cc h thng ln, vi hng ngn yu cu v nhiu thnh phn c s dng ci t cc yu cu Ci t Requirement: Mi yu cu Requirement c th c ci t bi 1 Element khc nh Usecase, Class, Interface hay Component. Ta xc nh quan h bi lin kt Realization . Element s c gn l 'Realizing' cho Requirement. Khi lin kt c to, EA s hin th Requirement trong th Require ( hp thoi Properties) ca Element. Requirement v Element lin h vi nhau theo quan h realized by - implements

39. Cc k thut trong EA gip phn tch yu cu phn mm.

Xem xt cu trc phn cp v ci t ca yu cu phn mm S dng ca s Hierachy. Khi la chn 1 Requirement, ta s xem c cc thng tin v: Quan h phn cp ca Requirement: cho bit n l con ca cc Requirement no, cha ca cc Reqiurement no, quan h thuc loi no (s hu hay kt tp) Quan h v ci t ca Requirement: n c ci t bi cc Element no. Nu Requirement c cc Requirement con, EA c th chi tit vic ci t ca tng Requirement con .

Phn tch s ph thuc ca Requirement S dng ma trn quan h (Relationship Matrix): thng qua ca s Relationship Matrix. Cho bit quan h gia cc i tng trong 2 package Qun l thay i: S dng ca s Audit View: ghi chp li cc thay i thc hin. Kch hot Audit View: M ca s Audit View

65

SE-K48 Chn Audit Settings Enable Auditing

Lp bo co S dng menu Project | Documentation Lp cc bo co c t thng thng : thng tin v Requirement v cc Requirement con tng ng. C nhiu nh dng vn bn khc nhau nh: Rich Text Format, HTML, Bo co quan h ci t Bo co quan h ph thuc

65

SE-K48

Chng 2. Thit k phn mm (Software Design)1.Nu quy trnh thit k phn mm mc Logic Thit k mc logic l s m t gii php v mt t chc, cu trc v mi quan h gia cc phn ca gii php t gc nhn ca i d n. Pha thit k logic bt u sau pha thit k mc khi nim. Quy trnh: o Phn tch thit k mc logic: o Lc danh sch cc cng c v cng ngh thch hp. o Xc nh cc dch v v i tng nghip v. o Xc nh cc thuc tnh quan trng v cc mi quan h ch o. o Ti u thit k logic: o Trau chut thit k logic. o Kim tra, ph chun thit k logic. u ra ca thit k logic: o M hnh i tng mc logic. o Thit k giao din ngi dng mc cao. o M hnh d liu mc logic. u ra ca thit k logic l c s cho thit k vt l. 2. Cc phng php to cc thit k mc logic (Logical Design) S dng lc usecase to thit k mc logic. Bao gm cc bc sau: La chn danh sch cc cng ngh c th Xc nh cc i tng nghip v ph hp nh lc Use case. Xc nh cc dch v t lc usecase Xc nh cc thuc tnh t lc usecase Xc nh cc quan h gia cc i tng t lc usecase

3. c t ti liu thit k mc logic Ti liu c t thit k mc logic gm 3 phn chnh : m hnh i tng mc logic, m hnh d liu mc logic, v thit k giao din ngi dng mc cao. Trong khi xy dng ti liu , ch s dng CRC card v biu din tin. CRC card gip ta tp trung vo nhng trch nhim mc cao ca mt lp, ch khng i vo cc phng thc v thuc tnh chi tit ca lp. CRC card cng gip nhn din cc quan h gia cc i tng khc nhau trong thit k. Biu din tin gip ta thy cc actor v i tng tham gia vo mt tng tc v th t cc thng ip tng tc gia cc i tng . - M hnh i tng mc logic M hnh i tng mc logic cho ta bit cc i tng, mi quan h gia cc i tng trong h thng cng nh cc phng thc v thuc tnh ca mi i tng. Khi to m hnh , ta phi xem xt tt c cc yu cu nghip v v yu cu ngi dng cng nh cc rng buc c th xut hin trong cc kch bn. - M hnh d liu mc logic

65

SE-K48M hnh d liu mc logic cho ta bit cc thc th v quan h gia cc thc th c trong h thng. - Thit k giao din ngi dng mc cao T danh sch cc i tng v cc phng thc ca mi i tng, i thit k c th c nhng tng ban u v cc chc nng, lung x l m ngi dng mong i, v c th s dng nhng thng tin ny thit k cc thnh phn giao din ngi dng nh : cc nt bm, text box, menu 4. Kim th v ti u thit k mc logic Giai on kim th v ti u thit k mc logic gm cc qu trnh : - Tinh lc danh sch cc i tng : Khi tinh lc cc i tng cn ch : Nu 2 i tng cng din t mt thng tin hay cng iu khin mt hot ng th ta c th kt hp chng li. Nu mt thuc tnh cn tn ti c lp th hy xem n l mt i tng. Cng c th s cn nhng i tng mi iu phi mt tp cc dch v - Kim chng m hnh i tng mc logic Ta c th kim chng mt m hnh i tng mc logic bng cch kim chng tnh hp l , kim chng tng i tng ring l, hoc bng cch duyt kch bn s dng. +Vi kim chng tnh hp l, ta so snh m hnh i tng mc logic vi cc yu cu phn mm. +Vi kim chng tng i tng ring l, ta xem li cc input, ouput cng nh cc chc nng m i tng phi c. +Vi cch duyt kch bn s dng, ta nh gi tng kch bn, i n quyt nh xem cn phi c cc phng thc no v th t ca cc phng thc . - Xc nh cc li gi l trong m hnh thit k logic l li gi ng b hay khng ng b cng nh xc nh m hnh iu khin theo kiu ng gi cc i tng c gi li hay theo kiu c mt i tng iu khin ring gi ti nhng i tng . iu ny gip m bo tnh ton vn ca giao dch trong mt kch bn. 5. Qu trnh m hnh ha d liu mc logic M hnh d liu mc logic cho ta thy cc thc th v mi quan h gia cc thc th trong h thng. Qu trnh m hnh ha d liu mc logic : - Phn tch : +Nhn din cc thc th , quan h gia cc thc th v cc thuc tnh ca mi thc th +Chuyn cc thc th v dng bng +Chuyn cc thuc tnh ca mi thc th thnh cc ct ca bng +Xc nh quan h gia cc bng.Ta c th s dng bc ca quan h lm r hn quan h. Ch : Nu trong qu trnh thit k mc logic ny , ta c thng tin tinh lc cc ct v xc nh kha chnh, kha ngoi , th ta c th c php a kha chnh , kha ngoi vo m hnh d liu mc logic. Tuy nhin, thng ta ch a vo trong giai on thit k vt l. - Tinh chnh bn thit k: bao gm cc cng vic: +Tinh lc bn thit k +Kim chng li bn thit k

65

SE-K48

6. Qu trnh v cc phng php to cc thit k mc vt l Thit k vt l l qu trnh m t cc thnh phn, dch v v cng ngh trong h thng t gc ca i pht trin. u ra ca qu trnh thit k vt l bao gm : - Biu lp - M hnh Component, biu din tin, biu hot ng - S quan h - M hnh trin khai : network topology, data and component topology - c t cc component - M hnh lp trnh Qu trnh thit k vt l bao gm 4 bc : nghin cu, phn tch, ti u, v ci t. - Nghin cu: + Xc nh cc rng buc v yu cu mc vt l + Nhn din nhng vn quan tm, lo ngi , nhng thay i trong nn tng h tng. u ra : + Topology mng hin ti + Topology d liu hin ti + Topology cc component hin ti + Cc yu cu ng dng + K hoch qun l ri ro - Phn tch: + Pht trin mt m hnh trin khai s b + La chn cc cng ngh s c s dng pht trin h thng u ra : + Cc biu lp, din tin, hot ng c tinh lc + M hnh topology mng, d liu, component s b - Ti u: + Xc nh chin lc trin khai, ng gi + ng gi cc component v cc dch v + Phn b cc component vo cc nt mng - Ci t: + Xc nh m hnh lp trnh + c t giao din cc component, cc thuc tnh v cc dch v 7. Nu phng php xc nh cc yu cu i vi kin trc phn mm Thit k kin trc c bt u bng pha phn tch cc yu cu kin trc m mc ch chnh l hiu cc yu cu i vi kin trc phn mm c xy dng ca cc stakeholder. Stakeholder c th l ban lnh o, i pht trin, b phn bo tr, khch hng ,end-user Cc k thut phn tch yu cu i vi kin trc phn mm thng gp l : Phng php c t yu cu phi hnh thc , phng php use-case , phng php kch bn, phng php xy dng prototypes v phng php my hu hn trng thi. - Phng php c t yu cu phi hnh thc (v d bng ngn ng t nhin) l phng php rt c bn trong khi phn tch cc yu cu i vi kin trc phn mm, v c xc nh bng cch lm vic trc tip vi khch hng.

65

SE-K48Phng php use-case cung cp gc nhn rng hn v chnh xc hn v cc yu cu bng cch ch ra cc hnh vi bn ngoi ca h thng t gc nhn ca nhiu ngi dng khc nhau. - Phng php kch bn l dng ca use-case, nh ngha ci nhn ng v nhng pht trin c th ca h thng. - Phng php prototype c s dng xc nh giao din ngi dng v c th gip lm r hn hnh vi ca h thng. - Cui cng, vi nhng h thng i hi chnh xc an ton cao (safety-critical systems), thng dng phng php biu trng thi hay nhng ngn ng c t hnh thc. Nhng k thut trn c p dng v chng t c kh nng trong vic h tr phn tch yu cu v kin trc phn mm ca khch hng. Ngun : Tekinerdogan , Chapter 7 SYNTHESIS-BASED SOFTWARE ARCHITECTURE DESIGN 8. Nu cc hng tip cn xy dng kin trc phn mm M hnh chung: -

Cc tri thc domain bao gm : Problem Domain, Business Domain, Solution Domain v General Knowledge. - Hng tip cn Artifact-driven : To m t kin trc t cc artifact (v d cc class) trong c t yu cu

65

SE-K48

Hn ch : -Cc yu cu m h, nhp nhng, hoc khng y v t khi hu ch -Cc h thng con ngho nn ng ngha phc v nh l cc thnh phn kin trc -Kt cu ca h thng con khng c h tr tt - Hng tip cn Use-Case driven: Trong hng tip cn ny , kin trc c to ra t vic suy din cc use-case m t cc chc nng ca h thng

Hn ch : -M hnh domain v nghip v c xc nh trc m hnh use-case, do kh c th c c s chi tit ca 2 m hnh ny

65

SE-K48-Vic chn use-case thch hp khng c h tr -Use-case khng phi l cng c tt xy dng kin trc -Cc packet ngho nn ng ngha c th ng vai tr ca cc component - Hng tip cn Domain-driven: Kin trc c to ra da trn cc m hnh domain. M hnh domain c th c th hin bi cc dng nh : biu lp, biu lin kt thc th, frame, mng ng ngha, cc lut

+ Cch tip cn product-line tp trung vo vic s dng li kin trc, cc thnh phn phn mm, cc yu cu, ti liu, cc m hnh hiu nng, lch trnh, chi ph, k hoch kim th

+ Phng php domain-specific thng c s dng to ra m t kin trc cho mt h cc h thng , ch khng cho ring mt h thng n l

65

SE-K48

Hn ch: -Phn tch domain thng t hiu qu trong vic to ra kin trc phn mm -Phn tch domain thng khng do bn thn cc khi nim trong mt domain thng xuyn thay i - Hng tip cn Pattern-driven: Kin trc c xy dng nh s dng cc mu kin trc c sn ph hp vi mc ch v ng cnh ca vn a ra

Hn ch: -Khng gii quyt mt di rng cc loi kin trc

65

SE-K48-Vic chn mu hon ton ph thuc kinh nghim ca ngi k s -Khng p dng ngay mu c m phi qua phn tch -Vic kt hp cc mu khng c h tr tt 4.2 here 9. Cc thuc tnh cht lng ca kin trc phn mm: Availability, Modifiability, Performance, Security, Testability, Usability

TL: Availability: Tinh sn dung co lin quan ti s tht bai cua h thng va hu qua cua no.Mt s tht bai xay ra khi h thng khng con cung cp c dich vu a c c ta cua no.Mt tht bai nh vy co th quan sat c bi ngi s dung h thng _ con ngi hoc h thng khac. Tinh sn dung cua mt h thng la kha nng co th hoat ng khi h thng c yu cu. Modifiability: Kha nng thay i la noi v chi phi thay i.Co 2 mi quan tm: -Khi nao thay i va ai thay i Thay i co th xay ra trong qua trinh thc thi, bin dich, xy dng, thit lp cu hinh hoc qua trinh thc hin. Ngi thay i co th la mt nha phat trin, ngi s dung cui, hoc mt quan tri vin h thng. Performance: Hiu sut la noi v thi gian h thng co th ap ng khi co mt s kin xay ra. Mt s s kin nh: cac ngt, thng ip, yu cu t ngi dung, Security: Bo mt l mt thc o kh nng ca h thng chng vic s dng tri php, trong khi vn cung cp dch v ca n cho ngi s dng hp php. Mt c gng vi phm an ninh c gi l mt cuc tn cng, co mt s hnh thc. N c th l mt c gng c php truy cp vo d liu hoc dch v hoc sa i d liu, hoc n c th c dng t chi dch v cho ngi s dng hp php. Bo mt c th c nh ngha l mt h thng cung cp nonrepudiation, bo mt, ton vn, m bo, sn c, v kim ton. Testability: Kha nng kim th cp ti tinh d dang co th chng minh li cua phn mm thng qua th nghim.Co it nht 40% chi phi phat trin c danh cho th ngim. Usability: Kha nng s dung co lin quan ti s d dang cho ngi s dung thc hin mt nhim vu mong mun va cac loai h tr ngi dung ma h hng cung cp. N c th c chia nh vo cc lnh vc sau: Hc tnh nng h thng. Nu ngi s dng l khng quen vi mt

65

SE-K48 h thng hoc mt kha cnh c th ca n, nhng g h thng c th lm thc hin nhim v hc hoi d dng hn? S dng mt h thng hiu qu. nhng g h thng c th lm ngi s dng s dung no hiu qu hn trong hot ng ca ho? Gim thiu cc tc ng ca li. nhng g h thng c th lm giam thiu tac ng li ti ngi s dng? iu chnh h thng theo nhu cu ca ngi dng. Lm th no ngi s dng c th thch ng vi thc hin cc nhim v ca ho d dng hn? Tng s t tin v hi lng. iu g trong h thng cung cp cho ngi dng s t tin rng cc hnh ng ng l ang c thc hin?

10. Cc thuc tnh cht lng ca kin trc phn mm: Availability, Modifiability, Performance, Security, Testability, Usability.

Ging cu 9. 11. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Availability TL: Nhiu chin lc ta cp c sn trong cc mi trng thc thi tiu chun nh h thng iu hnh, ng dng my ch, v cc h thng qun l c s d liu. Tt c cc phng php tip cn duy tr tinh sn c , lin quan n mt s loi d tha, mt s loi gim st pht hin tht bi, v mt s loai phc hi khi tht bi c pht hin. Trong mt s trng hp, gim st hoc phc hi l t ng v trong nhng trng hop khac, no la tuy chinh.

65

SE-K4812. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Modifiability.

TL: Chung ta t chc cac chin lc cho kha nng thay i theo muc ich cua chung.Vd: mt nhom chin lc theo muc ich la : lam giam s modules bi anh hng trc tip khi thay i, ta goi nhom nay la localize modifications. Mt nhom khac co muc ich la: han ch cac sa i localized modules.Nhom nay c s dung prevent the ripple effect. Trong cach t chc nay co nhng module bi anh hng trc tip (nhng ngi c trch nhim c iu chnh thc hin cc thay i) v m-un gin tip b nh hng bi mt thay i (nhng trch nhim vn khng bi thay i nhng m thc hin phi c thay i thch ng vi module nh hng trc tip). Nhom chin lc th 3 co muc tiu iu khin thi gian va chi phi phat trin, ta goi nhom nay la defer binding time.

13. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Performance

TL: Mc tiu ca chin lc am bao hiu sut l trong mt hn ch thi gian to ra mt tra li cho mt s kin n h thng. S kin ny c th la mt s kin n hoc mt chui cac s kin, v l trigger cho mt yu cu thc hin tnh ton. N c th l s xut hin ca mt tin nhn, im ht hn ca mt khong thi gian, pht hin ca mt thay i ng k ca trang thai trong mi trng h thng, v vv. H thng x l cc s kin v to mt tra li. chin lc am bao hiu sut kim sot thi gian ma trong p ng c to ra.

65

SE-K48

14. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Security

TL: Chin thut t c bo mt c th c chia thnh nhng nhom c lin quan vi chng li cc cuc tn cng, nhng nhom c lin quan vi pht hin cc v tn cng, v nhng nhom c lin quan vi hi phc sau cuc tn cng. Tt c ba loi u quan trng. Noi mt cach tng t, t mt kha trn ca ca bn l mt hnh thc khng c mt tn cng, c mt cm bin chuyn ng bn trong cn nh ca bn l mt hnh thc pht hin mt cuc tn cng, v c bo him l mt hnh thc ca hi phc sau mt cuc tn cng.

65

SE-K48

15. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Testability TL:

Mc tiu ca chin thut am bao kha nng kim th l cho php d dng hn th nghim khi phn mm phat trin thm mt mc nao y.Kin truc k thut nng cao testability cua phn mm khng nhn c nhiu s ch nh l cc lnh vc trng thnh hn nh modifiability, performance, va availability, nhng, k t khi th nghim chim t l phn trm cao nh vy trong tng chi ph pht trin h thng, bt c iu g cc ky s c th lm gim thiu chi ph ny u mang mt ngha li ch ln. - Mc tiu ca mt ch kim tra l pht hin ra li. iu ny yu cu cung cp u vo cho phn mm ang c kim th v thu cc kt qua u ra. -Vic thc hin cc th tc kim tra yu cu mt s phn mm cung cp u vo cho phn mm ang c th nghim va thu cc kt qua u ra. -Chng ti tho lun v hai loi chin lc kim th: cung cp u vo v thu kt qua u ra, v gim st ni b.

16. Cc chin lc v phng php m bo thuc tnh cht lng kin trc phn mm Usability: Kin truc phn mm Usability lin quan n mc d dng cho ngi s dung ho hoan thanh mt tac vu mong mun va cac loai h tr ma h thng co th cung cp cho h. Chin lc: C hai loi chin lc h tr kin trc phn mm Usability, mi loi li hng n mt nhm cc i tng ngi dng khc nhau. - Loi th nht: thi gian thc, bao gm nhng chin lc h tr ngi dung trong qu trnh h thng thc thi. - Loi th hai da trn s lp li t nhin ca vic thit k giao din ngi dng v h tr nhng nh pht trin giao din trong giai on thit k. N c lin quan ht sc cht ch ti chin lc sa i modifiability c trnh by trn.

65

SE-K48Phng php m bo thuc tnh cht lng: Trong qua trinh phat trin, vn tinh tin dung ca phn mm c thc hin thng qua vic xy dng cac nguyn mu cung nh cac cac kim th cua ngi dung. C th phn thnh cc lnh vc nh nh sau: - Tim hiu v cac c tinh cua h thng: Nu ngi dung khng quen vi mt h thng c th hoc mt kha cnh c th ca h thng, h thng c th lm g cng vic tm hiu ny tr nn n gin hn? - S dung h thng mt cach hiu qua: H thng c th lm g ngi dung cm thy hiu qu hn trong vic thc hin cc thao tc ca h? - Ti thiu hoa cac li co th xay ra: H thng c th lm g mt li ngi dng c nh hng ti thiu nht n ton b h thng? - Thich ng gia h thng vi yu cu ngi dung: lm th no mt ngi dng (hay chnh bn thn h thng) c th thch ng cc cng vic ca ngi dng tr nn d dng hn? - Gia tng tin tng va tinh ap ng gia h thng va ngi dung. H thng c th lm g cho ngi dung s t tin l cc hnh ng hp l s c thc hin? 17. Phng php ATAM: c im, Bn cht, Cc k thut tiu biu c im: l phng thc ton din cho kin trc nh gi (Architecture Tradeoff Analysis Method), mt cch thc ton din cho vic nh gi mt kin trc phn mm. Bn cht: ATAM c tn nh vy v n th hin mt kin trc mun tha mn c mc tiu cui cng th phi th no, lm th no cc mc tiu cht lng ny tng tc v cn bng vi nhau. N cn c thit k s dng nhng mc tiu ny nhm tp trung s ch ca cc i tng nh gi vo nhng phn ca cu trc l mc tiu chnh ca vic t c mc ch. K thut tiu biu ca CBAM: - Phn nhm tham gia: yu cu 3 nhm: o Nhm c lng: nhm ny nm bn ngoi d n v c nhim v c lng nh gi kin trc. o Nhm lp quyt nh d n: nhng ngi ny c trao quyn theo di v ra quyt nh trong qu trnh pht trin ca d n. o Nhm khch hng: Cc khch hng c tham gia trong qu trnh c lng. - Phn giai on: 0+3 giai on: o Giai on 0: "Partnership and Preparation", trng nhm c lng v nhng ngi ra quyt nh d n chnh hp li a ra chi tit k hoch. o Giai on 1 v 2: l cc giai on c lng, ni mi ngi ngi li phn tch cc chc nng. o Giai on 3: c tip tc vi vic nhm c lng a ra bo co cui cng. - Yu cu v u ra ca ATAM: o Ngn gn, sc tch v mt kin trc. o L khp ni ca cc mc tiu chc nng. o m bo yu cu v mt cht lng trong cc kch bn. o nh x c nhng quyt nh v kin trc vi nhng yu cu v cht lng. o Ch ra c nhng nhy cm hay nhng yu t cn bng trong chin lc. o Ch ra c nhng mo him v ri ro c th pht sinh trong k hoch. 18. Phng php CBAM: c im, Bn cht, Cc k thut tiu biu c im: l phng php phn tch kin trc phn mm da theo li ch v gi thnh. Bn cht: Ni dung c bn ca phng php ny l mong mun lm sao to ra c s chnh lch ln nht gia li nhun thu c t h thng xy dng v gi thnh chi ph cho cng vic thit k.

65

SE-K48K thut tiu biu ca CBAM: bao gm 9 bc sau : - Bc 1: i chiu kch bn. - Bc 2: Lc kch bn - Bc 3: Thu thp nhng kch bn c mc u tin. - Bc 4: Gn li ch. - Bc 5: Pht trin kin trc k hoch cho cc kch bn v s quyt nh cu chng trng i vo cht lng thuc tnh phn hi t cp cc. - Bc 6: Xc nh quyn li ca s mong i v cht lng thuc tnh phn hi theo cc cp bi php ni suy. - Bc 7: Tnh ton tng li nhun thu c t kin trc k hoch. - Bc 8: chn mt chin lc kin trc da trn ROI nhm vo cc hn ch v chi ph v lch trnh. - Bc 9: Xc nhn li kt qu vi trc gic Cu 19: c im v bn cht ca phng php Function-oriented(structured) Design Bn cht: Phn r chc nng ca h thng ra thnh nhiu phn nh, mi phn ny li c thit k chi tit hn cc bc sau. S dng k thut thit k t tng quan n chi tit (top-down). Mi module mc thp nht ch thc hin mt phn vic nht nh, t lin quan n cng vic ca cc module khc.

c im: Khi c mt thit k hng cu trc tt, c th d dng to ra nhng chng trnh tt, c tnh h thng, gim s nhp nhng, kh hiu. M ca chng trnh l r rng v d hiu D dng to ra cc module chng trnh n gin, d hiu, thun tin trong vic trin khai v nng cp.

Cu 20: c im v bn cht ca phng php Object-Oriented Design Bn cht: L phng php phn tch v thit k h thng da trn 3 bc chnh sau y: Pht hin cc i tng Xc nh cc thuc tnh v cc phng thc ca chng Xc nh cp bc ca cc i tng

65

SE-K48y l phng php mnh v rt hiu qu trong thit k v xy dng phn mm. Phng php ny nhn h thng, s vic, vn theo quan im i tng, trong gi vai tr c bn v trung tm l i tng. Mt h thng c coi nh mt tp hp cc i tng cng nh mi quan h gia cc i tng . Phng php ny cho ta mt ci nhn ng n hn, chnh xc hn v th gii thc, cho php m t h thng ng nh n tn ti trong thc t v khng b ph thuc vo cch m t, cch hot ng ca my tnh. C 3 nguyn tc chnh ca phng php thit k hng i tng: Tnh ng gi cho php mt lp c th c dng li m khng cn bit cch n hot ng nh th no. V vy, vic module ha v tru tng ha cc lp c cung cp che du thng tin. Tnh k tha cho php mt lp c th c dng li bng cch s dng mt s tnh nng m lp sn c. Tnh a hnh cho php cc lp tng qut c th lm vic c vi nhiu kiu i tng khc nhau.

-

c im: - m bo s tng ng gia m hnh phn tch v m hnh thit k: Vi phng php c in, mc d cng l ca mt h thng nhng m hnh phn tch v m hnh thit k khng c s tng ng cao, do vic chuyn i qua li gia hai m hnh gp nhiu kh khn. Kt qu l nu h thng c nhng thay i th vic thc hin li qu trnh phn tch v thit k s phc tp v kh khn. Vi thit k hng i tng, gia hai m hnh gn nh c s tng ng nn t gp phi nhng kh khn trn. - Tng tnh tru tng ca bi ton: M hnh hng i tng duy tr mi lin h cht ch gia d liu v cc thao tc trn d liu trong mt thc th thng nht. iu ny phn nh ng bn cht ca th gii thc, do thit k hng i tng t c tnh tru tng bi ton cao hn. - Tng c tnh n nh trc nhng thay i. - Tng tnh s dng li. - Tng tnh linh hot v kh nng m rng d dng. - tin cy v an ton cao. - H tr kh nng hot ng song song: Bn cht ca cc i tng l tn ti v hot ng c lp, c tng tc vi mi trng. Do , tr khi c s ch nh c bit, cc i tng lun hot ng song song. - S dng cng c thit k rt mnh, l UML.

65

SE-K48Cu 21: c im v bn cht ca phng php Data-structure Centered Design Bn cht: tng chnh ca phng php ny l so khp cu trc ca chng trnh vi cu trc ca d liu m chng trnh s dng. Cc chc nng ca mt chng trnh hon ton c nh ngha da trn cc c tnh ca d liu u vo v u ra.

c im: Hin nay, y l phng php thit k phn mm c tnh h thng nht. N thch hp nht vi nhng ng dng m cu trc d liu (u vo v u ra) l r rng. Phng php ny s khng th p dng khi m cu trc d liu l mp m, khng r rng. Thch hp nht cho cc ng dng c lin quan nhiu n vic x l file. Cu trc ca chng trnh c mi quan h mt thit vi cu trc ca d liu, khi cu trc d liu thay i dn n cu trc ca chng trnh cng thay i theo. Qu trnh thit k bao gm nhiu bc, sau mi bc c th thu c nhng kt qu r rng.

-

22. Nu c im v bn cht phng php Component-based Design (CBD) - Cac giao din va cac phu thuc a c inh nghia co th c cu thanh va phat trin mt cach c lp. - CBD tp trung vao cac vn lin quan ti vic cung cp, phat trin, va tich hp cac thanh phn theo th t cai thin tai s dung.

22.Lc khi nim :Lc khi nim hay cn gi l m hnh d liu khi nim l mt bn ca nhng khi nim v nhng mi quan h ca n. N m t nhng ng ngha ca mt t chc v biu din li thnh mt chui cc nh ngha theo cch t nhin. c bit, n m t nhng c im quan trong ca mt t chc(entity classes), n c khuynh hng tp trung cc thng tin, nhng thuc tnh v s kt hp gia cc phn quan trng ca mt h thng. Bi v n m t li ng ngha ca mt t chc v n khng phi l thit k c s d liu, n c th tn ti trong nhiu mc tru tng khc nhau. Cu trc ca chun ANSI 4-lc bt u vi tp hp ca lc ngoi tc l mi lc m t mt cch nhn v th gii xung quanh ca mt con ngi. Chng c hp nht vo mt lc khi nim n, y chnh l mt siu tp hp ca nhng lc ngoi. Nu th gii ca con ngi thay i, m hnh cng s thay i theo. M hnh d liu khi nim c th to ra khung cnh tru tng, nh ngha nhng iu c bn nht. M hnh cho php ci m cng ng hng i tng gi l tha k. Tp hp nhng v d ca mt lp thc th (entity class) c th chia vo nhiu lp con m n s hu. Nh th, mi v d ca mt lp con cng l mt v d ca lp cha. Mi v d ca mt lp thc th cha cng l mt v d ca nhiu lp thc th con.

65

SE-K48Mi quan h gia lp cha v lp con c th l duy nht hoc khng. Phng thc ny c th cn mi v d ca lp cha ch duy nht l v d ca mt lp con. Tng t nh vy, mi quan h gia lp cha v lp con c th l ton b hay khng. N l ton b nu phng thc cn mi v d ca lp cha u l v d ca lp con. V d v mi quan h Mi ngi c th thc hin nhiu thng v lm n. Mi thng v lm n ch c th do mt ngi thc hin. 23.Nu khi nim v MSF v cc phase trong MSF MFS(Microsoft Solutions Framework) l cng c cung cp tp hp cc m hnh, cc quy tc cho vic thit k v pht trin gii php doanh nghip nhm m bo cc thnh t ca d n nh l con ngi, tin trnh, cng c c m bo qun l y .ng thi n cng cung cp nhng vn thc t cho vic ln k hoch, thit k, trin khai nhm m bo thnh cng cho gii php. Cc pha:5 pha 1) Phc tho(envisioning phase): l pha u tin, nhim v l to ra bng m t v mc ich v cc rng buc ca d n, xc nh i d n v cng vic m i d n cn lm p ng yu cu khch hng. 2) Ln k hoch(planning phase) Giai oan ny i d n xc inh gii php, ln k hoch cho gii php. Trong giai on ny phi xy dng cc c t yu cu, lng gi, chun b cc cng vic, lp lch cho d n 3)Pht trin(developing phase) Qui trnh pht trin(Bt u vng pht trin, to mt ng dng mu th, pht trin cc thnh phn gii php,xy dng gii php,ng pha pht trin) 4)Kim nh(Stabilizing phase) i d n thc hin tch hp ti v kim th bn beta. Kim th theo kch, nhn ra v giai quyt cc vn chun b xut bn/ 5)Trin khai(deploying phase) Giai on trin khai gii php, chuyn giao v h tr cho khch hng cho n khi nhn c s chp thun t pha khch hng. 24.Nu qu trnh thit k giao din v tng tc phn mm 1) To mt bn thit k s khai. 2) Cung cp tr gip ngi dng. 3) Chn la m hnh giao tip. Chn la mi trng cho ngi dng.

4)

25.Nu cc yu cu ca giao din v tng tc 1) Thit k trc quan. 2) S dng mn hnh mt cch ti u. 3) Mu sc hp l.

65

SE-K484) 5) 6) 7) 8) D dng truy nhp (cc phm tt). Kim sot c truy nhp. T to ra cc gi tr mc nh. Kim tra gi tr a vo. S dng Menu, Toolbar, v Help.

26.Nu mt s k thut trong thit k giao din v tng tc - K thut s dng mt cng c thit k mu th thit k cc Form giao tip. - iu khin trc tip : c trng quan trng bao gm + Tnh nhn thy c ca cc i tng quan tm + Gia tng hot ng trn giao din vi phn hi nhanh chng ca mi hnh ng. + Thay th ngn ng dng lnh phc tp bi cc hnh ng nhm iu khin trc tip cc i tng thy c. - Thit k lp v mu th + Qu trnh thit k nhm khc phc tnh c hu ca c t khng y . C 3 k thut mu th Tung ra (Throw away) : cc mu th c xy dng v kim th Gia tng (Incremental) : sn phm cui cng c xy dng nh cc thnh phn ring bit, mi thnh phn mt thi im. Tin ha (Evolutionary) : mu th khng b hy b m c dng nh l mt c s cho ln lp tip theo. - Thit k cc thnh phn tin trnh nghip v : + cho php mt chui cc cng vic c th quay lui hoc hy b. + c th c dng li. + phi c s tng ng gia cc thnh phn giao din vi cc thnh phn tin trnh 27.c im m hnh ha thit k d liu mc khi nim (conceptual data modeling)

Conceptual Data Model c im thit k m hnh ha d liu mc khi nim bao gm:

Bao gm cc thc th quan trng v mi quan h gia cc thc th . Khng c cc thuc tnh c ch r Khng c kha chnh c ch r

Kiu m hnh ha d liu ny thng c dng nh s trung gian kt ni gia cc thc th v gii thch cch m d liu c lu tr. Mc d thit k m hnh ha d liu khng nht thit l ph thuc vo cc chun. Nhng phi chc chn rng n phi tun theo t nht 2 dng thng thng: dng th nht (1NF) v dng th 2 (2NF). The first normal form 1NF Lut c bn t chc c s d liu

65

SE-K48 Loi tr cc ct ging nhau trong cng mt bng. To cc bng ring bit cho mi nhm c d liu lin quan and nhn dng dng c ct c bit hoc tp cc ct c bit to kha (the primary key).

The second normal form 2NF Trnh by thm v cc vn lc b d liu trng lp T hp tt c cc yu cu ca 1NF. Lc b cc tp con ca d liu mRemove subsets of data that p dng cho nhiu dng ca bng v t chng vo cc bng c bit. To mt quan h mi gia cc bng mi ny v bng c k tha thng qua kha ngoi (foreign keys). T mai i c vic nn 0 lm c, c iu vn tranh th lm mt cu cho kp. Tuy vy trnh trng lp nn mnh lm t di ln. 28. c im m hnh ha d liu mc khi nim

M hnh ha d liu mc khi nim l vic cu trc ha d liu hay biu din d liu t nhng cu trc thng tin thc t thnh m hnh d liu c lp vi h qun tr c s d liu. N c cc c im sau: - L bc u tin trong vic thit k d liu. - Biu din phong ph cc cu trc thng tin phc tp. - Gn gi vi th gii thc. - c lp vi m hnh d liu do bt k h qun tr c s d liu no cung cp.

29. Qu trnh m hnh ha d liu mc khi nim

M hnh ha d liu mc khi nim l bc u tin trong vic thit k d liu ca mt phn mm ng dng bao gm cc bc sau y: 1. iu tra, phn tch cu trc thng tin phc tp, nhng ng dng khc nhau v yu cu thc t i vi phn mm. V d: Khi lm phn mm ngn hng phi nghin cu cc d liu thc t theo yu cu nghip v ca mt phn mm ngn hng. 2. La chn nhng thng tin cu trc thnh c s d liu 3. Biu din d liu bng m hnh d liu mc khi nim.30. Nu mt s cc k thut trong m hnh ha d liu mc khi nim [Cha lm]

31. c im m hnh ha d liu mc Logic

T m hnh d liu mc khi nim phi chuyn thnh m hnh d liu do h qun tr c s d liu cung cp. M hnh sau chuyn i gi l m hnh d liu mc logic. C cc m hnh d liu logic : phn cp, mng, quan h, hng i tng c im: - Mi h qun tr c s d liu khc nhau c cc m hnh d liu mc logic tng ng.

65

SE-K48 Cng mt m hnh mc khi nim c th chuyn i thnh nhiu m hnh mc logic. N m t y cc thnh phn d liu, cc rng buc d liu, cc quan h d liu m h qun tr c s d liu c th thao tc. L m hnh trung gian gia m hnh d liu mc khi nim v mc vt l. L bc tip theo ca m hnh ha d liu mc khi nim nn cc bc trc ging m hnh ha mc khi nim. Sau khi c m hnh ha d liu mc khi nim th tip theo l la chn h qun tr c s d liu Chuyn i tng ng gia m hnh ha d liu mc khai nim thnh m hnh ha d liu mc logic.

32. Qu trnh m hnh ha d liu mc Logic

33.Nu cc k thut thit k bo mt cho ng dng thit k mt ng dng c tnh bo mt, bn phi m bo cc k thut sau trong khi thit k: 1. Phi tin tng vo cc h thng c kim tra v qua th thch: Bt k khi no c th, bn phi tin tng vo cc h thng c kim tra v qua th thch hn l ra cc gii php ca ring bn. Dng cc gii thut c qua th thch trong cng nghip, m bo tnh k thut, v c h tr nn tng tt. c bit nhng h thng kiu vy c nh cung cp kim th v c h tr v mt k thut. Nu bn quyt nh pht trin 1 h thng ca ring bn, th nn xc nhn rng cc k hoch v k thut ca bn c cc chuyn gia kim tra v hy nh gi li v mc bo mt ca t chc ca bn trc v sau khi thc thi cc gii php. 2. Khng bao gi tin tng vo cc u vo t bn ngoi: Bn phi xc thc v tt c cc d liu c a vo bi ngi dng hoc cc thit b. 3. Gi nh rng cc h thng bn ngoi l khng an ton: Nu ng dng ca bn nhn c cc d liu khng c m ha, d tn thng t cc h thng bn ngoi, phi xem nh cc thng tin y b xm phm. 4. m bo nguyn l v vic t quyn nht: Vi mt ti khon, ng cho php nhiu quyn hn qu mc cn thit. Vic truy xut cc ti nguyn mt ti khon nn c cc quyn hn t nht. 5. Gim cc thnh phn v d liu hin c: Hy c gim bt cc thnh phn v d liu m bn hin c trn ng dng ca mnh. bn c th tp trung vo cc chc nng m bn cho rng phi s dng n. 6. Mc nh ch bo mt: Khng cho php cc dch v, cc ti khon, v cc k thut m bn thy r rng l khng cn thit. Khi bn trin khai ng dng trn client v server, th cc cu hnh mc nh ca ng dng phi c bo mt. 7. Khng tin tng vo cc bin php bo mt m t ting tm. M ha d liu phi c cc kha v gii thut qua th thch. Cc d liu mt phi c lu tr vi cc bin php ngn nga truy xut mi tnh hung. Cc bin php n gin, th khng c coi l bo mt. 8. Nguyn l theo di STRIDE: STRIDE l vit tt ca Nhn din s gi mo (spoofing identity) , S lc li (tampering), S t chi tun theo cc lut nh (repudiation), s phi by thng tin (information disclosure), t chi dch v (denial of service), tm cch tng quyn hn (elevation of privilege). l tp hp cc mi nguy him v bo mt m h thng cn bo v n chng li chng. 34. Nu cc k thut m bo cht lng phn mm giai on thit k m bo cht lng phn mm giai on thit k, ta cn thc hin cc k thut sau: m bo chnh xc, tin cy ca cc yu cu phn mm trong ti liu.

65

SE-K48S dng mt c s h tng k thut tt. a c cc thng tin v qun l vo. S dng k thut d tha. S dng cc cng c pht trin cht lng S dng cc cng c kim tra tin cy c cung cp theo ng dng S dng c ch x l li thch hp Gim s lng chc nng ca ng dng thay v hon thin cc khuyt im ca ng dng. 35. Nu cc c im trong giai on n nh v giai on trin khai 1.Giai on n nh: Mt trong cc c im ca giai on ny l cng cng vic ca i thc hin d n gim dn xung trong khi cng vic v qun l sn phm tng ln. i pht trin d n chun b tm dng cng vic ca mnh chuyn sang giai on phc v v h tr. Chun b source-code cho vic bo tr v pht trin trong tng lai. Trong khi i qun l sn phm phi tng cng cc cng vic ca mnh, chun b trin khai sn phm. 2.Giai on trin khai: i d n trin khai sn phm ti khch hng. Sau i qun l sn phm phi thng xuyn theo di nhng phn ng v tip thu nhng phn hi t pha khch hng. i d n ng thi phi sn sang cho vic gii quyt cc vn pht sinh.

36. Cc yu cu ca c t phn mm Kin trc phn mm cho mt h thng ng vai tr trung tm trong vic pht trin h thng v trong cc t chc to ra kin trc . N cung cp k hoch tng giai on cho c h thng v cho i d n ang pht trin n. N cho thy s phn cng cng vic phi c hon thnh bi cc i d n phn tch v thc thi. ng thi n c cn l thc o cht lng d n: hiu nng, kh chuyn, v an ton. Kin trc phn mm l cng c phn tch t s khai, m bo cho thit k s c th cho ra mt h thng chp nhn c. C th coi y l phn kt dnh, kt hp tt c cc pha trong d n li vi nhau cho tt c cc stakeholder ca chng. Chnh v tm quan trng ca c t phn mm: mt kin trc hon ho nhng thm ch cng tr nn v dng nu tt c mi ngi u khng hiu c n - V th cn phi miu t cc c t phn mm ny chi tit mt cch hp l, r rng khng gy nhm ln kh hiu, ng thi phi c t chc sao cho ngi khc c th tm kim thng tin cn thit mt cch d dng -Ti liu c t cn tru tng ngay c cc nhn vin mi cng c th hiu nhanh chng, nhng cng phi chi tit lm k hoch cho vic phn tch. -Ti liu c t phi va l mt quy tc: bt buc thc hin theo, va l ni dung: hng dn, theo k hoch thc hin cng vic.

65

SE-K48

-Vi mi ngi dng khc nhau, cn c cc loi ti liu khc nhau, vi cc mc v hnh thc cung cp thng tin khc nhau, tng ng. Tuy nhin cng c th to ra mt ti liu n nht p ng c tt c cc yu cu ca cc ngi dng . -Khi nim quan trng nht gn lin vi c t phn mm l khung nhn (view) cho ta thy nhng nguyn tc c bn ca ti liu c t phn mm. Xy dng ti liu c t l vic xy dng cc ti liu v cc khung nhn lin quan, thch hp sau l xy dng thm cc ti liu c kh nng p dng cho nhiu hn mt khung nhn. 37. nh dng c t phn mm: Cc loi ti liu nh dng c t thit k phn mm nhm to ra cc ti liu c t(TLT) chung cho nhiu kin trc phn mm khc nhau; nhm gip cho ngi vit cc TLT d dng hn cng nh ngui c ti liu c t c th nhanh chng tm ra thnng tin mnh cn mt cch nhanh chng. Cc loi ti liu c t: 1/ Ti liu m t chnh(Primary presentation ): m t cc phn t v mi quan h gia cc phn t 2/ Ti liu chi tit v danh mc cc phn t v m t mi quan h vi ti liu m t chnh. 3/ Cc biu ng cnh(Context diagram) Ch ra cch miu t h thng trong mi quan h vi mi trng 4/ Ti liu hng dn, qun l s thay i 5/ Architect background (kin trc nn): gii thch ti sao thit k c phn nh trong khung nhn(view). 6/ Danh sch cc thut ng, t chuyn mn, iu kin 7/ Cc ti liu thng tin khc 38. Cc quy nh chung v nh dng c t Mt ti liu c t thit k phn mm cn phi ch ra c: 1/ Giao din ca tng thnh phn: khi mt thnh phn c a giao din th cn xc nh s khc bit gia chng. 2/ Cc ti nguyn c cung cp 3/ Cc kiu d liu: cc kiu d liu mi do ngi thit k to ra 4/ Cc nh ngha ngoi l: cc ngoi l c th xy ra 5/ Cc thay i xy ra khi cu hnh li cc thnh phn 6/ Cht lng m vic thit k ny mang li (nh kh nng thc hin hay tin cy) 7/ Cc yu cu ca tng thnh phn 8/ L do thit k giao din ca tng thnh phn 9/ Hng dn s dng 39. Mt s k thut chnh trong thit k c t Kin trc phn mm i vi mt h thng l rt quan trng, n m t nhng cng vic phi c thc hin bi i thit k v thc thi. Xy dng cc c t kin trc phn mm l bc hon thin, ngay c mt kin trc hon ho cng l v dng nu khng ai hiu. V vy phi xy dng cc c t kin trc mt cc hp l. +c t khung nhn:

65

SE-K48Khng c mt mu tiu chun no cho c t khung nhn. Vi bt k phn no mun th hin, cn phi tun theo mt t chc tiu chun. Vic b tr cc thng tin rnh mch r rng s gip ngi vit d dng hn v ngi c tm kim thng tin nhanh hn v c th b qua nhng phn khng cn thit. +c t hnh vi: Statechart l mt hnh thc m t cc h thng tng tc vi rt nhiu c tnh hiu qu. N m t s phi hp trong nhng iu kin no ca nhng thnh phn v s tc ng ln nhau ca chng theo chui. N gip tr li cu hi nhng hnh ng no s xy ra khi h thng phn ng li nhng tc nhn trong nhng iu kin c th. +c t giao din: Giao din l mt ng gii hn gia hai thc th c lp gp nhau v tng tc hoc giao tip vi nhau. c t mt giao din bao gm vic t tn, nhn bit v c t nhng thng tin thuc v c php v ng ngha ca n. c t ny gm nhng thuc tnh ca cc yu t v nhng la chn k thut v khng nn nu qu nhiu hoc qu t thng tin. 40. Nu cc phng php kim duyt, kim th v nh gi cc c t phn mm

Mt c t cn ngn gn c th c hiu mt cch nhanh chng bi mt nhn vin mi, ng thi phi chi tit c th l m