摘要:由于軟件開發(fā)過程中容易因各種因素導(dǎo)致需求發(fā)生錯誤、軟件成本增加,而借助于需求管理工具可以有效解決軟件項目生命周期中需求管理方面的問題,有效縮減成本。本文重點就軟件項目中需求管理工具的作用及其發(fā)展趨勢等相關(guān)內(nèi)容進行了探討。
關(guān)鍵詞:軟件需求;需求管理工具
中圖分類號:TP311.5 文獻標識碼:A 文章編號:1007-9599 (2012) 21-0000-02
1 軟件項目中需求管理的必要性分析
軟件項目的開發(fā)過程中主要包括三個管理對象,分別為軟件需求管理、軟件產(chǎn)品以及開發(fā)活動,其中,軟件需求管理最為關(guān)鍵。通常而言,客戶在軟件終產(chǎn)品前無法對產(chǎn)品情況進行判斷,因而當其發(fā)現(xiàn)終產(chǎn)品時,很容易同所期望的相差甚遠,導(dǎo)致的原因:一是用戶對于軟件需求的表述模糊,由于用戶對業(yè)務(wù)的理解可能存在偏頗,因而導(dǎo)致其對軟件需求進行表述時不夠清楚;二是用戶需求存在著多變性,隨著軟件開發(fā)過程的不斷推進,其對于原需求具有了新的認識,或出現(xiàn)了新的需求;三是用戶因缺乏計算機領(lǐng)域方面的知識,因而所提需求很難實現(xiàn),因而常需要對變更需求;四是軟件開發(fā)企業(yè)常將開發(fā)重點集中在軟件的設(shè)計與開發(fā)方面,并未對需求變更進行控制,因而會造成軟件項目進度大幅度滯后,成本超出預(yù)算等情況發(fā)生;五是當前需求管理工具的局限性也會影響軟件需求的準確性以及需求變更過程的可控性。
為了有效解決上述問題,必須充分認識到軟件項目中需求管理的重要性,引入新型的需求管理工具,實現(xiàn)軟件項目需求管理的有效性以及軟件項目開發(fā)過程中需求錯誤的大幅減少,進而實現(xiàn)軟件開發(fā)成本地大幅降低,有效縮短開發(fā)周期,推動軟件項目的成功。
2 軟件項目中需求管理工具的類型及作用分析
2.1 軟件項目中需求管理工具的主要類型
如今,需求管理工具已經(jīng)形成了一定的規(guī)模,當前較常用的需求管理軟件主要包括Rational Analyst Studio,DOORS,RDT,Caliber-RM等,可將這些需求管理工具分為如下兩類,即以文檔為核心的需求管理工具以及以數(shù)據(jù)庫為核心的需求管理工具。其中,DOORS與Caliber-RM是以數(shù)據(jù)庫為核心的類型,其主要是將所有需求屬性以及跟蹤能力等相關(guān)信息存儲于數(shù)據(jù)庫當中,而需求可由不同源文檔產(chǎn)生,但結(jié)果均存于數(shù)據(jù)庫中,此外,工具還提供了每個需求以及外部文件,例如Word、Excel以及圖形等文件相關(guān)聯(lián)的功能,并提供額外的補充性需求的說明。Rational Analyst Studio屬于以文檔為核心的需求管理工具,其主要通過使用Word等字處理程序進行文檔的制作及存儲,其允許選擇文檔以離散需求的形式存儲于數(shù)據(jù)庫中,因而進一步加強了此類型文檔處理的能力,只要數(shù)據(jù)庫中有需求的存儲,就允許用戶進行屬性的定義,這點同以數(shù)據(jù)庫為核心的需求管理工具相類似,此外,Rational Analyst Studio也提供文檔內(nèi)容以及同步數(shù)據(jù)庫等機制。
除了以上五種工具外,市場還出現(xiàn)了許多其他需求管理工具,其各有所長,使用時應(yīng)以具體情況為依據(jù)進行適宜工具的選擇。
2.2 軟件項目中需求管理工具的功能
1)在需求獲取階段的功能
此階段應(yīng)更加注重軟件需求定義方面的功能,開發(fā)者同用戶交流獲取用戶需求,并將此類需求納入需求管理工具的具體管理過程中,因此,要求需求管理工具能夠提供一個方法來對每項需求進行明確的定義和存儲,具體而言,首先,其應(yīng)當具有最基本的編輯功能,并支持從常用文檔格式進行直接輸入等方面的需求。其次,其應(yīng)能夠支持非文字化方式諸如圖、表、邏輯符號等的定義及其存儲,并能夠借助于過濾、菜單以及沖突檢測等的方式對數(shù)據(jù)進行整合。再次,其應(yīng)對需求級別進行準確定義,即在父類需求下所包含的子類需求進行定義。
2)在需求分析階段的功能
開發(fā)者應(yīng)就需求條款進行分析及歸納,以便為系統(tǒng)設(shè)計及其開發(fā)過程提供一個清晰的思路。要求需求管理工具應(yīng)支持需求的歸納及分類,并能夠?qū)π枨筮M行優(yōu)先級的劃分,同時支持需求查詢過程。
3)在需求管理階段的功能
此階段要求需求管理工具能夠在需求變更的全過程中提供實現(xiàn)的方法,并對其進行有效的控制,此外,能夠?qū)π枨笞兏暗南嚓P(guān)需求進行處理,并對需求相關(guān)版本屬性進行有效的管理。應(yīng)能夠?qū)δ稠椥枨蠹捌涓餍枨箝g的關(guān)聯(lián)性進行定義和跟蹤,并對需求相關(guān)測試結(jié)果進行跟蹤和記錄,并能夠提供軟件需求的完整歷史記錄。
4)在需求輸出階段的功能
此階段要求工具具有相對較強的兼容性,包括可進行工具數(shù)據(jù)庫內(nèi)容的輸入,可自動進行標準化文檔的生成,并可進行階段狀態(tài)報告的提供。
3 軟件項目中需求管理工具的發(fā)展趨勢分析
隨著互聯(lián)網(wǎng)的發(fā)展,軟件產(chǎn)品的需求日趨增加,且種類也趨之復(fù)雜。軟件產(chǎn)品的發(fā)展,又決定了需求信息的發(fā)展,使之變的復(fù)雜多樣。需求間的交錯關(guān)系,使得需求管理工具中的方法無法給需求信息恰當?shù)拿枋?。細致和簡略的描述都不能將需求信息很好的表達出來。這就要求新生的需求管理工具不僅能保證信息的不丟失,而且還必須保證信息的不繁冗。不過,信息非形式化和形式化的關(guān)系也亟待解決。非形式化描述的優(yōu)點是便于使用和理解,缺點是不方便推理;而形式化描述的優(yōu)點和缺點和非形式化的正好相反,因此,它們兩個結(jié)合,互取優(yōu)缺,可以有效的分析各類需求信息,還可以捕獲或二次捕獲需求信息,因而能很好的解決需求管理工具存在的問題。此外,非形式化描述和形式化描述的有效結(jié)合,能促進需求管理工具的開發(fā)。使之變得方便快捷。
4 結(jié)語
軟件需求在軟件行業(yè)頗受重視,但由于它的不確定性,一些項目的開發(fā)也會因此而告終。相比國外需求管理工具的開發(fā),我國的需求管理工具的開發(fā)還是少之又少,甚至使用的也不多。因此,我國應(yīng)加強這方面的投入,使我國在軟件行業(yè)能進一步的發(fā)展,開發(fā)出自己的需求管理工具,趕上國際水平。此外,推廣軟件需求工具的使用也是至關(guān)重要的。
參考文獻:
[1]吳艷艷,周長倫,姜家軒,王春梅,許自國.軟件項目管理中的需求管理[J].信息技術(shù)與信息化,2008,(02).
[2]萬文杰,李振中,任偉,高瑞年,盧旭.探析軟件開發(fā)中的項目需求管理[J].電腦編程技巧與維護,2010,(10).
[3]張鐵強.軟件項目中的需求管理研究[J].電子商務(wù),2010,(11).
[4]李航.淺談軟件需求管理中存在的常見問題[J].信息與電腦(理論版),2011,(11).