一、問(wèn)題的提出
筆者近幾年一直從事信息系統(tǒng)的開發(fā),特別是有關(guān)國(guó)家機(jī)關(guān)和企業(yè)信息系統(tǒng)的開發(fā)工作,取得了許多的經(jīng)驗(yàn)和教訓(xùn)。其中一個(gè)深切的體會(huì)是,需求的不斷變化,如果不能很好的應(yīng)對(duì),會(huì)導(dǎo)致整個(gè)項(xiàng)目的進(jìn)度和質(zhì)量都難以控制,最終使整個(gè)系統(tǒng)失敗。特別是在我國(guó),用戶對(duì)于如何應(yīng)用計(jì)算機(jī)
軟件并沒有一個(gè)成熟的經(jīng)驗(yàn),在項(xiàng)目進(jìn)行中用戶會(huì)頻繁的改變和增加各種要求。當(dāng)最終完成系統(tǒng)的建設(shè)時(shí),卻發(fā)現(xiàn)企業(yè)的業(yè)務(wù)需求已經(jīng)發(fā)生了很大的改變,一方面是系統(tǒng)的設(shè)計(jì)已經(jīng)無(wú)法很好地滿足新的需求,另一方面是項(xiàng)目周期大大超過(guò)預(yù)期,項(xiàng)目發(fā)生虧損。
據(jù)美國(guó)
軟件工程實(shí)施現(xiàn)狀的調(diào)查,
軟件研發(fā)的情況也是很難預(yù)測(cè),大約只有10%的項(xiàng)目能夠在預(yù)定的費(fèi)用和進(jìn)度下交付。在商用
軟件產(chǎn)業(yè)中,這一現(xiàn)象尤為嚴(yán)重。
因此如何從
軟件工程的角度,通過(guò)采用適當(dāng)系統(tǒng)設(shè)計(jì)方法和加強(qiáng)
項(xiàng)目管理來(lái)解決需求不斷變化的問(wèn)題,是各個(gè)
軟件開發(fā)商的一個(gè)重要課題。通過(guò)實(shí)踐,感到采用敏捷方法的基本思想和原則來(lái)設(shè)計(jì)系統(tǒng)和處理需求變化問(wèn)題,能夠產(chǎn)生較好的效果。
下面就從系統(tǒng)設(shè)計(jì)和
項(xiàng)目管理等方面談一下這方面的體會(huì)。
二、需求變化帶來(lái)的問(wèn)題
作為
軟件開發(fā)商,當(dāng)接到一個(gè)項(xiàng)目后,一般的做法是首先由用戶提出需求,然后開發(fā)商根據(jù)用戶的需求作出一個(gè)系統(tǒng)實(shí)現(xiàn)方案,而用戶通常并沒有實(shí)質(zhì)地理解方案,隨即通過(guò)了方案,開始了
軟件的開發(fā)工作。根據(jù)筆者所開發(fā)過(guò)的多個(gè)系統(tǒng),開發(fā)前期,大多數(shù)單位并沒有明確的想法,也提不出確切的需求,因?yàn)闃I(yè)務(wù)人員不了解計(jì)算機(jī)技術(shù)是怎樣實(shí)現(xiàn)業(yè)務(wù)流程的。用戶總是希望開發(fā)單位根據(jù)當(dāng)前的業(yè)務(wù)流程先做出一個(gè)樣板來(lái),然后再進(jìn)行改造,而多數(shù)用戶認(rèn)為
軟件修改很容易。
盡管已經(jīng)做好了系統(tǒng)規(guī)劃,簽訂了功能較明確的合同,然而隨著系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)施的進(jìn)展,當(dāng)客戶在項(xiàng)目部署后看到真正的
軟件系統(tǒng)的界面及操作方式,客戶的需求就被激發(fā)起來(lái),會(huì)根據(jù)自己的對(duì)
軟件的理解和日常工作的習(xí)慣,對(duì)
軟件的處理及操作方式提出修改,而這種修改往往比較隨意,因此導(dǎo)致開發(fā)方需要對(duì)流程、界面、以及相關(guān)文檔經(jīng)常的大量的修改,這些成為開發(fā)方的一個(gè)很大的負(fù)擔(dān),而這種負(fù)擔(dān)對(duì)用戶基本是看不見的。
三、用敏捷方法方法應(yīng)對(duì)需求變化
1.敏捷建模(Agile Modeling)進(jìn)行系統(tǒng)設(shè)計(jì)
此文章共有4頁(yè) 1 2 3 4 下一頁(yè)
文章來(lái)源:互聯(lián)網(wǎng)