摘要:需求管理是整個軟件工程的管理的基拙,也是項目成功的關(guān)健所在。本文論述了軟件項目中需求管理的重要性及存在的問題,并針對這些問題提出相關(guān)解決方法。
關(guān)鍵詞:軟件工程需求 管理軟件項目
1背景
1. 1需求管理的概念
理解需求管理的第一步就是對什么是需求管理達(dá)成共識。Rational把需求定義為“(正在構(gòu)建的)系統(tǒng)必須符合的條件或具備的功能”。
由于需求是正在構(gòu)建的系統(tǒng)必須符合的事務(wù),而且符合某些需求決定了項目的成功或失敗,因此找出需求是什么,將它們記下來,進(jìn)行組織,并在發(fā)生變化時對它們進(jìn)行追蹤,這些活動都是有意義的。換句話說,需求管理就是:一種獲取,組織并記錄系統(tǒng)需求的系統(tǒng)化方案,以及一個使客戶與項目團(tuán)隊對不斷變更的系統(tǒng)需求達(dá)成并保持一致的過程。
1.2需求管理在軟件項目管理中的地位
簡單地說,系統(tǒng)開發(fā)團(tuán)隊之所以管理需求,是因為他們想讓項目獲得成功。滿足項目需求即為成功打下了基礎(chǔ)。若無法管理需求,達(dá)到目標(biāo)的幾率就會降低。以下最近收集的證據(jù)很有說服力:Standish Group從1994年到2001年的CHAOS Reports證實,導(dǎo)致項目失敗的最重要的原因與需求有關(guān)。2001年,Standish Group的CHAOS Reports報導(dǎo)了該公司的一項研究,該公司對多個項目作調(diào)查后發(fā)現(xiàn),百分之七十四的項目是失敗的,即這些項目不能按時按預(yù)算完成。其中提到最多的導(dǎo)致項目失敗的原因就是“變更用戶需求”。
在軟件項目的開發(fā)過程中,需求變更貫穿了軟件項目的整個生命周期,在軟件項目管理中需求工程是軟件開發(fā)的第一步,是關(guān)鍵的一步,也是最難把握的一步。需求管理做得好壞直接影響到軟件的質(zhì)量,甚至軟件項目的成敗。從軟件的項目立項、研發(fā)、維護(hù),用戶的經(jīng)驗在增加,對使用軟件的感受有變化,以及整個行業(yè)的新動態(tài),都為軟件帶來不斷完善功能、優(yōu)化性能、提高用戶友好性的要求。在項目管理過程中,項目經(jīng)理經(jīng)常面對用戶的需求變更,如果不能有效處理這些需求變更,項目計劃會一再調(diào)整,軟件交付日期一再拖延,項目研發(fā)人員的士氣將越來越低落,將直接導(dǎo)致項目成本增加、質(zhì)量下降及項目交付日期推后。這決定了項目組必須擁有需求管理策略。
2需求管理現(xiàn)狀
隨著信息時代的發(fā)展,計算機(jī)軟件的需求愈來愈復(fù)雜,規(guī)模愈來愈大,而且隨著企業(yè)的發(fā)展,工作過程重組,需求變更已愈來愈成為必然。軟件危機(jī)持續(xù)了30年之久,至今仍無法得以很好地解決。究其原因,軟件本身具有的特點固然有關(guān),但長期以來,缺乏軟件開發(fā)和維護(hù)的正確方法以及忽視軟件開發(fā)過程的質(zhì)量控制乃是最為關(guān)鍵的原因。其中軟件開發(fā)和維護(hù)方法的不正確性主要體現(xiàn)在:忽視軟件開發(fā)前期的需求分析;開發(fā)過程缺乏統(tǒng)一的、規(guī)范化的方法論的指導(dǎo);文檔資料不齊全或不準(zhǔn)確;忽視與用戶之間、開發(fā)組員之間的交流;忽視測試的重要性;不重視維護(hù)或由于上述原因造成維護(hù)工作的困難。
這樣,就經(jīng)常出現(xiàn)用戶對“已完成”系統(tǒng)不滿意,軟件產(chǎn)品的質(zhì)量經(jīng)常出現(xiàn)漏洞,補(bǔ)丁一大堆。因此人們意識到以工程化的原則和方法組織軟件開發(fā)工作是解決軟件危機(jī)的一個主要出路。
需求分析作為軟件生命周期的第一個階段,并貫穿于整個軟件生命周期,其重要性越來越突出,到20世紀(jì)80年代中期,逐步形成了軟件工程的子領(lǐng)域—需求工程。進(jìn)人20世紀(jì)90年代后,需求工程成為軟件界研究的重點之一。從1993年起,每兩年舉辦一次需求工程國際研討會(ISRE) ,1994年起,每兩年舉辦一次需求工程國際會議(ICRE)。一些關(guān)于需求工程的工作小組相繼成立。
3存在的問題
3. 1需求描述