《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > XP方法在外貿(mào)管理信息系統(tǒng)開發(fā)中的應(yīng)用與研究
XP方法在外貿(mào)管理信息系統(tǒng)開發(fā)中的應(yīng)用與研究
鄧靖穎 黃 穗
摘要: 通過XP在一個(gè)外貿(mào)管理信息系統(tǒng)的實(shí)際開發(fā)應(yīng)用,闡述XP方法的主要特點(diǎn)。
Abstract:
Key words :

    摘  要: 通過XP在一個(gè)外貿(mào)管理信息系統(tǒng)的實(shí)際開發(fā)應(yīng)用,闡述XP方法的主要特點(diǎn)。

    關(guān)鍵詞: 極限編程  用戶故事  測(cè)試先行

 

  XP(Extreme Programing)是敏捷編程方法的代表,適用于需求經(jīng)常發(fā)生變化的中小型項(xiàng)目的開發(fā)。大多數(shù)用戶在系統(tǒng)發(fā)布之前,對(duì)系統(tǒng)功能往往只有一個(gè)模糊的想法,系統(tǒng)實(shí)際功能很難確定,且系統(tǒng)經(jīng)常改變。XP是一種高度動(dòng)態(tài)的過程,它通過非常短的迭代周期來應(yīng)對(duì)需求的變化。某外貿(mào)公司欲開發(fā)一套外貿(mào)管理信息系統(tǒng)(FTMIS)軟件,但面臨時(shí)間緊迫、開發(fā)人員不足二個(gè)問題。基于此,這里利用極限編程方法XP進(jìn)行系統(tǒng)開發(fā),以求在最短的時(shí)間內(nèi)獲得客戶最滿意的結(jié)果。

1  XP方法特點(diǎn)

  XP運(yùn)作項(xiàng)目的方法是將項(xiàng)目分成多次迭代,每一次迭代交付一個(gè)通過質(zhì)量檢驗(yàn)、可投入使用、包含了一些新實(shí)現(xiàn)的用戶故事(User stories,即用戶素材,定義一些小的功能模塊)軟件。圖1為一個(gè)XP項(xiàng)目狀態(tài)變遷的過程。

 

  圖1中用戶故事同時(shí)產(chǎn)生需求和測(cè)試場(chǎng)景。從需求定義開始,XP省略了常規(guī)的系統(tǒng)和架構(gòu)的設(shè)計(jì)步驟,在進(jìn)行初步架構(gòu)探索后,就從簡(jiǎn)短的計(jì)劃發(fā)布直接進(jìn)入編碼的迭代循環(huán)。測(cè)試場(chǎng)景則用來進(jìn)行功能測(cè)試。編碼和設(shè)計(jì)是同時(shí)進(jìn)行的,而且特別強(qiáng)調(diào)測(cè)試的重要性,提倡測(cè)試驅(qū)動(dòng)。測(cè)試驅(qū)動(dòng)的編碼方式實(shí)際是一個(gè)循環(huán):寫對(duì)應(yīng)新功能的測(cè)試→運(yùn)行測(cè)試發(fā)現(xiàn)錯(cuò)誤→編寫代碼→運(yùn)行測(cè)試成功→寫對(duì)應(yīng)新功能的測(cè)試。最后,測(cè)試完成并得到用戶認(rèn)可后進(jìn)行小型發(fā)布。

  XP方法具有如下特點(diǎn):

  (1)重視客戶滿意度:XP的宗旨是開發(fā)滿足客戶需要的軟件。XP讓開發(fā)人員即使是在開發(fā)周期的后期也能自信地面對(duì)需求變化。

  (2)強(qiáng)調(diào)團(tuán)隊(duì)合作:項(xiàng)目經(jīng)理、用戶和開發(fā)工程師共同組成一個(gè)完整的開發(fā)團(tuán)隊(duì),目的是開發(fā)出高質(zhì)量的軟件。

  (3)開發(fā)原則:XP從四個(gè)基本的方面改變?cè)械拈_發(fā)方式,即交流、簡(jiǎn)單、反饋和勇氣,其目的在于克服由人為因素帶來的項(xiàng)目失敗。開發(fā)人員要與用戶、同事交流;系統(tǒng)設(shè)計(jì)必須簡(jiǎn)單、明晰;通過不間斷的測(cè)試和發(fā)布得到用戶反饋;根據(jù)用戶的要求修改代碼,并爭(zhēng)取盡早地將軟件交付給用戶。在此基礎(chǔ)上,開發(fā)人員將會(huì)有足夠的勇氣面對(duì)需求和技術(shù)的變化。

  (4)輕量級(jí)過程:XP認(rèn)為重量級(jí)方法有些本末倒置,讓開發(fā)人員遠(yuǎn)離了自己的專業(yè),做了他們既不擅長(zhǎng)、也不喜歡的事情。因此需要改變,讓開發(fā)人員提高效率。

2 XP在外貿(mào)管理信息系統(tǒng)開發(fā)中的應(yīng)用

2.1 發(fā)布計(jì)劃

  很多項(xiàng)目都會(huì)在前期消耗過多的時(shí)間,只有等所有的需求完成之后才開始設(shè)計(jì)工作。而采用XP方法,只需進(jìn)行短時(shí)間的需求分析就可以開始設(shè)計(jì)工作。在經(jīng)過一段時(shí)間的需求分析后,FTMIS的幾個(gè)管理模塊就基本確定了,如圖2所示,各個(gè)模塊之間的數(shù)據(jù)交換一般建立在共享數(shù)據(jù)庫上。

 

  XP要求結(jié)合業(yè)務(wù)和技術(shù)情況,快速確定下一次發(fā)布的范圍,即小型發(fā)布。一個(gè)版本的發(fā)布周期一般以1~3個(gè)月合適。客戶代表確定系統(tǒng)的核心內(nèi)容。甲方外貿(mào)公司主要做的是出口產(chǎn)品,所以該客戶代表制定了第一次發(fā)布需要實(shí)現(xiàn)的內(nèi)容:商品管理、客戶管理、報(bào)價(jià)單管理、訂單管理、出口合同管理、業(yè)務(wù)報(bào)表,并將這些模塊細(xì)化為各個(gè)用戶故事(User stories),加上程序員對(duì)這些故事的估算,定下第一個(gè)發(fā)布計(jì)劃的時(shí)間是6周。客戶對(duì)每個(gè)發(fā)布版本的選擇在技術(shù)上可能不是最有效的,但可以確保每個(gè)版本都給企業(yè)帶來最大的收益。商業(yè)價(jià)值重于技術(shù)效率。在進(jìn)行第一個(gè)版本的開發(fā)過程中,客戶繼續(xù)計(jì)劃了第二個(gè)版本和第三個(gè)版本要實(shí)現(xiàn)的內(nèi)容,整個(gè)開發(fā)周期的發(fā)布計(jì)劃如表1所示。

 

  小型發(fā)布的形式可以讓系統(tǒng)最快地投入生產(chǎn)。用戶的意見也可以迅速地得到反饋,及時(shí)在系統(tǒng)中得到解決。

2.2 迭代計(jì)劃

  系統(tǒng)的一個(gè)版本被分解為若干個(gè)為時(shí)一周的迭代,以便盡快地從客戶代表處得到反饋意見。迭代長(zhǎng)度在項(xiàng)目開始時(shí)即已選定,并且以后保持不變。客戶代表為用戶故事定下優(yōu)先級(jí)后,程序員將這些故事分解為任務(wù),每個(gè)任務(wù)執(zhí)行的時(shí)間一般不超過一、二天。用戶故事根據(jù)迭代的時(shí)間適當(dāng)進(jìn)行合并或拆分或移到下一迭代周期。FRMIS的第一個(gè)版本的迭代計(jì)劃如表2所示。

 

  XP提倡模塊間的松藕合,它可使系統(tǒng)因變更所受的影響最少。通常開發(fā)MIS的步驟都是先做用戶界面,再進(jìn)行數(shù)據(jù)庫設(shè)計(jì),最后制作報(bào)表。由于XP強(qiáng)調(diào)現(xiàn)場(chǎng)客戶的參與,該客戶代表從用戶角度考慮,在制定用戶故事時(shí)定下了報(bào)表故事的優(yōu)先級(jí)最高的要求。根據(jù)客戶這一需求,先設(shè)計(jì)數(shù)據(jù)庫,用實(shí)驗(yàn)數(shù)據(jù)或客戶提供的業(yè)務(wù)數(shù)據(jù)加以填充,然后制作報(bào)表。這樣當(dāng)報(bào)表模塊開發(fā)出來并通過客戶驗(yàn)收后,數(shù)據(jù)庫結(jié)構(gòu)就非常確定了。這時(shí)再進(jìn)行界面的開發(fā),整體速度就提高很多。現(xiàn)場(chǎng)客戶的參與保證了開發(fā)出來的系統(tǒng)具備用戶最需要的功能。

2.3 開  發(fā)

  XP方法的一個(gè)重要開發(fā)原則就是結(jié)對(duì)編程。結(jié)對(duì)編程是由二個(gè)開發(fā)人員在同一臺(tái)電腦上共同編寫解決同一問題的代碼。通常一個(gè)人負(fù)責(zé)寫代碼,另一個(gè)負(fù)責(zé)保證代碼的正確性和可讀性。結(jié)對(duì)編程的優(yōu)點(diǎn)是:重要的設(shè)計(jì)決策至少由二個(gè)人決定,不易出現(xiàn)大的失誤;至少有二個(gè)人熟悉系統(tǒng)的每一部分,二人同時(shí)離開的可能性比較小,保證了開發(fā)的延續(xù);二人可以很好地交流工具的使用,學(xué)習(xí)新的技巧,提高很快。但并不是任何時(shí)候結(jié)對(duì)編程都是絕對(duì)高效的。

  XP還提倡在實(shí)現(xiàn)功能代碼之前,先編寫單元測(cè)試。由于系統(tǒng)需求的不斷變化,程序的測(cè)試也要頻繁地進(jìn)行。為了降低開發(fā)成本,測(cè)試的自動(dòng)化變得非常重要。系統(tǒng)采用DELPHI進(jìn)行開發(fā),所以將適于DELPHI的測(cè)試框架DUNIT集成到開發(fā)環(huán)境中。DUNIT使用很簡(jiǎn)單,例如在開發(fā)中為編寫一個(gè)加密解密的類TCipher的測(cè)試單元TestCipher,首先在單元TestCipher中引用測(cè)試框架單元TestFramework,新建測(cè)試框架的主類TtestCase的子類TCipherTestCase,并重載TtestCase類的Setup和TearDown過程,這二個(gè)過程分別在測(cè)試之前和之后被調(diào)用。接下來在過程TCipherTestCase.TestEncryption中就可以編寫測(cè)試代碼,主要代碼及注解如下:

    

  即可在程序初始化時(shí)對(duì)本測(cè)試類進(jìn)行注冊(cè)。之后在工程源文件引用單元TestCipher,并將APPLICATION.RUN;改為GUITestRunner.RunRegisteredTests;即可運(yùn)行已注冊(cè)的類。

  編寫非GUI類的自動(dòng)化測(cè)試單元所花費(fèi)的時(shí)間不多,所帶來的好處顯而易見。但對(duì)有些GUI類的編寫測(cè)試就比較復(fù)雜,費(fèi)時(shí)費(fèi)力。所以在實(shí)際運(yùn)用中應(yīng)只選擇一定的合適的類來編寫單元測(cè)試,避免得不償失。

  除了程序員編寫的單元測(cè)試外,在每個(gè)迭代完成時(shí)還應(yīng)由客戶代表進(jìn)行功能測(cè)試。實(shí)際用戶和開發(fā)人員看問題的角度有所不同,尤其在需求不完善的情況下。每周的迭代完成后的用戶測(cè)試使得意見反饋迅速而高效,減少了錯(cuò)誤積累帶來的項(xiàng)目失敗風(fēng)險(xiǎn),需要返工重構(gòu)的工作量也不至太多。

  整個(gè)FTMIS開發(fā)周期經(jīng)過18周的迭代,到最后第三個(gè)版本發(fā)布時(shí),系統(tǒng)已經(jīng)穩(wěn)定地為企業(yè)服務(wù)多時(shí)。同時(shí)因?yàn)殚_發(fā)過程比較嚴(yán)格地遵守代碼規(guī)范,大幅度減少了后期開發(fā)人員所不愿意寫的技術(shù)文檔。迭代周期及用戶故事制訂得比較合適也使開發(fā)人員始終工作在松緊有度的環(huán)境中。最終客戶和開發(fā)人員都得到了比較滿意的結(jié)果。

3  結(jié)束語

  XP方法在FTMIS項(xiàng)目中的成功實(shí)施證明了以代碼設(shè)計(jì)為中心的自底向上過程的合理性和有效性。國(guó)內(nèi)諸多中小型項(xiàng)目開發(fā)時(shí)都是時(shí)間緊迫、需求分析過于簡(jiǎn)單,此時(shí)XP比重量級(jí)開發(fā)過程顯得更有優(yōu)勢(shì),并且易于實(shí)施。但對(duì)于XP的一些原則和方法,不能生搬硬套,應(yīng)該靈活進(jìn)行一些修剪補(bǔ)充,使項(xiàng)目獲得最大的成功。

 

參考文獻(xiàn)

1  Beck K.解析極限編程:擁抱變化.北京:人民郵電出版社,2002

2  Jeffries R,Anderson A,Hendrickson C.極限編程實(shí)施.北京:人民郵電出版社,2002

3  張恂.XP的價(jià)值和局限.非程序員,2002;(15)

4  Newkirk J,Martin R.極限編程實(shí)踐.北京:人民郵電出版社,2002

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美精品一区二区在线观看| 黄色成人av| 久久只有精品| 久久成人久久爱| 先锋影音网一区二区| 亚洲综合日韩在线| 亚洲图片在线| 亚洲一区二区3| 亚洲女与黑人做爰| 亚洲综合色婷婷| 亚洲欧美成人网| 午夜精品国产更新| 欧美一区二区三区四区夜夜大片| 午夜欧美大尺度福利影院在线看| 亚洲男女自偷自拍| 午夜精品久久久久久久久久久久久| 亚洲免费在线观看| 欧美伊人久久| 久久久久国产免费免费| 久久中文久久字幕| 欧美国产日韩xxxxx| 欧美精品三级在线观看| 欧美日韩亚洲综合| 国产精品久久久久久久浪潮网站 | 国产毛片精品国产一区二区三区| 国产精品一二一区| 国产一区二区三区久久久 | 亚洲电影免费观看高清完整版在线观看| 在线欧美小视频| 亚洲精品极品| 宅男精品视频| 久久国产精品99久久久久久老狼| 亚洲国产日韩一区二区| 夜夜嗨一区二区三区| 亚洲特级毛片| 久久成年人视频| 欧美成人午夜激情在线| 欧美美女bbbb| 国产女人aaa级久久久级| 激情久久久久久久| 日韩视频免费观看高清完整版| 亚洲一区三区电影在线观看| 久久激五月天综合精品| 夜夜嗨av一区二区三区四区| 性18欧美另类| 欧美电影免费观看大全| 国产精品欧美日韩| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲精品一区二区三区不| 亚洲欧美日韩国产| 最新中文字幕亚洲| 亚洲免费视频网站| 美女国产一区| 国产精品亚洲视频| 亚洲第一伊人| 亚洲欧美在线免费| 99国产精品99久久久久久粉嫩| 欧美一区二区黄色| 欧美精品在线免费| 国产日韩在线亚洲字幕中文| 亚洲人成人99网站| 性久久久久久久久| 一区二区三区鲁丝不卡| 久久视频国产精品免费视频在线 | 国产欧美日韩视频| 亚洲啪啪91| 欧美专区在线观看一区| 亚洲午夜在线视频| 男女视频一区二区| 国产欧美日韩精品丝袜高跟鞋| 亚洲级视频在线观看免费1级| 欧美一区=区| 亚洲在线观看视频| 欧美大片91| 国产真实久久| 亚洲天堂成人在线视频| 亚洲精品欧洲精品| 久久国产视频网站| 欧美午夜在线一二页| 亚洲国产成人一区| 欧美在线在线| 久久爱www.| 国产精品国产自产拍高清av王其| 一区久久精品| 欧美亚洲免费| 亚洲欧美www| 欧美三级日韩三级国产三级| 亚洲啪啪91| 91久久精品国产91性色| 久久美女性网| 国产色视频一区| 亚洲摸下面视频| 午夜国产精品影院在线观看| 欧美日韩在线三区| 亚洲另类春色国产| 日韩一区二区高清| 欧美大尺度在线| 亚洲第一精品久久忘忧草社区| 久久国产精品久久久久久久久久| 久久精品91久久香蕉加勒比 | 国产一区二区0| 欧美一级久久久| 欧美一区久久| 国产精品视频久久一区| 亚洲一区二区三区在线播放| 亚洲综合精品一区二区| 国产精品wwwwww| 亚洲视屏一区| 亚洲图片在线| 欧美视频在线一区| 一区二区欧美国产| 亚洲图中文字幕| 欧美四级在线观看| 99精品视频一区| 中文av一区特黄| 国产精品qvod| 亚洲免费在线精品一区| 欧美一区二区视频观看视频| 国产区二精品视| 久久高清免费观看| 蜜桃精品一区二区三区| 亚洲福利久久| 日韩一区二区免费高清| 欧美日韩精品系列| av成人国产| 午夜精品久久久久久| 国产美女精品免费电影| 欧美在线一级va免费观看| 美女日韩在线中文字幕| 亚洲国产欧美精品| 日韩视频一区二区三区在线播放免费观看 | 亚洲精品影视在线观看| 欧美日韩国产区| 国产精品99久久久久久www| 午夜精品一区二区三区在线视 | 亚洲国产精品成人综合| 免费美女久久99| 亚洲国产清纯| 亚洲性视频网站| 国产精品私拍pans大尺度在线| 香港久久久电影| 久久嫩草精品久久久久| 亚洲国产成人精品久久久国产成人一区 | 久久亚洲视频| 91久久综合| 亚洲综合欧美| 国产一区二区高清不卡| 亚洲激情在线观看视频免费| 欧美激情中文字幕在线| 亚洲午夜一区二区三区| 久久久成人网| 亚洲人成艺术| 亚欧美中日韩视频| 尤物九九久久国产精品的特点 | 久久久久国产精品厨房| 亚洲国产高清aⅴ视频| 亚洲小说春色综合另类电影| 国产一区二区三区四区五区美女| 亚洲日本va在线观看| 国产精品老牛| 亚洲国产综合在线| 欧美日韩在线播放一区| 性色av一区二区三区在线观看| 欧美电影在线观看| 亚洲尤物视频网| 免费短视频成人日韩| 亚洲视频在线观看免费| 噜噜噜久久亚洲精品国产品小说| av成人免费| 久久夜色精品国产欧美乱极品 | 性欧美videos另类喷潮| 在线成人h网| 亚洲欧美日韩国产一区二区三区 | 99riav国产精品| 国产一区二区久久| 一区二区三区鲁丝不卡| 国产一区二区三区四区hd| 一本一本久久a久久精品牛牛影视| 国产乱肥老妇国产一区二| 99国产精品久久久久久久久久 | 一区在线观看视频| 亚洲欧美视频在线观看| 亚洲大胆在线| 久久福利毛片| 一本久道综合久久精品| 快射av在线播放一区| 亚洲欧美激情四射在线日| 欧美高潮视频| 欧美在线免费播放| 国产精品s色| 99精品欧美一区二区蜜桃免费| 国产一区自拍视频| 亚洲在线观看| 亚洲免费av片| 欧美a级片网站| 久久不射电影网| 国产精品日韩欧美大师| 亚洲视频在线观看一区| 亚洲国产成人av在线| 久久亚洲综合色|