[摘要] 軟件需求開(kāi)發(fā)作為軟件項(xiàng)目管理的前期工作,貫穿項(xiàng)目過(guò)程的始終,能夠?qū)崿F(xiàn)軟件開(kāi)發(fā)最終產(chǎn)品同需求的最佳結(jié)合。本文應(yīng)用項(xiàng)目管理理論,將軟件需求開(kāi)發(fā)過(guò)程劃分為需求獲取、需求分析、編寫軟件需求規(guī)格和需求驗(yàn)證四個(gè)階段,并設(shè)計(jì)了軟件需求開(kāi)發(fā)管理模型。該模型能夠提高軟件需求開(kāi)發(fā)管理效率,確保軟件開(kāi)發(fā)能夠按進(jìn)度,低成本,高質(zhì)量地完成。
[關(guān)鍵詞] 項(xiàng)目管理 軟件需求開(kāi)發(fā) 進(jìn)度 成本 質(zhì)量 管理模型
一、引言
軟件需求開(kāi)發(fā)是軟件工程的一個(gè)重要環(huán)節(jié),在軟件生命周期中的需求、設(shè)計(jì)、編碼、測(cè)試和維護(hù)等各個(gè)階段中,需求開(kāi)發(fā)處于軟件工程的開(kāi)始部分,它提供構(gòu)建軟件項(xiàng)目的根基,決定軟件開(kāi)發(fā)成果滿足客戶需求的匹配程度。軟件需求開(kāi)發(fā)環(huán)節(jié)的失誤會(huì)隨著開(kāi)發(fā)進(jìn)度的擴(kuò)大而蔓延,資料表明,軟件項(xiàng)目中由于需求開(kāi)發(fā)管理混亂而造成的返工開(kāi)銷幾乎占了總開(kāi)發(fā)的50%。本文應(yīng)用項(xiàng)目管理理論分析軟件需求開(kāi)發(fā)階段的系統(tǒng)構(gòu)成,并設(shè)計(jì)管理模型來(lái)提高軟件需求開(kāi)發(fā)的管理效率。
二、軟件需求開(kāi)發(fā)管理過(guò)程
由于計(jì)算機(jī)技術(shù)的迅速發(fā)展,使得軟件需求具有模糊性、不確定性、變化性、主觀性等特點(diǎn),并帶來(lái)軟件需求開(kāi)發(fā)管理的復(fù)雜性。軟件需求開(kāi)發(fā)是一定的組織利用有限的資源在規(guī)定的時(shí)間內(nèi)完成,可以作為項(xiàng)目來(lái)進(jìn)行管理,其管理過(guò)程由需求獲取、需求分析、編寫軟件需求規(guī)格和需求驗(yàn)證四個(gè)階段構(gòu)成。
1.需求獲取
需求獲取是在問(wèn)題和最終解決方案之間架設(shè)橋梁,其主要任務(wù)是和用戶方的領(lǐng)導(dǎo)層、業(yè)務(wù)層人員進(jìn)行溝通,獲取用戶的具體需求,并了解用戶的組織架構(gòu)、業(yè)務(wù)流程、硬件環(huán)境、軟件環(huán)境、現(xiàn)有的運(yùn)行系統(tǒng)等具體情況,同用戶建立起良好的溝通渠道和方式。軟件需求獲取的方法有:與用戶交談,向用戶提問(wèn)題;參觀用戶的工作流程,觀察用戶的操作;用戶工作的情景分析;現(xiàn)有系統(tǒng)的問(wèn)題報(bào)告和改進(jìn)要求,事件和響應(yīng);市場(chǎng)調(diào)查和向用戶群體發(fā)調(diào)查問(wèn)卷;與同行、專家交談,聽(tīng)取他們的意見(jiàn);分析已經(jīng)存在的同類軟件產(chǎn)品,提取需求;從現(xiàn)有產(chǎn)品或競(jìng)爭(zhēng)產(chǎn)品的文檔中提取需求;從行業(yè)標(biāo)準(zhǔn)、規(guī)則中提取需求;從 Internet上搜查相關(guān)資料等。
2.需求分析
需求分析主要通過(guò)建立業(yè)務(wù)模型的方式來(lái)描述用戶的功能需求,為客戶、用戶、開(kāi)發(fā)方等不同參與者提供一個(gè)交流的渠道。業(yè)務(wù)模型可以映射出軟件產(chǎn)品的核心需求,即功能需求。功能需求應(yīng)描述軟件提供的功能和服務(wù)、對(duì)輸入的響應(yīng),并描述特定條件下的系統(tǒng)構(gòu)成等。軟件產(chǎn)品本身可能還存在與業(yè)務(wù)無(wú)直接關(guān)系的非功能需求,具體與系統(tǒng)的總體特性有關(guān),如可靠性、響應(yīng)時(shí)間、存儲(chǔ)空間等。非功能需求定義系統(tǒng)提供服務(wù)或功能的約束,包括時(shí)間約束、空間約束、開(kāi)發(fā)過(guò)程約束及應(yīng)遵循的標(biāo)準(zhǔn)等。通常這兩類需求構(gòu)成軟件需求的總集。
3.編制軟件需求規(guī)格
軟件需求規(guī)格的編制是為了使用戶和軟件開(kāi)發(fā)者雙方對(duì)該軟件的初始規(guī)定有一個(gè)共同的理解,使之成為整個(gè)開(kāi)發(fā)工作的基礎(chǔ),需求分析完成的標(biāo)志就是提交一份完整的軟件需求規(guī)格說(shuō)明書。軟件需求規(guī)格說(shuō)明書以一種開(kāi)發(fā)人員可用的技術(shù)形式闡述軟件必須提供的功能和具備的性能,以及必須考慮的限制條件。軟件項(xiàng)目客戶通過(guò)軟件需求規(guī)格了解軟件項(xiàng)目能夠提供的軟件產(chǎn)品,檢查軟件需求是否滿足需要;項(xiàng)目管理人員根據(jù)軟件需求規(guī)格制定項(xiàng)目的開(kāi)發(fā)計(jì)劃和管理過(guò)程;軟件開(kāi)發(fā)人員通過(guò)軟件需求規(guī)格理解要開(kāi)發(fā)的產(chǎn)品及具體要開(kāi)發(fā)的內(nèi)容;軟件測(cè)試人員通過(guò)軟件需求規(guī)格驗(yàn)證軟件。
4.需求評(píng)審
編寫的軟件需求規(guī)格說(shuō)明書還應(yīng)當(dāng)進(jìn)行需求評(píng)審,確保需求確定的科學(xué)性??刹捎孟铝兄笜?biāo)進(jìn)行評(píng)審:
(1)正確性:每條需求都正確代表構(gòu)建軟件系統(tǒng)所要完成的