You are on page 1of 23

49

Thit k v pht trin phn mm1


Margaret H. Hamilton
Hamilton Technologies, Inc. 49.1 Khi nim phn mm..........................................2 49.2 Bn cht ca k thut phn mm........................6 49.3 S pht trin trc thc t................................12 49.4 Thc nghim vi cng ngh DBTF..................19 49.5 Kt lun.............................................................20

Mt h thng da trn phn mm c th c so snh vi mt thc th sinh hc m ngi ta thng gi l mt x hi hu c. Bao gm phn mm, phn cng, phn con ngi, kh nng ni kt (v d nh Internet) ca chng, v yu cu tt c phi tn ti, x hi hu c silicn bn thn n l mt phn ca mt x hi hu c ln hn v d mt h thng y t bao gm bnh nhn, thuc men, cc cng ty dc phm, bc s, v cc trung tm y t; mt cuc thm him v tr bao gm tu v tr, cc nh lut v tr, iu khin nhim v, v cc phi hnh gia; mt h thng nghin cu gien bao gm cc t chc ti tr, cc qu ti tr, cc nh nghin cu, cc ti nghin cu, v gien; mt h thng ti chnh bao gm cc nh u t, vn, cc chnh sch, cc t chc ti chnh, th trng chng khon v tnh trng nn kinh th th gii; hoc n c th ch l bn thn hot ng thc tin. Cho d hot ng thc tin mang tnh cht chnh ph, khoa hc hay thng mi, h thng da trn phn mm, ging nh mt h sinh hc, phi pht trin v thch nghi p ng c mt cch nhanh chng nhng nhu cu ang bin i. V ging nh cc t chc khc, hot ng thc tin c c c s vt cht v cc chnh sch vn hnh gip hng dn v i khi p buc hng i v tc pht trin ca n n c th tn ti c m khng b chch hng. So vi mt x hi hu c phi tri qua rt nhiu th h mi c th t c mt thay i thm ch kh nh b mang tnh di truyn, th phn mm c th c bin i ngay lp tc. iu ny khin n tr nn u vit hn rt nhiu so vi thc th sinh hc v kh nng thch nghi tin ho ca n. Tnh lin tc ca quy lut kinh doanh v/hoc c s vt cht lm ny sinh mt vn kh cng thng mang tnh t nhin gia vic "Phn mm c th bin i nhanh nh th no" vi vic "ton b h thng c th chp nhn s thay i nhanh ra sao". Phn mm, b no ca x hi hu c silicn, iu khin cc hot ng ca ton b thc th. Tuy nhin, cng phi ghi nh rng chnh bn thn con ngi to ra phn mm.

1 Cc phn trong chng ny c trch t quyn T tng i tng: S pht trin trc thc t ca M. H. Hamilton v W. R. Hackler.

S tay C in t
Trong chng ny, chng ta s bn v cc nguyn l ca phn mm, n l g v n c pht trin nh th no, cng nh nhng nhn thc v k thut phn mm, vn c coi l nhng phng php pht trin phn gip bin cc tng thnh nhng sn phm phn mm c th2.

49.1 Khi nim phn mm


Phn mm l hin thn ca cc qu trnh logic bt k nhm phc v mc ch kinh doanh hay iu khin cc thit b hu hnh. Bn cht ca phn mm ging nh vic thuyt minh mt qu trnh c th c ng dng rt rng ri, khi m hnh ho cc t chc phc tp hoc hp hn khi thc hin mt thut ton s hc c th. Trong trng hp trc, c th c nhng lin kt quan trng gia cc doanh nghip k thut nhm y nhanh tc pht trin - thm ch n giai on xy dng cc m hnh sau chuyn sang cc trng hp ng dng v t chuyn sang vic thc thi cc thut ton mt cch cn thn ging nh trn. Do phn mm c kh nng c ng dng kh rng ri v c thit k tt c th c s dng trong thi gian di. Trong khi mt s ngi nh ngha phn mm ch l m do mt ngn ng lp trnh to ra trong qu trnh bin dch, th mt nh ngha rng v chnh xc hn phi th hin cc yu cu t ra, cc thng s k thut, thit k, cc bn lit k chng trnh, t liu, quy trnh, nguyn tc, cc thng s o lng v d liu cng nh cc cng c c dng to ra, kim tra, ti u ho v chy phn mm. Vic c hn mt nh ngha v phn mm l kt qu trc tip ca bn thn qu trnh pht trin kh phc tp ca phn mm. Mt nghin cu vo nm 1991 do Vin k thut phn mm (SEI Software Engineering Institude) [1] tin hnh khuch i iu ny hn c mt vn ng kinh ngc. SEI pht trin mt phng php pht trin phn mm nhm phn loi kh nng thun thc v phn mm ca mt t chc thnh mt trong nm cp t cp th 1, cp u tin (khng c kin thc cn bn v quy trnh phn mm), n cp 5, cp ti u. cp ny, cc phng php, quy trnh, v cc cng thc o cht lng, hiu sut c song hnh cng vi vic tp trung ci tin lin tc tin cy ca phn mm. Kt qu ca nghin cu ny ch ra rng 86% t chc c iu tra M nm cp 1. cp ny, cc thut ng nh "phi th thc", "ph thuc vo nhn vt chnh", v "ln xn" thng c s dng. V vi tnh phc tp ca cc ng dng da trn Internet ngy nay, s chng c g ng ngc nhin khi phn trm cc t chc thuc mc 1 ngy cng gia tng. lp li trt t t nhng ln xn ny cn phi c mt s am hiu tng tn v cc b phn cu thnh phn mm cng nh qu trnh pht trin ca n. Vay mn t th gii khoa hc t nhin, t mc ch l mt ci g kh phc tp xut hin khi mt s lng ln cc vt th n gin c tp hp li vi nhau. V d, mt phn t nc s khng c g ng ch khi n thiu i s vn ng. Nhng nu mt tp hp nhng phn t nc ny vo trong mt ci cc th s c mt vng trn gn sng trn b mt ca nc. Nu nhiu phn t nc ny c hp li th bin s ra i. Phn mm cng tng t nh vy. Dng m bn thn n th ch l mt thit b kh n gin. Nhng nu kt hp nhiu dng m li vi nhau th kt qu s cho ra i mt chng trnh phn mm kh tinh vi. Nu tp hp nhiu chng trnh phn mm li vi nhau th s cho ra i mt h thng c th gip a con ngi ln mt trng. Mc d ton th th bao gi cng ln hn tng cc b phn ca n, nhng ngi ta vn phi hiu c nhng b phn ca n nu ton th vn hnh theo mt trt t v c iu khin. Ging nh mt thc th vt cht, phn mm cng c th b "hao mn" do kt qu ca s duy tr bo dng, nhng thay i trong h thng c s v nhng ci tin nhm p ng nhu cu ca ngi s dng. Entrpi l mt hin tng quan trng trong phn mm c bit thng xy ra i vi cc t chc nm cp 1.

2 001, 001 Tool Suite, DBTF, S pht trin trc thc t, SOO, v Cc i tng hng h thng l sn phm thng mi ca Hamilton Technologies, Inc

Thit k v pht trin phn mm


Phn mm cp lp trnh thp nht c gi l m ngun. N hon ton khc vi m c th thc thi c (tc l, mt loi m c th c chy bi phn cng thc hin mt hay nhiu chc nng c nh r) ch phn mm c vit bng mt hoc nhiu ngn ng lp trnh v bn thn n khng th c chy bi phn cng. Ngn ng lp trnh l mt tp hp cc t, ch, s v cc thut nh vit tt c quy nh bi mt c php r rng, c dng m t chng trnh cho my tnh. C mt lot cc loi ngn ng lp trnh, rt nhiu trong s c sa i sao cho ph hp vi mt ng dng c th no . C, mt trong nhng ngn ng lp trnh ph bin ngy nay, c ng dng trong mi trng thng mi cng nh k thut trong khi nhng ngn ng hng i tng nh C++ [2] v Smalltalk thch nghi c trong c hai mi trng ny. Gn y nht, Java [3] cng c c kh nng thch nghi . Trn thc t, n tr thnh ngn ng c la chn dng trong cc ng dng da trn Internet. Mi y, trong k thut, ngi ta thng s dng cc ng dng lp trnh nh FORTRAN, HAL (hoc HAL/s) cho cc ng dng trong trung tm nghin cu v tr NASA, v Ada cho cc ng dng trong chnh ph trong khi trong cc ng dng kinh t thng mi, ngi ta li c xu hng s dng COBOL (COmmon Business Oriented Language). Nhn chung, ngi ta nhn thy rng trong bt k t chc no cng khng c nhng quy nh c th ngoi tr nhng quy nh lin quan n nhng g ph bin nht. Nhng quy nh ny quyt nh loi ngn ng no c s dng. V, ngi ta c th hy vng rng mt lot ngn ng ang c ng dng mt cch c hiu qu. Ngn ng lp trnh, c th l C++, Java, Visual BASIC, C, FORTRAN, HAL/s, COBOL, hoc khc na, cho php kh nng m ho nhng cu trc logic nh: Giao din ngi dng. Cung cp mt c ch m nh ngi s dng c th nhp, xem, qun l v truy vn thng tin t cc h thng my tnh ca mt t chc. Cc nghin cu ch ra rng hiu qu s tng mt cch ng k khi c cc giao din ngi dng trc quan. Cng ging nh cc giao din ngi dng ho (GUIs graphical user interfaces), mi h thng vn hnh cho thy mt s bin i ca ring n. Mt s tiu chun ho ph bin l Motif dng trong cc h thng UNIX v Microsoft Windows p dng cho cc h thng da trn PC. Tnh ton m hnh. Thc hin cc php tnh hoc thut ton (cc quy trnh tng bc gii quyt mt vn ) ca mt chng trnh chng hn nh iu khin qu trnh, tnh bng lng, hoc b lc Kalman. iu khin chng trnh. Thc hin vic iu khin di dng so snh, phn nhnh, gi cc chng trnh khc v lp li thc hin logic ca chng trnh. X l thng tin. C mt vi loi x l thng tin. X l thng bo tr gip l qu trnh nh chng trnh phn hi li trc nhng yu cu tr gip ca ngi dng cui. X l thng ip li l kh nng t ng ca chng trnh trong vic thng bo v sau l khi phc li t mt li no xy ra trong qu trnh nhp d liu, ly d liu, tnh ton v trao i thng tin, v.v.. V, trong nhng mi trng pht trin hng d liu, vic x l thng tin m ch kh nng ca cc i tng chng trnh chuyn ti thng tin sang cc i tng chng trnh khc. D liu hot ng. Cc chng trnh thng lu tr d liu trong mt cu trc d liu. D liu c th c truyn gia cc cu trc d liu trong cng mt chng trnh, tc l truyn t file hoc mt c s d liu bn ngoi n mt cu trc d liu bn trong hoc 3

S tay C in t
t u vo ngi dng n cu trc d liu bn trong ca mt chng trnh. Hoc, d liu c th c truyn t mt cu trc d liu bn trong n mt c s d liu hoc thm ch t giao din ngi dng ca ngi tiu dng. Phn loi v nh dng l cc thao tc truyn d liu c dng chun b d liu cho cc thao tc tip theo. C s d liu l mt tp hp cc c s d liu (i tng3) hoc thng tin v mt ch hoc cc ch lin quan, hoc v mt h thng (v d, ng c ca mt chic xe ti hoc mt phng nhn s trong mt t chc). Mt c s d liu c th bao gm cc i tng, v d nh cc mu n, cc bi bo co hoc tp hp cc ti liu v mt h thng (v d nh thng tin ca mt phng nhn s v cc nhn vin trong mt cng ty). Mt c s d liu c t chc lm sao ngi s dng c th d dng truy vo. D liu ca n i din cho cc s kin, khi nim, ch dn sao cho ph hp vi vic x l bng my tnh. N c th c trnh by, cp nht, truy vn hoc in n, v cc bo co c th ra i t . Mt c s d liu c th t chc d liu theo vi cch bao gm di dng quan h, phn cp, mng hoc hng i tng. Khai bo d liu m t d liu v cu trc d liu cho mt chng trnh. V d mt cu trc d liu nht nh vi phn loi ca n (nh d liu v mt nhn vin nht nh c th thuc kiu ngi no). i tng. Mt ngi, vt hoc ni chn c th l c th hoc tru tng. Mt i tng bao gm nhiu i tng (hoc d liu) c bn khc v mt tp hp cc thao tc iu khin cc i tng (hoc d liu). Khi c a vo cuc sng, n nhn bit c cc s vt (c gi l cc thuc tnh) v c th tc ng ln cc s vt (nhm thay i bn thn n hoc tng tc vi cc d liu khc). Chng hn, trong mt h thng robot, i tng robot c th bao gm cc chc nng c th di chuyn n n v tr n nh, trong khi n phi hp vi mt robot khc truyn i tng cho nhau. Cc i tng ny c th giao tip vi nhau thng qua cc phng tin truyn thng (v d nh truyn thng ip, sng radio, Internet). Thi gian thc l mt h thng phn mm c th p ng c cc cc yu cu v thi gian ti hn. chnh xc ca phn mm ph thuc vo cc kt qu tnh ton, cng nh thi gian c c cc kt qu . Cc h thng thi gian thc c th c cc yu cu khc nhau nh thc hin mt nhim v trong mt thi gian c th v x l d liu lin quan n mt qu trnh khc bn ngoi my tnh. Cc ng dng nh x l cc giao dch, khoa hc in t, qun l vn phng, cc h thng t, v cc tr chi video l nhng v d v cc h thng thi gian thc. Phn tn. Trong bt k h thng no cng c mt s lng cc qu trnh c lp, tng kt phi hp vi nhau. M hnh khch/ch l mt trong nhng dng in hnh nht ca

3 D liu v i tng c dng thay th nhau trong sut chng ny nh ngha thng tin trong mt chng trnh phn mm.

Thit k v pht trin phn mm


phn tn ang c s dng ngy nay. Trong m hnh ny, my khch s khi to hot ng phn tn v my ch s thc hin hot ng . . M phng l vic trnh by cc c trng c la chn v cch vn hnh ca mt h thng vt cht hoc tru tng bi mt h thng khc. V d, mt chng trnh phn mm c th m phng my bay hoc mt t chc hoc mt chng trnh phn mm khc. Ti liu bao gm vic m t cc yu cu, c im k thut v thit k cng nh cc ti liu c vit hoc c to ra, m t mi chng trnh trong mt h thng ln hn vn hnh v c th c s dng ra sao. Ngoi ra; v cc ch miu t hot ng ca chng trnh c lu ngay bn trong mi chng trnh. Cc cng c. Cc chng trnh phn mm thng thit k, pht trin, th nghim, phn tch hoc bo tr cc thit k h thng hay mt chng trnh phn mm khc v ti liu ca n. Chng bao gm cc b to m, trnh bin dch, trnh son tho, cc h thng qun tr c s d liu (DBMS database management systems), trnh xy dng GUI, trnh g ri, cc h iu hnh v cc cng c pht trin phn mm v k thut h thng. Vo nhng nm 1990, ngi ta thng nhc ti chng nh nhng cng c k thut phn mm c s tr gip ca my tnh (CASE computer-aided software engineering tools) v ngy nay chng c nhc ti nh thit k vng i hoc mi trng pht trin vng i, bao gm mt tp hp cc cng c, mt vi trong s c nhc ti trn. Mc du, cho n nay u c c th hiu c ng lc hc ca mt dng m ngun, nhng vic dng m ngun thch ng c vi x hi hu c ca phn mm ph thuc vo rt nhiu bin s bao gm ngnh cng nghip u c cng nh m hnh pht trin phn mm ca mt t chc. Ging nh mt n v c s, mt dng m c th c kt hp vi cc dng m khc hnh thnh nn nhiu dng thit b. Trong mt mi trng phn mm truyn thng, rt nhiu dng m hnh thnh nn mt chng trnh, i khi c gi l mt trnh ng dng hoc ch l mt ng dng n gin. Tuy nhin, chnh bn thn cc dng m ngun li khng c thc thi. Trc ht, m ngun phi c chy thng qua mt trnh bin dch to ra mt m i tng. Sau , m i tng c cho chy thng qua mt cu ni c dng xy dng m c th thc thi. Trnh bin dch chnh l cc chng trnh. Chc nng ca chng c hiu qu gp i. Trc ht, trnh bin dch s kim tra m ngun tm cc li c php r rng v sau nu khng pht hin ra li th s to ra cc m i tng cho mt h iu hnh nht nh. UNIX, Linux (mt sn phm ca UNIX), v NT l nhng v d v nhng h iu hnh. Mt h iu hnh c th c coi nh mt chng trnh gim st iu khin cc chng trnh ng dng nm trong s kim sot cu n. Do cc h iu hnh (cng nh cc cu trc my tnh) c th khc bit nhau, nn m i tng bt ngun t m ngun c bin dch cho mt h iu hnh khng th c thc thi di dng h iu hnh khc m khng c s bin dch li. Vic gii quyt mt vn kinh doanh hay k thut phc tp thng i hi phi c nhiu hn mt chng trnh. Mt hoc nhiu chng trnh cng chy gii quyt mt vn chung c gi gp li l mt h thng. K thut pht trin hng i tng hin i hn b qua khi nim v chng trnh v thay n bng khi nim hng phn loi ca mt i tng. Ni m mt chng trnh c th c coi nh mt tp hp ca nhiu m ti hn, thc hin nhiu chc nng nhm gii quyt mt vn m khng cn cn nhc n ranh gii i tng, th mt i tng c gn vi m gii quyt mt tp hp nhng chc nng nht nh ch lm vic 5

S tay C in t
vi kiu i tng . Bng cch kt hp cc i tng, ging nh cc phn t, c th to ra nhng h thng c t chc hn nhng h thng c to ra bi nhng phng php truyn thng. Phn mm c pht trin nhanh hn v t b li hn. Do cc i tng c th c ti s dng, nn mt khi c kim tra v s dng, chng c th c a vo th vin cho nhng chuyn vin thit k phn mm khc ti s dng. Cng c nhiu i tng trong th vin, vic pht trin nhng h thng mi cng tr nn nhanh chng v d dng hn. V mt l thuyt, cng do cc i tng ang c ti s dng c bo m (chng hn chng c kim tra v khng b li), nn t c kh nng nhng h thng hng i tng c nhng kim khuyt ln. Qu trnh vit phn mm v/hoc i tng c coi l qu trnh pht trin phn mm, hoc k thut phn mm. N gm c mt lot cc bc hay cn gi l giai on, gp chung li ngi ta gi l vng i pht trin. Cc giai on bao gm ( mc ti thiu c bn): giai on phn tch hoc yu cu, giai on ny cc vn thc tin c phn tch v tm ra nguyn nhn; giai on m t k thut, cc quyt nh c a ra lin quan n vic cc yu cu c p ng nh th no (v d quyt nh chc nng no l ca phn mm, chc nng no l ca phn cng); giai on thit k, y l giai on m mi th t GUI n c s d liu n u ra u c thit k hoc la chn nh mt phn ca bn thit k; giai on thc thi v lp trnh, vi mt hoc nhiu cng c c s dng vit v/hoc to m; giai on kim tra (g li), m c kim tra v li trong chng trnh c tm ra v sa cha; giai on ci t l giai on cc h thng c a vo sn xut; v giai on bo dng l giai on sa cha h thng. Tuy nhin, nhng ngi khc nhau li pht trin cc h thng theo cc cch khc nhau. Nhng m hnh h thng khc bit ny lm pht sinh cc quan im tri ngc nhau v k thut phn mm.

49.2 Bn cht ca k thut phn mm


Cc k s thng s dng thut ng "k thut h thng" ni n nhim v nh r, thit k v m phng cc h thng phi phn mm v d nh mt cy cu hoc mt thnh phn in t. Mc d phn mm c th c dng cho mc ch m phng, nhng n li l mt phn ca qu trnh k thut h thng. Mt khc, k thut phn mm c lin quan n vic sn xut phn mm. Trong ngnh cng nghip ca nhng nm 1970s, cc chuyn gia bt u nhn thy rng chi ph sn xut cc h thng quy m ln ang gia tng vi tc cao v nhiu d n b tht bi hoc ch t cng cho ra i nhng sn phm khng ng tin cy. Trong cuc khng hong phn mm, c rt nhiu vn ny sinh, trong quan trng nht l: Hiu qu ca nh lp trnh: Trong chnh ph vo nhng nm 1980s, mt chuyn vin thit k s dng C, trung bnh c th to ra c 10 dng m lnh mt ngy (mt chuyn vin thit k trong mt t chc thng mi trung bnh c th to ra c 30 dng m mi thng); ngy nay, trong chnh ph con s ch cn khong t 2 n 5 dng m mi ngy trong khi nhu cu thc t li cao hn rt nhiu, khong vi n t hng khi lng ln mi thng, v kt qu l cc n t hng b dn li. Hiu qu ca nh lp trnh ph thuc vo nhiu yu t- t s thun thc n s phc tp ca mt vn c m ho v dung lng chng trnh c to ra. Khoa hc o lng hiu qu ca qu trnh k thut phn mm c gi l metrics. Do bn thn k thut phn mm c rt nhiu m hnh khc nhau, nn vic o lng phn mm cng c nhiu m hnh. Ngy nay, cc cng thc metric rt phc tp v cn c cn nhc, xem xt n cc yu t: chi ph, thi gian thng mi ho sn phm, hiu qu ca nhng d n trc , truyn thng d liu, chc nng phn tn, kh nng hot ng, cu hnh c dng

Thit k v pht trin phn mm


nhiu, tc truyn, nhp d liu trc tuyn, hiu qu s dng, cp nht trc tuyn, qu trnh x l phc tp, kh nng ti s dng, lp t, vn hnh v v s im vn hnh. Chi ph loi b li. Nhng bin s ging nhau, lm nh hng n hiu qu ca nh lp trnh, cng s gy nh hng n chi ph g li chng trnh v/hoc i tng c to ra bi cc nh lp trnh. Ngi ta quan st thy rng vic kim tra v sa cha cc chng trnh tiu tn phn ln sc lc. Mi trng pht trin. Cc cng c pht trin v thc tin pht trin c nh hng ln n s lng cng nh cht lng phn mm. Hu ht nhng mi trng thit k v lp trnh ngy nay ch bao gm mt phn rt nh ca ci c cho l thc s cn thit cho vic pht trin mt h thng hon thin. Nhng mi trng pht trin vng i l nhng v d r nt cho hin tng ny. Hu ht nhng cng c ny c th c coi hoc l nh phn trn ca vng i (v d chng thc hin vic phn tch v thit k) hoc nh l nh phn di ca vng i (chng hn chng thc hin vic to m). Trn th trng c rt t cng c tch hp (ngha l chng c th thc hin c chc nng bn trn cng nh di). Thm ch cc cng c c kh nng thm chc nng m phng, kim tra, v cross-platform generation vo tng th cn t hn. Rt him khi cc cng c tch hp thit k h thng vi pht trin phn mm. Pht trin GUI. Pht trin GUI l mt qu trnh kh khn v kh tn km tr phi c s h tr ca cc cng c thch hp. S pht trin ca h thng t mt mi trng da trn my ch n my trm v/hoc PC cho thy s gia nhp th trng ca v s cc chng trnh pht trin GUI. Tuy nhin, a phn nhng cng c da trn GUI ny khng c kh nng pht trin ton b h thng (v d, thnh phn x l ch khng ch n thun l ngoi vi). Kt qu l s cho ra i nhng h thng d dang v c xu hng b li. mang li hiu qu, nhng chuyn vin thit k GUI cn phi c tip cn vi mi trng pht trin phn mm. Do nhng vn nu trn m hu ht nhng h thng ngy nay u yu cu tp trung nhiu ngun lc cho vic duy tr bo dng hn l cho vic pht trin t u chnh h thng . Lientz v Swanson [4] chng minh rng trn thc t vn ny cn nghim trng hn so vi nhng nm 1970. Qu trnh pht trin phn mm thc s rt phc tp v Jones [5] ti hin li mt cch y nhng hn ch v nhng g mt nhm cc k s phn mm vi lng thi gian, kinh ph v kh nng c hn c th sn xut c. V c bn, c nhiu m hnh k thut phn mm c gng gii quyt nhng nguyn nhn lm gim hiu sut v cht lng. ng tic l iu khng thc hin c bi nhng m hnh hin nay ch gii quyt nhng vn mang tnh triu chng ch khng i vo tn gc r ca vn . Trn thc t, bn thn k thut phn mm li b ph thuc rt nhiu vo c phn cng ln phn mm cng nh mi trng thc t ca chng [6]. Mng li thun thc qu trnh ca SEI nh v rt chnh xc ngun gc ca hu ht nhng vn pht sinh trong qu trnh pht trin phn mm hin nay. Vic c ti 86% cc t chc c iu tra vn cn nm mc phi th thc hoc cha n nh cho thy ch c mt s t cc t chc (14%) c th thch nghi c vi bt k giai on pht trin no ca k thut phn mm. Ni mt cch n gin, 86% cc t chc i ph vi mt vn thc tin ch n gin bng cch vit m. 7

S tay C in t
Nu h ch p dng mt nguyn tc ca k thut phn mm, th rt c kh nng n s khng cn ph hp vi nhng yu cu ca mi trng thc tin lun lun vn ng v pht trin. Vo nhng nm 1970s, "h phng php cu trc - structured methodology" tr nn kh ph bin. Mc d c nhng bin i v ch (v d, cc phin bn khc nhau ca k thut cu trc bao gm phng php ni ting Gane-Sarson v Yourdon) nhng ch yu n cung cp cho chng ta mt phng php xy dng phn mm nhm pht trin cc h thng kh dng trong k nguyn my tnh x l song song. Ngy nay, cc h thng trc tuyn, thm ch vi nhng thit b u cui cm nht (the dumbest of terminal), li chim v tr ch o cn GUI li tr thnh iu khng tng khi Berlin Wall sp . Mc d tri qua mt thi gian di pht trin v ngy nay phn cng mnh hn gp nghn ln so vi khi k thut cu trc ra i, nhng cng ngh ny vn tn ti. V n tn ti bt chp thc t l nhng ngi pht trin n chuyn sang nghin cu nhng m hnh c kh nng thch ng cao hn, v nhng mi trng k thut h thng cng vi nhng phn mm hin i hn c mt trn th trng. Vo nm 1981, Finkelstein v Martin pht trin "k thut thng tin" [7] cho nhng ngi s dng c mc ch thng mi (v d, nhng ngi c cc vn cn gii quyt c xu hng tp trung hn vo c s d liu). Cho n ngy nay, cng ngh ny vn kh ph bin i vi nhng ngi pht trin my tnh ln vi s u t vo chin lc CASE ca nhng nm 1990. V c bn, k thut thng tin l s ci tin phng php tip cn cu trc. Tuy nhin, thay v tp trung vo nhng d liu kh u vit theo cch tip cn cu trc, k thut thng tin li tp trung vo nhu cu thng tin ca ton b doanh nghip. Theo , cc chuyn gia kinh t s xc nh cc m hnh thng tin cp cao cng nh cc m hnh d liu chi tit. Kt qu l h thng c thit k da trn nhng m hnh ny. C phng php cu trc v k thut thng tin u ra i t nhu cu ng dng my tnh ln trong thng mi. Ngy nay, s ra i ca cng ngh ch/khch ( d liu ca cc t chc c th c truyn qua cc my ch c phn theo khu vc a l trong khi ngi tiu dng s dng GUI theo la chn ca mnh thc hin qu trnh x l a phng) v hiu ho phn ln nhng phng php ny. Trn thc t, hin nay c rt nhiu vn ny sinh trong cc ng dng thng mi ging vi nhng vn cn c d bo sm trong nhng ngnh k thut nh vin thng, hng khng. Cc mi trng ch/khch c c trng bi tnh a dng ca chng. Mt t chc c th lu tr d liu trn nhiu c s d liu, lp trnh bng mt s ngn ng lp trnh v s dng nhiu hn mt h iu hnh, v v th h cng s dng nhng GUI khc nhau. Do qu trnh pht trin phn mm tr nn phc tp hn gp mt trm ln trong mi trng mi ny, nn nhu cu hin nay l cn c mt phng php pht trin phn mm mi tt hn ra i. Nhng k thut hng i tng ngy nay gii quyt c mt vi trong s nhng vn ny. Vi tnh phc tp ca mi trng ch/khch, m c gi trong cc chng trnh s khng linh hot p ng nhu cu ca kiu mi trng ny. Chng ta tho lun v cch m ho thng qua cc i tng thay v cc chng trnh ln s to ra tnh linh hot cng nh hiu sut v cht lng nh th no nh kh nng ti s dng. Tuy nhin, vic pht trin phng php hng i tng ging nh mt con dao hai li. Trong khi r rng vic lm ch k thut ny s gip tng hiu sut ng k, nhng c mt thc t ng bun l vic pht trin n, nu khng c thc hin theo ng cch, c th s gy ra nhng vn phc tp hn rt nhiu so vi nhng vn c to ra t cc k thut cu trc. L do cho vn ny l rt n gin. Kinh ph thc hin cao hn. Nhng mi trng hng i tng phc tp hn bt k mi trng no, nhng vn thc tin c chn gii quyt bng phng php hng i tng phc tp hn rt nhiu so vi bt k loi vn no, v c rt t phng php hng i tng truyn thng cng nh cc cng c km theo gip i ng thit k c nhng h thng tt. C rt nhiu la chn cho phng php hng i tng. Do s a dng ny nn thng xy ra mt s ri ro. Kt qu l nhng vn sau cn phi c xem xt trc khi bt my tnh. 8

Thit k v pht trin phn mm


Vic tch hp l mt vn mang tnh thch thc v cn c xem xt ngay t u. Vi nhng h thng truyn thng, cc nh pht trin da vo cc phng php lp m hnh bt cn xng nm bt c cc kha cnh ca vn . Cho d tch hp i tng vi i tng, mun vi mun, giai on vi giai on, kiu ng dng vi kiu ng dng, th y l mt qu trnh kh phc tp. Vic ghp khng cn xng cc sn phm dng trong thit k v pht trin s cng lm cho vn tr nn phc tp hn. Vic tch hp thng to iu kin tt cho s pht trin cc thit b ca v s nhng nh thit k. i khi cc h thng ra i rt kh nm bt v cc i tng rt kh c tm kim. iu nguy him ln nht l s t ph hp vi th gii bn ngoi. Cc giao din thng khng tng thch v li thng din ra trong sut qu trnh pht trin. Kt qu l cc h thng c xy dng theo phng php ny thng m h v hay b li. Li cn c ti thiu ho. Cc phng php truyn thng bao gm nhng phng php hng i tng thng gy ra vic truyn li v d nh truyn li thng qua vic ti s dng i tng c li ni ti v nhng trong sut qu trnh pht trin. Li phi c gim thiu ngay t u qu trnh pht trin trc khi chng bt u vng i ca mnh. Ngn ng cn c chun ho hn4. Mc d mt s ngn ng c chun ha, mt s khc li kh quen thuc, nhng rt kh tm c nhng ngn ng va chun ha va quen thuc. Trong mi trng c nhiu ngn ng khng chun ho c s dng hn th vic thiu kh nng tm kim v qu nhiu li giao din l mt hin tng ph bin. Gn y, nhiu ngn ng phn mm hin i hn ra i (v d Ngn ng m hnh hp nht Unified Modeling Language, UML [18]), hu ht trong s l khng chun ho (hoc bn chun ho); mt s ngn ng ny c to ra bng cch tch hp mt s ngn ng li vi nhau. ng tic l ngn ng ti li i km vi ngn ng tt thng thng c nhiu ngn ng khng cn thit v t ngn ng cn thit; v do phn chun ho b mt i, nn nhng ng ngha ph bin cn tn ti trung ho nhng khc bit v gim bt s d tha. Syndrome of locked-in design cn phi c gim thiu. Thng thng, cc nh thit k b buc phi pht trin trn c s cng ngh ng dng khng c cu trc m v d nh mt gin c s d liu c bit hoc mt GUI. Qu l ti t nu c c gng pht trin mt h thng nh vy. Tuy nhin cn ti t hn nu s dng cc b phn cu thnh n nh cc b phn c ti s dng cho mt h thng khng da trn nhng cng ngh ny. Nhng k hoch c chun b tt, nhng thc tin kinh doanh chnh thng v s thi hnh chng s gip gim thiu c vn ny trong mt t chc. Kh nng thay i v i ph vi nhng bt ng cn c xem xt trc tin. Thng thng, ngi ta hay qun rng khi xy dng mt trnh ng dng cn phi xem xt qu trnh pht trin ca n. Ngi s dng thay i th hiu, mi trng pht trin phn
4

Xem Cc thut ng nh ngha cho cc nh ngha c chun ha

S tay C in t
mm thay i v cc cng ngh cng thay i. Nhng nh ngha v yu cu trong bi cnh pht trin thng tp trung vo nhu cu ng dng ca ngi s dng, m khng cn nhc n s thay i nhu cu ca ngi s dng hoc mi trng trong tng lai. Vic chuyn ti mt mi trng mi tr thnh mt hng pht trin mi m cho mi cu trc, h iu hnh, c s d liu, mi trng ha hoc ngn ng mi. Do , ngi ta thng trnh pht trin nhng chc nng ti hn do s nhng vn khng lng trc c v bo dng, phn gy ra nhiu ri ro v tn km chi ph nht ca mt vng i h thng thng b b qua trong qu trnh pht trin. gii quyt vn ny, cn phi s dng cc cng c v k thut cho php cng ngh giao thoa v cng ngh thay i, cng nh to ra s thay i v pht trin cc cu trc. Cc nh thit k phi chun b sn sng cho mi trng song song v mi trng phn tn. Thng thng, khi mt h thng c thit k cho mi trng phn tn, trc ht n c xc nh v pht trin sao cho thch ng c vi mi trng n x l v sau c ti pht trin li cho ph hp vi mi trng phn tn - mt cch ti s dng ngun lc. Mi trng song song v phn tn phi c xem xt ngay t u ca qu trnh pht trin. Vic phn b cc ngun lc cn phi c th hin r vi ngi s dng. Cho d mt h thng c c phn b cho cc b x l phn tn, thiu ng b hoc ng b hay khng v cho d hai hay mi b x l c la chn theo phng php truyn thng, th cc nh thit k v pht trin sn phm vn phi quan tm n vic tch hp nhng chi tit nh vy vo ng dng. Khng c mt s khc bit no gia m t k thut v s vn hnh ca h thng vi cch h thng thc thi n. iu ny dn ti vic c qu nhiu chi tit thc thi c a vo h thng trong giai on thit k. Mt khi cu trc ngun ny tr nn li thi, iu cn thit l phi thit k li v pht trin li nhng h thng ng dng c nhng thit k qu li thi ny. K thut t ng ho gip gim thiu cng vic th cng, cn thay th cho cc gii php t ng "lm vic". Trn thc t, bn thn t ng ho vn l mt qu trnh c th ti s dng c. Nu mt h thng khng th ti s dng c th tt nhin n khng phi l mt h thng t ng ho. Tuy nhin, hu ht qu trnh pht trin ngy nay khng nht thit phi thc hin bng tay. Cc h thng ngy nay c xy dng vi thng minh khng cho cc cng c t ng ho c th s dng chng nh u vo. Trn thc t, cc cng c t ng ho tp trung vo vic h tr cho qu trnh lao ng th cng thay v thc hin cc cng vic c th. in hnh l cc chuyn vin thit k chuyn cc nh ngha sang dng m mt cch th cng. Qu trnh c c kh ho trc khi ti s dng thng c thc hin bng tay lp i lp li. V nhng l do nu trn nn thm ch khi k thut t ng c gng thc hin cc cng vic c th, n thng gy ra s thiu hon thin gia cc min ng dng hoc thm ch trong ni b mt min ng dng dn n b m thiu hon chnh nh m shell chng hn. M c to ra thng khng hiu qu v kh kim sot i vi mt loi thut ton, mt loi cu trc, ngn ng hoc 10

Thit k v pht trin phn mm


thm ch mt phin bn ngn ng nht nh.Thng thng vic t ng ho tng phn cn i km vi s t ng ho tng phn i lp vi n hoc qu trnh th cng no . Cc qu trnh th cng l rt cn thit nhm hon thin nt cc cng vic m k thut t ng ho cha lm c. Vic phn tch qu trnh vn hnh thc (cc quyt nh v thut ton v cu trc) nn da vo cc nh ngha chun. Cc nh ngha h thng truyn thng cha thng tin khng y v qu trnh vn hnh thc ca mt h thng, bao gm cc quyt nh lin quan n thut ton hoc cu trc. Cc nh ngha h thng cn xem xt n c phng thc tch h thng ra khi mi trng mc tiu ca n. Do khng cn nhc n phng thc ny nn cc quyt nh lin quan n thit k phi da vo vic phn tch cc kt qu ca qu trnh th v sai kim tra c lin quan. Vic to ra cc nh ngha tin cy c th ti s dng cn phi c pht huy c bit l nhng nh ngha c cung cp sn. Cc nh ngha yu cu truyn thng thiu cng c gip tm kim, s dng, v m bo s tng ng trong h thng. Cc nh thit k buc phi s dng cc phng php th cng v khng chun ha tm cch phn chia h thng ra thnh cc b phn cho mc ch ti s dng. Do nhng b phn ny khng th t tch hp li vi nhau, nn kt qu l chng c xu hng b li. Mt khc, nhng h thng ny li khng th vn chuyn hay sa cha c nn chng t c kh nng c ti s dng. Trong cc phng php truyn thng, s d tha tr thnh mt kiu lm n kinh doanh. Thm ch khi cc phng php c xy dng nhm hng vo i tng, cc chuyn vin thit k thng mc cho cc thit b ca h thc hin cc ng dng hng i tng. S d nh vy l do nhng phng php ny khng tr gip tt c nhng g gn vi qu trnh hng i tng. Tnh ton vn thit k l bc u tin khi xy dng mt h thng kh dng . Khi s dng cc phng php truyn thng, ngi ta khng bit c liu mt thit k c tt hay khng cho ti khi vic ng dng n b tht bi hoc thnh cng. Vic thit k mt h thng thng thng da vo nhng cn nhc mang tnh ngn hn bi v kin thc khng c s dng li t nhng bi hc trc . Cui cng, s pht trin dn n tht bi. Gii php c a ra y l cn phi c phng php xy dng nhng nh ngha tin cy v c th ti s dng c. Mt khi nhng vn nu trn c gii quyt, th phn mm s tr nn r hn v ngi ta khng cn phi mt nhiu thi gian pht trin chng. Tuy nhin, thi gian li l mt vn kh c bn. Nhng vn ny ang tr nn cp thit khi cc chuyn vin thit k chun b cho cc mi trng phn tn cng ng hnh vi nhng u th ngy cng gia tng ca cc ng dng Internet. Vi nhng thch thc nu trn, mt t chc thng c mt vi la chn. Nhng la chn ny bao gm: (1) duy tr mi th trng thi ban u; (2) thm cc cng c v k thut h tr cng vic, ngoi ra cung cp thm cc tr gip cho nhng vng c la chn; (3) p dng nhng cng c v k thut hin i hn thay th nhng cng c v k thut hin c; (4) s dng mt m hnh mi vi nhng cng c v k thut tin tin nht nhm chun ho qu trnh pht trin phn mm ng thi tn dng nhng phn mm c pht trin trc ; (5) bt u vi mt m 11

S tay C in t
hnh hon ton mi nhm chun ho qu trnh pht trin phn mm v ng dng nhng cng c v k thut tin tin nht.

49.3 S pht trin trc thc t.


Chng ny gii thch ngun gc ca phn mm v c gng cho chng ta thy n pht trin nh th no theo thi gian tr thnh b no ca bt k mt h thng t ng no. Tuy nhin, cng ging nh b no con ngi, b no phn mm phi c thit k cn thn nhm tng hiu qu, cht lng v m bo kh nng kim sot v ti s dng. Nhng m hnh k thut phn mm trc kia khng nhn nhn qu trnh pht trin phn mm mt gc ln hn nh mt x hi hu c c trnh by u chng ny. Ch ti khi chng ta coi qu trnh pht trin phn mm nh vic ch to nhng b phn ring bit nhng c kh nng tch hp cao th chng ta mi c th bt u pht trin mt phng php pht trin phn mm mang li nhng li ch nh c ha hn bi s ra i ca cc thp nin phn mm trc . T gc ny, k thut phn mm bao gm mt h phng php cng mt lot cc cng c gip thc thi cc gii php cho cc vn thc tin trc mt. Tuy nhin, thm ch trc khi cng c u tin c th c p dng, h phng php k thut phn mm phi c xy dng h tr vic xc nh nhng yu cu t ra ca vn ny. Lm th no c th t c iu ny mt cch thnh cng khi phi i mt vi nhng vn cn gii quyt nu phn trc? Lm th no gii quyt c vn ny khi cc t chc phi pht trin nhng h thng c th chy qua cc nn phn cng, c s d liu, ngn ng lp trnh v GUI a dng v phn tn trong khi nhng h phng php truyn thng khng to ra tnh a dng ny? V lm th no pht trin phn mm m khng cn gii quyt v s nhng vn gy ra s riny ca vic pht trin phn mm? Vn t ra y l chng ta cn phi xem xt li mt cch nghim tc cch thc xy dng phn mm hiu c lm th no c th xy dng c cc h thng vn dng ng k thut, ng thi im. Trc ht, y lm mt phng php tip cn mang tnh phng nga, tc l n to cho chng ta mt khun kh lm vic chnh xc ngay t u. Nhng vn tn ti gn lin vi phng php thit k v pht trin phn mm truyn thng c ngn chn trc khi chng xy ra ch bng cch nh hnh h thng. Phng php tip cn nh vy s gip ngn chn nhng vn trong vic pht trin phn mm xy ra thay v chng xy ra sau khi s ri, v sau li gii quyt chng trong thi im t v khng thch hp nht. Chng ta cn cn nhc cch tip cn ny khi ng dng n vi cc h thng thn thin vi con ngi. Hn rng trc khi su tn cng n ng rng l vic cha rng khi b su rng, nhng chnh l vic ngn nga n khi b rng ng rng. Ngn nga su rng bng cch n ung hp l khng ch ngn nga ng rng m cn ngn nga su rng na. Vic cha rng khi n b rng ng rng l kh tn km, vic cha su rng li cn tn km hn, v vic ngn chn su rng ngay t u l liu php t tn km nht. Phng nga l mt khi nim mang tnh tng i. i vi mt h thng, d l con ngi hay phn mm th mc tiu ln nht l phi ngn chn cng sm cng tt nhng g c th xy ra trong vng i ca n. Vi quan im phng nga, cc h thng cn phi c pht trin mt cch cn thn ngay t u gim thiu nhng rc ri c th xy ra. Mt h thng c th c pht trin vi nhng tnh nng cho php kim sot thit k v s pht trin ca ring n. Kt qu l cho ra i nhng h thng c th ti s dng c gp phn thc y s pht trin ca k thut t ng ho. Mi nh ngha h thng phi m hnh ho c c ng dng v vng i ca n vi nhng rng buc gn lin, nhng rng buc ny gip bo h cc chuyn vin thit k m khng lm mt tnh linh hot ca h. Thc cht ca quan im phng nga l cn phi xy dng nhng h thng ng tin cy. Ch nhng h thng tin cy mi c coi l mt khi c kt, v ch nhng h thng ng tin cy mi 12

Thit k v pht trin phn mm


c kh nng tch hp nhng khi ny li thnh mt h thng mi. H thng mi ny li c ti s dng khi xy dng nhng h thng khc. Vic ti s dng hiu qu chnh l mt ni dung ca quan im phng nga, tc l, khi ti s dng mt b phn no (v d nh cc yu cu hay m lnh) m khng b li v cho php thc hin c nhng chc nng nh mong mun th c th trnh c cc sai st v gim c chi ph pht trin mt h thng mi. N gip gii quyt mt vn bit mt cch sm nht c th. Tuy nhin lm cho mt h thng c kh nng ti s dng mt cch thc s th chng ta cn phi bt u ngay t u ch khng phi t khi kt thc mt vng i h thng, trong giai on vn hnh hoc bo dng.

HNH 49.1 M hnh pht trin trc thc t Nhng h thng c xy dng theo quan im phng nga l nhng h thng thc s ng tin cy, nhng phn t phn mm t kt hp li vi nhau hnh thnh nn mt tng th ln hn rt nhiu so vi tng cc b phn ca n. Hoc chng ta c th ngh n vic xy dng nhng h thng t nhng mn chi c chp v li ca thu nin thiu. Chng ta c th hi tng li rng khi xa cn l mt a tr, chng ta khng b mc sai lm khi xy dng nhng cu trc tuyt p t nhng mn chi chp v. Thc vy, nhng mn chi chp v c lm t nhng vt liu c th ti s dng c, c kh nng gn kt mt cch hon ho v hon ton thn thin vi ngi s dng. Mt cch tip cn theo quan im phng nga l s pht trin trc thc t (DBTF development before the fact), nh thy hnh 49.1. Hin nay quan im ny ang c cc t chc nghin cu v trail blazer s dng thnh cng v hin ang c vn dng cho mc ch thng mi. Quan im ny c m t nhm minh ha cho nhng kh nng c th xy ra theo quan im phng nga. Trong khi cc quan im tip cn truyn thng bt u qu trnh pht trin phn mm trong giai on s ri th m hnh DBTF mi ang giai on s khai. N bt ngun t vic kt hp cc bc gii quyt nhng vn ca h thng k thut truyn thng v ca vic pht trin phn mm. DBTF bao gm mt cng ngh, mt ngn ng v mt qu trnh (phng php lun) da trn mt hc thuyt cn bn.

Ngn ng
Cc c tnh ca mt thit k tt c th c ti s dng bng cch kt hp chng thnh mt dng ngn ng xc nh bt k h thng no (nh h thng phn mm chng hn). Ngn ng da trn DBTF l mt hnh thc th hin m hnh ton hc ca h thng. Mt h thng c xc nh da trn ngn ng ny c cc c tnh i km c bn c th t iu khin c chnh bn thn h thng. Da trn quan im (DBTF) vi s m rng m hnh ton hc truyn thng ca h thng thng qua khi nim duy nht v iu khin, ngn ng hnh thc nhng quen thuc ny 13

S tay C in t
t bn thn n bao gm s biu din vt l t nhin ca thi gian v khng gian. Nh c dng ngn ng ny, mi i tng u l i tng hng h thng (SOO system-oriented object). Loi i tng ny l s tch hp cc kha cnh hng chc nng (bao gm ng lc hc) v hng i tng. Thay v cc h thng hng i tng, cc i tng u hng h thng. Tt c cc h thng l nhng i tng v tt c cc i tng l nhng h thng. V l do nn nhiu i tng trc y khng kh thi theo phng php truyn thng th nay tr nn kh thi. Mt h thng DBTF bn thn n bao gm tt c cc i tng ca chnh n (v cc kha cnh, mi quan h cng nh quan im ca nhng i tng ny) v s kt hp cc tnh nng bao gm s nh gi; ti a ho tin cy v tnh linh hot i vi nhng thay i v yu cu ch, cu trc ng lc hc, tnh hc, qu trnh cng nh s ti cu hnh trong thi gian thc; tn dng tnh song song v kh nng ln theo vt ca chnh n; h tr phn tch kh nng vn hnh; v ti a ho kh nng ti s dng chnh n (cung cp s phn b v ti s dng ngun lc ni ti m khng cn s can thip ca cc chuyn vin thit k); v cui cng l cung cp kh nng t ng ho giai on thit k v qu trnh pht trin bt c lc no v bt c ni u c th. Mi h thng DBTF c xy dng vi cht lng, cng sut v kh nng iu khin ni ti. Ngn ng - h thng lnh c m ha dng trong lp trnh, thc s l mt nhn t quan trng trong h thng DBTF. Vai tr chnh ca n l gip cc chuyn vin lp trnh gim thiu s phc tp v mang li s r rng, mch lc trong qu trnh nghin cu ca h bin n thnh loi ngn ng c kh nng ti s dng ti u nht. N c th c dng xc nh bt k b phn no ca h thng v tch hp b phn vi bt k b phn no khc ca h thng. Vn quan trng l nhng b phn ny c mi quan h trc tip vi th gii thc v do cng mt loi ngn ng c th c s dng xc nh cc yu cu h thng, c im k thut, thit k v thit k chi tit cho nhng cu trc chc nng, ngun lc, s phn b ngun lc thng qua tt c cc cp v cc lp nh ngha ca h thng bao gm phn cng, phn mm v phn con ngi. Ngn ng da trn h thng DBTF ny c th c s dng xc nh cc t chc ca con ngi, cc h thng tn la, ngn hng, cc h thng nhn thc cng nh mi trng thi gian thc hoc mi trng c s d liu v do n rt ph hp cho vic ng dng trong cc ngnh kinh t, trng hc v chnh ph.

Cng ngh
Kinh nghim t cuc sng gip bin cng ngh DBTF thnh hin thc. Qua hn ba thp k pht trin, cng ngh ny c bt ngun t mt lot cc l thuyt h thng, cc phng php chun ha v cng ngh hng i tng. Cng ngh DBTF bao gm l thuyt, ngn ng h tr s hin th ca n v k thut t ng ho h tr tnh ng dng v mc ch ca n. Trn thc t, mi b phn cu thnh ca cng ngh ny c pht trin theo hng kinh nghim thc tin gip hnh thnh nn l thuyt v l thuyt gip xy dng ngn ng, cn ngn ng th h tr k thut t ng ha. Tt c nhng b phn cu thnh nn cng ngh ny c s dng kt hp thit k h thng v pht trin phn mm. Cng ngh DBTF bt u c nghin cu pht trin vo nm 1968, khi ngi ta tin hnh phn tch nhim v ca tu Apollo. Mt phng php tt hn l rt cn thit xc nh v pht trin cc h thng thay cho nhng cng ngh hin ti bi v cng ging nh nhng cng ngh truyn thng chng khng gii quyt c nhng vn cp bch hin nay. Nghin cu pht trin phn mm nhm phc v nhu cu ca con ngi gip pht hin ra rng cc li giao din chim ti gn 75% tt c cc li c tm trong cc phn mm iu khin my bay trong ln th nghim cui cng (trc kia con s ny l 90%). Nhng li nh vy bao gm cc li lung d liu, u tin, v li thi gian t mc cao nht ca h thng n cc mc thp nht ca cc chi tit. Loi li ny c phn loi da trn tiu ch n c th c ngn chn nh th no bng cch xc nh h thng. Vic ny dn n s ra i ca mt hc thuyt v h phng php nhm xc nh h thng c kh nng gim thiu tt c cc li giao din. 14

Thit k v pht trin phn mm


Cng ngh u tin bt ngun t hc thuyt ny tp trung vo vic xc nh v xy dng cc h thng tin cy. Do nhn thc c li ch ca vic nh r mt vn c bn nh tin cy chng hn, nn ngi ta tip tc tp trung nghin cu cc vn c bn khc vi cng mt cch tip cn ging nhau l da trn cch xc nh h thng [9-11]. Cng ngh DBTF l cng ngh tp trung vo chc nng v hng i tng da trn quan nim duy nht v iu khin, m ngi ta cha tng ng dng n trong bt k mt m hnh k thut phn mm no khc. C s l lun ca cng ngh ny c da trn mt lot cc tin v gi nh v mt tp hp ph bin cc i tng. Mi tin xc nh mt mi quan h chi phi trc tip. Tp hp cc mi quan h c xc nh bi cc tin chnh l iu khin. Trong cc trng hp khc, tin xc lp cc mi quan h ca mt i tng v u vo/u ra, quyn truy nhp u vo/u ra, pht hin v khc phc li v a ra quyt nh trong qu trnh vn hnh v pht trin ca n. Bng 49.1 Tm tt mt s c im ca cc i tng trong h thng DBTF.

Quy trnh
K thut phn mm khim khuyt ch n khng c kh nng nhn thc c rng trong s nhiu m hnh th phi la chn c mt m hnh ph hp v m hnh phi l mt phn ca mi trng gip cung cp cc phng php t ng tch hp gii quyt mt vn ngay lp tc. iu ny c ngha l m hnh ny phi i km vi mt h thng cc cng c tch hp thc thi cc kt qu ca vic s dng m hnh cho vic pht trin m hnh ca h thng. V c bn, m hnh ny gip to ra m hnh h thng v cn phi c mt lot cc cng c to ra h thng. Cng ngh DBTF s cung cp nhng kh nng u vit ny. Cng ngh DBTF c ng dng xuyn sut vng i h thng bt u t cc yu cu, tip theo l phn tch chc nng, m phng, m t k thut, phn tch, thit k, thit k cu trc h thng, pht trin thut ton, thc thi, qun l cu hnh, th nghim, bo dng v k thut ngc. Ngi ng dng cng ngh ny bao gm ngi tiu dng, nh qun l, k s h thng, k s phn mm, v k s th nghim. Quy trnh cng ngh DBTF bao gm vic hon thin cc thut ton vi s chnh xc v k thut. Mc ch ca n l lm n gin ha hng pht trin theo kiu lm mi th chnh xc ngay t u, trnh phng php tip cn truyn thng theo kiu chy theo sa cha nhng th b h hng. K thut t ng ha theo phng php ny c pht trin vi cc lu sau: ngn chn li pht sinh ngay t gia on u khi xc nh h thng, iu khin vng i ca h thng v ti s dng nhng h thng c tin cy cao. Vng i pht trin c chia thnh mt chui cc giai on bao gm cc yu cu v xy dng m hnh thit k da trn cc phn tch v m t k thut chun ha, to m t ng da trn cc m hnh hon thin mt cch nht qun v logic, th nghim, vn hnh v m phng. Bng 49.1 Cc c trng i tng hng h thng ca cng ngh DBTF Cht lng (tt hn, nhanh hn, r hn) Tin cy Gi c hp l i ph vi nhng vn khng lng trc c Xuyn sut qu trnh pht trin ca h thng Khng lm nh hng n khu vc phi can thip Nhn dng v khc ph li Tip xc vi, bin i v ti cu hnh trong mi trng thi gian thc, phn tn, ng nht Linh hat C kh nng thay i m khng b phn ng 15

Tin cy(tt hn) Trong qu trnh iu khin Da trn cc tin - Nhn dng min (c ch ch, khng ch ch) - Th t (u tin v thi gian)

S tay C in t
- Quyn truy nhp: i tng nhp (quan h), i tng xut (quan h). - Thay th Hnh thc - Nht qun, hon thin mt cch lgic - Cn thit v y - C s ng ngha thng dng - Nhn dng trng thi duy nht Li t do (Da trn nh ngha chnh thng v li) - lun lun nhn c cu tr li chnh xc ng lc, ng ch. - Tha mn nhu cu ca ngi s dng v ca lp trnh vin Gi quyt nhng vn khng lng trc c Lng trc c ph C kh nng pht trin Bn Tin cy C kh nng m rng

C kh nng tch ri v hp nht - Mt i tng vi nhiu i tng: iu chnh, phn ly, thuyt minh - Nhiu i tng vi mt i tng: Hp nht, b iu khin ng dng, tch hp, tru tng C th sach tay - Gii thot - Nhng khai trin lp a dng v bin i - Cu trc m (s b sung, s phn b ngun nguyn liu v s thc thi c lp) - Cm vo hoc cu hnh t thch nghi ca ca cc modul khc nhau. - Kh nng thch nghi i vi cc t chc, cc ng dng, chc nng, con ngi v sn phm khc nhau. T ng ha Hnh thc ti s dng ti u Trang trng ha, c kh ha, tip theo l t ng ha - N - S pht trin - Cc nhn t gip t ng ha qu trnh pht trin ca n. C th nm bt c, tch hp c v duy tr c Tin cy S vic c th o c p ng vi th gii thc Tip tc tn ti, to ra v xa i Xut hin v bin mt Kh nng truy nhp S tham kho Gii thit v s tn ti ca i tng Thi gian thc v hn ch v khng gian S miu t Tnh tng i, s tru tng, ngun gc Cung cp cho ngi s dng nhng nh

Gi c hp l (nhanh hn, r hn) Kh nng ti s dng Ti u ha nguyn liu trong qu trnh vn hnh v pht trin - Thi gian v khng gian ti thiu - Hiu qu s dng nguyn liu cao. Kh nng ti s dng C th nm bt c, tch hp c v duy tr c Linh hot p ng tiu chun T ng ha

nh ngha thng dng - T iu chnh + T tch ri (vd tch cu trc chc nng khi c cu nguyn liu) + M hnh cm + Mt i tng c tch hp vi cu trc, phng thc vn hnh v c im iu khin. - Tch hp v mt cu trc v phng thc vn hnh - Loi c cu 16

Thit k v pht trin phn mm


+ Bn chc nng (gn kt chc nng ny vi chc nhng chc nng khc ca i tng) + S loi i tng (gn kt i tng vi i tng) + Loi v cu trc chc nng - Phn loi + Tng i + Tru tng chc nng Typing gm phn loi Hnh thc bao gm c cu trc v cch hat ng (i vi cc loi hnh v chc nng i tng) Gim thiu Kt lun Di truyn bao Tm tt Thay th Mi quan h thi/hot ng C/khng thi M/con Trng Thuyt minh S a hnh ngha quen thuc - Nhn ra rng s quen thuc ca ngi s dng ny l kh khn ca ngi s dng khc. - Che du cc chi tit khng cn thit (tru tng) - C th thay i, c php do ngi s dng lc chn - T o to - Bt ngun t mt c s ng ngha thng dng - C cu nh ngha thng dng Lin kt cc ng ngha ph thng vi tt c cc thc th c xc nh cng n gin cng tt nhng khng qu n gin c xc nh vi s tch hp tt c cc i tng ca n (v tt c cc kha cnh ca nhng i tng ny) a ra ngun gc ca phng thc hot ng, cu trc cng nh nhng thay i ca chng (bo dng) xuyn sut vng i Nhn bit v c kh nng t c mc ch - nh ngha - S pht trin ca chnh n v ca cc nhn t gip thc y qu trnh pht trin ca n. + Phn tch + Thit k + Thc thi + Thuyt minh + Th nghim + Bo dng

+ Ngun gc

Ghi ch: Tt c nhng t gch chn m ch kh nng ti s dng. Ngun: Hamilton, M., Software Design and Development, The Electronics Handbook, CRC Press, Boca Raton, FL, 1996. c cp php. Bc u tin xy dng mt h thng DBTF l dng ngn ng nh ngha m hnh. Quy trnh ny c th nm bt k giai an no ca vng i pht trin, bao gm phn tch cc vn , vin cnh vn hnh, v thit k. M hnh ny c t ng phn tch m bo n c xc nh mt cch hp l. Vic ny bao gm phn tch tnh cho cc tnh cht phng nga v phn tch ng theo mc ch ca ngi s dng. Trong nhng giai on tip theo, b pht m ngun s t ng to ra mt phn mm c tch hp y cho bt k mt ng dng no ph hp vi m hnh ny v cho mi trng mc tiu nh theo ngn ng v cu trc la chn. Nu mi trng c la chn c nh hnh th b pht m s la chn mi trng mt cch trc tip, nu khng b to m s c nh hnh trc tin cho mt ngn ng v cu trc mi. 17

S tay C in t
Nh c cu trc m ca n m b to m c th c nh hnh tn ti di bt k cu trc no (hoc tip xc vi bt k mi trng bn ngoi no), v d, vi mt ngn ng, gi truyn thng, mt giao din Internet, mt gi c s d liu hoc mt h iu hnh la chn; hay n c th c nh hnh giao tip vi m k tha ca ngi s dng. Mt khi c nh hnh trong mt mi trng mi, mt h thng c th t ng phc hi c th tn ti trong mi trng mi . Cu trc m ny t thch ng vi qu trnh pht trin da trn b phn cu thnh thc to cho ngi s dng tnh linh hot khi thay i cc yu cu hoc cu trc hay khi chuyn t mt cng ngh c sang mt cng ngh mi. Tip theo, c th vn hnh h thng thu c. Nh c phn mm m h thng c th chy th nghim qua nhiu li do ngi s dng to ra. N s sn sng vn hnh sau qu trnh th nghim ny. Nhng thay i thng l nhng thay i v yu cu/nh ngha m t k thut ch khng phi thay i v m (cc chuyn vin thit k thm ch khng cn thay i m). Nhng thay i cu trc ch thng l nhng thay i v cu hnh ca mi trng b to m (mi trng ny to ra mt lot cc trng hp t m hnh ny), ch khng phi l s thay i v m. Nu h thng thc l phn cng hoc phn con ngi, h thng phn mm ng vai tr m phng m h thng thc c th da vo. Khi mt h thng c pht trin, h thng ny v qu trnh pht trin n c phn tch hiu cch ci tin vng pht trin tip theo ca h thng. S tch hp hu c c thc hin t h thng ti phn mm, t yu cu n thit k, n m, n kim tra v n cc yu cu khc ri lp li; t n cp v t lp n lp. Cc chuyn vin thit k c th ln theo cc yu cu n m v quay tr li. Gi s mt k thut t ng c nhng kh nng ny, th khng c g ng ngc nhin khi k thut t ng ca DBTF c t xc nh v tip tc t ng to ra n, khi n pht trin vi nhng thay i v cu trc v cng ngh. Bng 49.2 bao gm bng tm tt mt s khc bit gia m hnh phng nga hin i v m hnh truyn thng. Bng 49.2 S so snh Truyn thng (After the Fact) Li giao din (chim trn 75% ca tt c cc li) Phn ln c tm thy sau qu trnh vn hnh Mt s c tm thy bng cch th cng Mt s c tm thy thng qua s phn tch qu trnh vn hnh ng lc Mt s khng tm thy Nhng yu cu khng r rng Ngn ng khng chnh thng v bn chnh thng Cc giai on, ngn ng v cng c khc nhau Ngn ng khc nhau cho h thng khc thay v cho phn mm. T ng ha h tr cho qu trnh th cng Ti liu, chng trnh, s sinh ra, c th tm ra ngun gc, etc th cng Khng m bo s tch hp chc nng sau qu 18 DBTF (before the fact) Khng c li giao din Tt c tm thy trc qu trnh vn hnh Tt c c tm thy t ng v phn tch thng k. Lun lun tm thy Yu cu r rng Ngn ng chnh thc, nhng thn thin Tt c cc giai an, ngn ng tng t v cc cng c. Ngn ng tng t cho phn mm, phn cng v h thng khc. T ng ha thc hin cc cng vic thc Ti liu, chng trnh, s sinh ra, c th tm ra ngun gc, etc t ng ha 100% m c t ng sinh ra cho bt k mt loi phn mm no m bo s tch hp chc nng sau qu trnh vn hnh. H thng c th m t hoc pht trin

Thit k v pht trin phn mm


trnh vn hnh. H thng khng th m t hoc pht trin Sn phm, cu trc, v.v ng Kh k tha Bo dng c thc hin mc m Ti s dng phi ni ti Ti s dng la chn S ty bin v ti s dng khng ph thuc nhau Cc i tng, giai on, sn phm, cu trc v mi trng khng tng xng. H thng khng c tch hp vi phn mm Hng chc nng hoc hng i tng GUI khng i lin vi cc ng dng M phng khng tch hp vi m phn mm Khng t xc nh v pht trin t ng Tn km, h thng thng b li Khng hiu qu Kh hon thnh k hoch Nhiu th cn khng c, nhiu th khng cn li c Cu trc m. D k tha Bo tr c thc hin cp kinh doanh Ti s dng ni ti Mi i tng c ti s dng S ty bin lm tng kh nng ti s dng Cc i tng, giai on, sn phm, cu trc v mi trng tch hp. H thng c tch hp vi phn mm Cc i tng hng h thng: tch hp chc nng, thi gian v hng i tng. GUI khng i lin vi cc ng dng M phng tch hp vi m phn mm T xc nh v pht trin t ng Tm li H thng tt hn, nhanh hn, r hn Tit kim 10, 20, 50, USD Hon thnh trong thi gian ngn Nhng th bn cn khng tha, khng thiu.

lm ch c mt s quan nim ng sau cng ngh DBTF, chng ta cn b sung mt s vn khc na. Mi th c th tm c ngun gc ca chng, dn n kh nng ti s dng khi xy dng cc h thng. R rng l khng cn phi thm cc c trng vo ngn ng hoc thm nhng thay i vo mt ng dng tin tin trong mt m hnh c bit, do mi kha cnh mi c bt ngun t cc c s ton hc ca n.

49.4 Thc nghim vi cng ngh DBTF


S ti u ca quan im phng nga c chng thc qua mt vi thc nghim. Cng ngh DBTF c cc hc gi hng u, cc c quan chnh ph cng nh cc t chc thng mi nhiu ln tin hnh nh gi, so snh. Trong mi ln so snh nh gi nh vy, DBTF lun ng u. iu khin cng ngh ny khc bit vi cc cng ngh khc ch n gip to nn mt mi trng pht trin v thit k h thng tch hp tng th, trong khi cc cng ngh truyn thng li to ra mt vng i h thng phi chnh thng, kh tch hp (bao gm cc mun ng dng cng nh cc sn phm thc thi chng), thiu tnh hon thin, mang tnh th cng v pht trin sau khi cc vn ny sinh. C quan kim tra quc gia ca B Quc Phng Hoa K ng ra tin hnh mt cuc th nghim, trong h cung cp cho ba i nh thu c chn la t nhiu nh thu mt vn v mi trng pht trin da trn mt tp hp cc yu cu c xc nh r rng. Nhim v ca cc i ny l phi cho ra i mt h thng phc v khch hng, a ngi s dng, phn tn v thi gian thc. Tt c cc i u c kh nng hon thnh phn cng vic u tin l xc nh cc yu cu s b, ban u. C hai i hon thnh c phn thit k chi tit nhng ch c mt i c kh nng to ra bng k thut t ng mt loi m mang tnh hon chnh, c tch hp v hon ton sn 19

S tay C in t
sng cho vic sn xut. Phn chnh ca loi m ny c cho chy c C v Ada vo cui cuc th nghim [12]. i to ra c m hon chnh, sn sng cho vic sn xut ng dng 001 Tool Suite, mt mi trng pht trin da trn cng ngh DBTF.

49.5 Kt lun
Nhng doanh nghip mong mun t c nng sut cao t vic u t vo cng ngh, trong nhiu trng hp vn ch bit ngi ch i kt qu u t ca mnh. Phn ln vn bt ngun cch thc cc t chc xy dng cc h thng t ng ho ca h. Trong khi cc tnh nng ca phn cng tng ln ng k, th cc t chc li vn ang gp nhiu kh khn vi cc h phng php lc hu gn lin vi s ra i ca nhng b my tnh cng knh. Cc cng ngh c ny khng th gip xy dng nn nhng h thng mi. Bn cnh , cn c rt nhiu nhng i thay. Ngi s dng thng mong mun nhng h thng ca h phi c nhiu tnh nng hn v linh hot hn. V do nhng cng ngh mi gip gii quyt rt nhiu vn , nn nhng h thng ny cng khng c mc li. Trong khi x hi hu c sinh hc c cc c ch iu khin ni ti gip tng nng sut v cht lng, th cho n nay x hi hu c silicon vn khng c c c ch y. V do nng sut khng tng. Thng thng, cch duy nht gii quyt nhng vn chnh ny l phi thng qua cc phng php phi truyn thng hoc cc phng php cch tn. Ngi ta phi to ra nhng phng php mi hoc nhng mi trng mi s dng nhng phng php mi ny. i mi c c thnh cng thng khi u bng vic xem xt li nhng khim khuyt ca cc h thng trc y. Trc ht phi nhn dng c ct li thc ca cc vn , sau phn loi chng theo cch thc chng c gii quyt. Bc tip theo l tm cc cch gii quyt thc tin. Vic thu c li gii thc t l bc logic tip theo. S lp i lp li ca qu trnh ny dn n vic tm ra nhng vn mi ny sinh trong mi trng gii quyt vn . chnh l cch thc hot ng ca cng ngh DBTF. Nh c cng ngh DBTF, tt c cc kha cnh ca vic pht trin v thit h thng c tch hp vi mt ngn ng h thng v k thut t ng ca n. Vic ti s dng s din ra mt cch t nhin xuyn sut vng i h thng. Cc i tng u c th c ti s dng v tch hp bt chp phc tp ca chng. Cc cu hnh mi trng cho cc loi cu trc khc nhau cng c th c ti s dng. Mt h thng mi c pht trin c th an ton cho vic ti s dng nhm thc y hn na hiu sut ca nhng h thng c pht trin da vo n. M hnh s c thay i khi cc chuyn vin thit k nhn ra rng rt nhiu trong s cc cng c trc y khng cn cn thit cho vic thit k vo pht trin h thng na. V d, nh c ngn ng ng ngha hc chnh thng gip xc nh v tch hp tt c cc b phn ca mt h thng, nn nhiu ngn ng m hnh (v phng php lun) c nhim v xc nh mt phn h thng, khng cn cn thit na. Hin nay cng khng cn thit phi lm cho nhiu k thut tng thch vi ng ngha hc to ra s tng tc gia chng. Cng ngh DBTF c th h tr ngi s dng trong vic gii quyt nhiu vn thch thc hin nay trong cc mi trng pht trin phn mm. Tuy nhin, vn cn rt nhiu vic phi lm c th ng dng mt cch ti u nht cng ngh ny. chnh l iu khin cng ngh ny tr nn kh th v. Do n c da trn mt s tin v gi nh (tin ), nn nh n m mt lot cc vn c th v s c thay i. Vn cn rt nhiu c hi nghin cu cc d n mi v cc sn phm mi. Nh c ngn ng m mt s vn nay c gii quyt. Nh chng ta bit, vic pht trin phn mm s khng bao gi ng yn ti ch. Nhiu th s khng cn cn thit na, trn thc t, chng s dn mt i cng ging nh cc hin tng xy ra cng vi qu trnh sng lc t nhin trong h thng sinh hc. Cc k thut gip ni lin khong cch t giai on ny n giai on khc cng tr ln li thi. Qu trnh kim tra v cc cng c tm kim li cng 20

Thit k v pht trin phn mm


khng cn cn thit na bi v nhng li ny khng cn tn ti. Ngi ta cng khng cn cn n cc cng c h tr vic lp trnh th cng. So vi vic pht trin ng dng cc cng ngh truyn thng, th hiu sut ca cc h thng pht trin da trn cng ngh DBTF cao hn rt nhiu. Phn tch su hn cht na, ngi ta khm ph ra rng mt h thng cng ln, cng phc tp, th hiu qu cng cao. iu ny hon ton ngc li nhng g chng ta thng thy cc h thng ng dng nhng cng ngh truyn thng. iu ny, mt phn l do t l ti s dng cao ca cc h thng ng dng cng ngh DBTF. H thng cng ln th n cng c nhiu kh nng ti s dng. Do kh nng ti s dng cao nn hiu sut tip tc tng ln. Vic o hiu sut l mt qu trnh mang tnh tng i, tc l n c so snh tng quan vi h thng c pht trin trc . Vic tn dng kh nng ti s dng trong mi trng DBTF l mt lnh vc nghin cu lun tip din kh th v. V d, nghin cu mi quan h gia cc b phn c th ti s dng v metrics. iu ny dn n tng l cc b phn c ti s dng c th c phn loi theo nhiu cch. Mt cch trong s l phn loi theo tnh tit kim thi gian (tc l n nh hng nh th no n chi ph v k hoch). Do , nhiu tha hip ti u hn c thc hin. Chng ta cng bit nhiu v cch thc ti s dng cc b phn th chng ta cng c nhiu thng tin c lng chi ph cho ton b h thng. Tuy nhin, cng cn ghi nh rng, cc phng php truyn thng trong vic c lng thi gian v chi ph pht trin phn mm khng cn hu ch trong vic nh gi nhng h thng c pht trin theo cc k thut c tnh phng nga na. Ngoi ra, cn c rt nhiu l do khc na l gii cho hiu sut cao hn ny ca h thng, v d nh thi gian v chi ph c tit kim do gim bt c nhiu quy trnh v nhim v nh c vic ng dng quan im phng nga ny. C t th phi hc hn, t vic phi lm hn t phi phn tch hn, t phi th nghim hn, t phi qun l hn, t phi ti li ho hn, t phi bo dng hn v t phi tch hp hn. iu ny l do phn ln nhng cng vic ny c t ng ho hoc do chng c thc hin ni ti nh c ngn ng h thng chnh thng ca cng ngh DBTF. Tm li, chnh s kt hp ca cng ngh ny vi phng php thc thi n to nn tng cho s ra i ca cc phn mm hon chnh. Phn mm ng vai tr quan trng trong x hi ca chng ta n ni s thnh bi ca n c nh hng su sc n c s tn ti v thnh cng ca mt t chc. V l do m nhng quyt nh v vic pht trin k thut h thng v phn mm c nh hng rt su rng Phn mm l mt lnh vc cn kh mi m v cn s i mi lin tc. Vic chuyn i t mt mi trng phn mm truyn thng sang mt mi trng c tnh phng nga cng tng t nh vic chuyn t my nh ch sang my x l vn bn. Mi khi c bt k mt thay i ln no th cng cn phi hc hi phng thc lm vic mi. Tuy nhin, nh c s ra i ca my x l vn bn m s pht trin li ni tip s pht trin Nhng kinh nghim thu thp c khng nh chc chn rng cht lng v hiu qu s tng ln cng vi vic gia tng s dng cc c tnh ca cc h thng c tnh phng nga. i lp vi lun im mun cn hn khng ca quan im chy theo gii quyt cc vn xy ra, th quan im c tnh phng nga vi cng ngh DBTF l gii quyt, hoc nu c th ngn chn mt vn no cng sm cng tt. Vic tm ra mt vn bng phng php tnh hc tt hn vic tm ra n bng phng php ng lc hc. Vic ngn chn n bng cch thc mt h thng c xc nh s tt hn rt nhiu. Tuy nhin, y tt hn khng c ngha l khng h phi xc nh hay xy dng h thng mt cht no. Vic ti s dng mt h thng tin cy tt hn vic ti s dng mt h thng khng tin cy. Kh nng ti s dng t ng ho tt hn kh nng ti s dng th cng. Nhng kh nng ti s dng ni ti li tt hn kh nng ti s dng t ng ho. Kh nng ti s dng c th pht trin tt hn kh nng ti s dng khng c kh nng pht trin. Tuy nhin, tt hn ht vn l kh nng ti s dng c th tn dng ti a u im ca n

21

S tay C in t
Cu tr li vn tip tc c gii p thng qua nhng thnh cng nhn c cng ging nh trong h thng sinh hc; v mc tiu l nhng h thng ca ngy mai s k tha c nhng c tnh tt nht ca ngy hm nay.

Ti liu tham kho


[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Software Engineering Institute. Capability Maturity Model, Pittsburgh, PA: Carnegie, Mellon University, 1991. Stroustrup, B., The C++ Programming Language, Reading, MA: Addison-Wesley, 1997. Gosling, J., Joy, B., and Steele, G., The Java Language Specification, Reading, MA: Addison-Wesley, 1996. Lientz, B.P., and Swanson, E.B., Software Maintenance Management, Reading, MA: Addison-Wesley, 1980. Jones, T.C., Program Quality and Programmer Productivity, IBM Tech. Report TR02.764 January: 80, San Jose, CA: Santa Teresa Labs, 1977. Keyes, J., Handbook of E-Business, Chapter F5, Hamilton, M., Defining ecom for eProfits, RIA,2000. Martin, J., and Finkelstein, C.B., Information Engineering, Carnforth, Lancs, U.K.: Savant Institute, 1981. Booch, G., Rumbaugh, J., and Jacobson, I., The Unified Modeling Language User Guide, Addison-Wesley, 1999. Hamilton, M., Inside Development Before the Fact, Electronic Design, April 4, 1994, ES. Hamilton, M., Development Before the Fact in Action, Electronic Design, June 13, 1994, ES. Keyes, J., The Ultimate Internet Developers Sourcebook, AMACOM, to be published Fall 2001. Software Engineering Tools Experiment-Final Report, Vol. 1, Experiment Summary, Table 1, Page 9, Department of Defense, Strategic Defense Initiative, Washington, D.C., 203017100, October 1992.

nh ngha cc thut ng
H qun l c s d liu (DBMS - Data Base Management System): Chng trnh my tnh c dng kim sot v truy cp nhanh c c d liu. Mt ngn ng c ng dng trong h thng DBMS nhm kim sot cc chc nng do h thng DBMS cung cp. V d, SQL l mt loi ngn ng c dng kim sot tt c cc chc nng m mt h thng DBMS da trn cu trc quan h cung cp cho ngi s dng bao gm chc nng xc nh c s d liu, khi phc, x l c s d liu, kim sot vic truy cp, chia s d liu v bo ton c s d liu. Giao din ngi dng ha (GUI - Graphical User Interface): Giao din ha ti u nh mt h thng trin khai c th giao din vi my tnh mt cch hiu qu nht bng vic ng dng cc bin php trc gic. Giao din ngi dng ho cung cp mt lot nhng k thut ho, nhiu mu sc v trc gic gip ngi s dng c th xem xt, cp nht v x l thng tin. Giao din (Interface): Mt im truy cp nm trong ranh gii gia cc i tng, chng trnh hoc h thng. chnh im ni ny c rt nhiu li xy ra. Phn mm c th giao din vi phn cng, con ngi v cc phn mm khc. 22

Thit k v pht trin phn mm


Phng php lun (Methodology): Mt tp hp cc quy trnh, quy tc v s hnh thnh vic xy dng phn mm. Metrics: Mt lot cc cng thc ton hc gip nh gi hiu qu v cht lng Cu trc phn mm (Software Architecture): Cu trc v mi quan h gia cc b phn cu thnh phn mm. Chun ha (Formal): Mt h thng c xc nh da trn mt tp hp cc tin (gi nh) bit; do , n c c s ton hc (v d, mt h thng DBTF c da trn mt tp hp cc tin iu khin). Mt s c trng ca n l n mang tnh nht qun v hon thin v mt logic. Mt h thng c coi l nht qun nu gi nh ny khng mu thun vi gi nh khc ca h thng. Mt h thng c coi l hon thin v mt logic nu cc gi nh xc nh mt cch hon ton c cc c trng h thng. iu ny m bo rng mt m hnh phng php c c tp hp cc c trng . Cc c trng khc ca m hnh c xc nh theo phng php ny c th khng c chng minh t nhng gi nh ca phng php ny. Mt h thng hon ton logic l mt h thng c mt c s ng ngha hc (v d, cch thc din t ngha ca cc i tng nm trong h thng ). V mt ng ngha hc ca mt h thng, iu ny c ngha l n khng c li giao din v n rt r rng, bao gm nhng g cn thit v y , v c s nhn dng trng thi duy nht

Thng tin b sung


Hamilton, M. and Hackler, W. R., Object Thinking: Development Before the Fact, In Press. Krut, Jr., B. Integrating 001 Tool Support in the Feature-Oriented Domain Analysis Methodology (CMU/SEI-93-TR-11, ESC-TR-93-188). Pittsburgh, PA: Software Engineering Institute, Carnegie- Mellon University, 1993. Ouyang, M. and Golay, M. W., An Integrated Formal Approach for Developing High Quality Software of Safety-Critical Systems, Massachusetts Institute of Technology, Cambridge, MA, Report No. MIT-ANP-TR-035., September, 1995. McCauley, B. Software Development Tools in the 1990s, AIS Security Technology for Space Operations Conference, July 1993, Houston, TX. Hamilton, M. and Hackler, W. R., Towards Cost Effective and Timely End-to-End Testing, HTI, prepared for Army Research Laboratory, Contract No. DAKF11-99-P-1236, July 17, 2000. Keyes, J., Internet Management, Chapters 3033, on 001-developed systems for the Internet, Auerbach, Boca Raton, FL, 2000.

23

You might also like