對軟件開發(fā)的各個階段進(jìn)行管理,增強(qiáng)對軟件開發(fā)的控制能力,提高軟件開發(fā)質(zhì)量,這是軟件項目管理的根本目的。
軟件的質(zhì)量高低取決于其是否符合包括功能性、可靠性、易用性、效率、可維護(hù)性、可移植性等在內(nèi)的六個方面的要求。而要達(dá)到這六個方面質(zhì)量要求,就必須對軟件開發(fā)過程中各個環(huán)節(jié)進(jìn)行全過程的項目管理,從需求分析、設(shè)計、編碼、測試到上線驗收進(jìn)行控制。根據(jù)軟件工程的生命周期,軟件項目可分為項目立項、啟動、需求分析、系統(tǒng)設(shè)計、系統(tǒng)開發(fā)、系統(tǒng)測試、系統(tǒng)上線、項目驗收和上線后評估等9個階段進(jìn)行。加強(qiáng)軟件項目管理,就是以軟件工程的各個環(huán)節(jié)為管理主線,將動態(tài)項目管理貫穿其中,通過對軟件開發(fā)的項目范圍、項目進(jìn)度、項目質(zhì)量、項目溝通、人力資源、項目成本六大核心要素的集成管理,實現(xiàn)軟件開發(fā)管理效能的最大化,從而大大提高軟件的開發(fā)質(zhì)量。
準(zhǔn)確把握軟件需求
軟件開發(fā)項目的提出,應(yīng)由迫切的業(yè)務(wù)需求來驅(qū)動。很多不成功的軟件項目,往往是由信息技術(shù)部門提出,按照技術(shù)人員的思路主導(dǎo)開發(fā),并理所當(dāng)然地被認(rèn)為能夠在業(yè)務(wù)部門取得良好的應(yīng)用效果。這樣的項目由于得不到業(yè)務(wù)部門的理解和支持,脫離業(yè)務(wù)需求,多數(shù)面臨失敗或半途而廢的命運(yùn)。因此軟件項目業(yè)務(wù)需求的迫切性、技術(shù)實現(xiàn)的成熟性、經(jīng)濟(jì)效益的可行性等方面的因素,都是考慮的要素,將對項目的成敗產(chǎn)生直接影響。
正確的做法應(yīng)該是,由軟件的需求單位根據(jù)自身業(yè)務(wù)需要,向信息技術(shù)管理部門提出軟件項目的立項建議,對立項的目的、業(yè)務(wù)需求范圍、技術(shù)經(jīng)濟(jì)指標(biāo)、開發(fā)周期要求等方面做簡要概述,再由信息技術(shù)管理部門組織業(yè)務(wù)專家和信息技術(shù)專家組成聯(lián)合專家組,進(jìn)行項目立項的可行性論證。通過專家組論證審核后,項目提出單位需要進(jìn)行開題設(shè)計,進(jìn)一步明確軟件開發(fā)范圍、技術(shù)路線、進(jìn)度安排、經(jīng)費(fèi)預(yù)算、研究人員組成、合作隊伍,并以此為基礎(chǔ)編制完成開題設(shè)計書。信息技術(shù)管理部門組織專家組對開題設(shè)計進(jìn)行論證,只有業(yè)務(wù)需求合理、技術(shù)路線可行、開發(fā)隊伍落實的項目,才能通過專家組審核,進(jìn)入項目啟動階段。
軟件開發(fā)過程的監(jiān)督和管理
軟件開發(fā)項目具有建設(shè)范圍難界定、技術(shù)含量高、人員流動快、協(xié)作性強(qiáng)、開發(fā)成功率低等特點(diǎn)。目前國內(nèi)對軟件項目的監(jiān)理制度尚不規(guī)范,對軟件開發(fā)仍然缺乏有效控制。因此由企業(yè)的信息技術(shù)管理部門設(shè)立軟件監(jiān)督崗位,加強(qiáng)對軟件項目的開發(fā)過程管理,就顯得非常必要。
軟件監(jiān)督的主要職責(zé)是在項目的進(jìn)行過程中,協(xié)調(diào)業(yè)務(wù)需求部門和軟件開發(fā)方的關(guān)系,監(jiān)控軟件開發(fā)任務(wù)的執(zhí)行情況,給開發(fā)人員和管理層提供反映軟件過程質(zhì)量的信息和數(shù)據(jù),提高項目透明度,從而保證項目按照計劃實施,實現(xiàn)預(yù)期目標(biāo)。軟件監(jiān)督應(yīng)具備以下三方面的基本素質(zhì):
● 具有較強(qiáng)的工作責(zé)任感和良好的溝通能力;
● 熟悉業(yè)務(wù)管理流程,掌握軟件開發(fā)流程、開發(fā)規(guī)范以及相關(guān)標(biāo)準(zhǔn);
● 具有軟件開發(fā)項目的建設(shè)和管理經(jīng)驗,掌握項目管理知識;
軟件監(jiān)督的工作任務(wù)主要有:
● 確保軟件按照業(yè)務(wù)需求方確認(rèn)的范圍進(jìn)行開發(fā)。
● 保證軟件開發(fā)進(jìn)度符合雙方確認(rèn)的計劃指標(biāo)。
● 保證軟件開發(fā)過程中存在的不符合要求的問題能夠及時得到溝通和處理,必要時需要將問題反映給管理層。
● 確保項目組中軟件開發(fā)人員隊伍相對穩(wěn)定。
● 保證軟件開發(fā)過程和開發(fā)出來的軟件符合相應(yīng)標(biāo)準(zhǔn)和規(guī)范。
● 收集軟件開發(fā)過程中的成功經(jīng)驗,為企業(yè)提供軟件開發(fā)過程的有效控制方法和規(guī)范。
1.監(jiān)督管理的范圍
《需求分析說明書》是對軟件開發(fā)范圍的書面表達(dá)依據(jù)。由于《需求分析說明書》往往是采用軟件設(shè)計的術(shù)語編寫,因此常常令計算機(jī)背景知識較少的業(yè)務(wù)需求方難以理解,也就很難發(fā)現(xiàn)需求報告中與實際需求不符之處,更難提出建設(shè)性的意見。
軟件監(jiān)督要對軟件開發(fā)范圍進(jìn)行管理,首先要確定雙方都能認(rèn)可的《需求分析說明書》。如要求軟件開發(fā)方對《需求分析說明書》做出進(jìn)一步更詳細(xì)的解釋,編制業(yè)務(wù)模型,以便用戶方準(zhǔn)確地理解《需求分析說明書》的內(nèi)容,能及早地發(fā)現(xiàn)需求與實際的偏差。這也是對需求分析工作的總結(jié)與確認(rèn)。
在項目需求分析階段,雙方必須全面地、盡可能細(xì)致地討論項目的應(yīng)用背景、功能要求、性能要求、操作界面要求、與其他軟件的接口要求,以及對項目進(jìn)行評估的各種評價標(biāo)準(zhǔn)。
《需求分析說明書》完成后,軟件監(jiān)督應(yīng)組織項目組與業(yè)務(wù)需求方共同討論,聽取業(yè)務(wù)需求方的意見和建議,并進(jìn)行相應(yīng)的修改完善。各方確認(rèn)《需求分析說明書》內(nèi)容后,需在說明書上簽字確認(rèn)。
在軟件開發(fā)過程中,雙方應(yīng)嚴(yán)格按照簽字確認(rèn)的《需求分析說明書》中規(guī)定的業(yè)務(wù)范圍進(jìn)行開發(fā)。有些需求可能在項目初期很難確定,在開發(fā)過程中需要不斷地加以修正,項目軟件監(jiān)督要及時與用戶充分溝通,建立可以直接聯(lián)系的渠道,共同進(jìn)行需求確認(rèn),保證項目范圍可控。
2.進(jìn)度管理
為確保項目按時、按量、保質(zhì)完成,必須控制任務(wù)和跟蹤里程碑。按照軟件項目的開發(fā)規(guī)律,將軟件開發(fā)過程分為幾個重要階段,對這幾個階段的關(guān)鍵事件設(shè)立里程碑進(jìn)行跟蹤管理。項目進(jìn)度管理可以通過以下方式完成:
● 制定項目里程碑管理運(yùn)行表(里程碑管理表的主要內(nèi)容見表1)。
● 定期舉行項目狀態(tài)會議,由軟件開發(fā)方報告進(jìn)度和問題,用戶方提出意見。
● 比較各項任務(wù)的實際開始日期與計劃開始日期是否吻合。
● 確定正式的項目里程碑是否在預(yù)期完成。
從軟件項目實施的過程來看,很少有一個項目是完全按照實施計劃來進(jìn)行的,因為再好的計劃也不能完全預(yù)見所有的問題,并事先制訂出對策。計劃可以調(diào)整,但是調(diào)整必須合理,并得到業(yè)務(wù)需求方和管理層的批準(zhǔn)。當(dāng)有問題發(fā)生時,其直接的表現(xiàn)就是實施結(jié)果偏離了原來的計劃和目標(biāo),在這種情況下,軟件監(jiān)督就要及時發(fā)現(xiàn)這種偏離,并分析這種原因,如果是因為原來的計劃和目標(biāo)制訂的不合理,或者發(fā)生了預(yù)料之外的情況而又無法克服,這樣就必須調(diào)整計劃和目標(biāo)。
【?發(fā)表評論?0條?】