隨著各種軟件技術(shù)的不斷創(chuàng)新、相關(guān)軟件產(chǎn)品的開發(fā)規(guī)模越來越大,面對如此重要而且投入與影響逐年增加的軟件研發(fā)活動,要求對其進行科學(xué)有效的管理變得尤為重要??茖W(xué)技術(shù)對經(jīng)濟發(fā)展、社會進步、人類生活質(zhì)量的提高、國家綜合國力的增強起著巨大的作用。隨著信息技術(shù)日新月異的發(fā)展,軟件行業(yè)作為極具挑戰(zhàn)性和創(chuàng)造性的一項行業(yè),其軟件項目的研發(fā)更是極具挑戰(zhàn)性。因此,各軟件企業(yè)都努力利用項目管理方法去管理軟件研發(fā)項目,以便對其整個研發(fā)過程實施科學(xué)有效的管理。
項目管理(Project Management):是運用各種相關(guān)技術(shù)、知識、技能、方法及工具,在計劃、組織、領(lǐng)導(dǎo)、控制等方面所開展的各種活動,其目的是為了達到或超過項目需求方對項目所設(shè)定的要求或期望。從項目管理的概念可以看出,軟件研發(fā)項目管理是根據(jù)管理科學(xué)相關(guān)理論,結(jié)合軟件產(chǎn)品研發(fā)的實際,通過對資源、成本、質(zhì)量、進度、風(fēng)險、績效等進行系統(tǒng)分析、管理及控制,使軟件研發(fā)項目按照質(zhì)優(yōu)原則朝著預(yù)設(shè)目標(biāo)進展。項目管理的最終目標(biāo)是高質(zhì)量地按時在項目預(yù)算成本內(nèi)完成項目全部任務(wù)指標(biāo)。
同時也要注意到,與其它行業(yè)的項目管理相比,軟件業(yè)項目管理有其自身的特殊性。首先,軟件不同于硬件,它是計算機系統(tǒng)中的邏輯實體而非物理實體,具有抽象性,因此是純知識性產(chǎn)品,在資金投入上可計量性不強,很難參照常規(guī)方法進行估量其研發(fā)進度和質(zhì)量,使得研發(fā)效率難以準(zhǔn)確預(yù)測和保證。其次,軟件產(chǎn)品研發(fā)復(fù)雜性高也導(dǎo)致了在研發(fā)過程中難以預(yù)見和控制各種潛在風(fēng)險性。另外,軟件研發(fā)還需考慮社會因素的影響,所有這些均可能致使項目研發(fā)前功盡棄。
軟件項目管理的對象是軟件工程項目,它所涉及的范圍覆蓋了軟件項目研發(fā)的整個過程: 需求分析、軟件設(shè)計、編程實現(xiàn)、軟件測試以及后期運行維護等。因此與之相對應(yīng),軟件項目管理的內(nèi)容主要包括軟件項目需求管理、軟件項目估算與進度管理、軟件項目質(zhì)量管理、軟件項目資源管理、績效考核管理等。本文結(jié)合筆者多年從事科技管理與實際軟件研發(fā)項目管理工作中的經(jīng)驗,就軟件研發(fā)項目管理中應(yīng)注意的幾個問題進行研究分析。
1、軟件需求分析管理
對任何項目而言,需求是靈魂。需求分析作為軟件研發(fā)過程的基礎(chǔ),其結(jié)果優(yōu)劣將直接影響整個軟件的研發(fā)過程,成功的軟件產(chǎn)品必然是以成功的需求分析為前提。
正如企業(yè)在研發(fā)新產(chǎn)品前需掌握市場需求,軟件研發(fā)亦如此,據(jù)相關(guān)資料顯示,因需求分析因素所造成的軟件項目失敗或缺陷約占60%,而系統(tǒng)實施階段的其它錯誤導(dǎo)致軟件研發(fā)項目失敗的比率約為40%,由此可看出需求分析的重要性。由于需求分析不明確導(dǎo)致項目失敗的根源在于研發(fā)人員沒有準(zhǔn)確把握客戶的真正需求。一方面可能是用戶最初沒有清晰明確的需求,而是在項目研發(fā)過程中,不斷地變更或提出新需求,這些變更不僅加大了研發(fā)成本,同時產(chǎn)生項目無法按時完成等問題;另一方面,也可能是研發(fā)人員對用戶需求調(diào)研不徹底,沒有真正熟悉客戶的業(yè)務(wù)流程,未能從專業(yè)的角度研發(fā)挖掘客戶的潛在大量實踐均已證明,項目管理在軟件產(chǎn)品的全生命周期中占據(jù)極其重要的地位,軟件項目研發(fā)失敗更多的是管理層面問題,并非技術(shù)層面問題。
需求,導(dǎo)致項目的進展及質(zhì)量均難以控制,嚴(yán)重的后果是使整個項目研發(fā)失敗。因此,必須加強軟件項目需求管理來解決不斷變化的需求問題。需求管理的目的是在客戶與研發(fā)方之間建立雙方對需求的協(xié)商機制,并嚴(yán)格控制需求的變更。在需求正確建立過程中,要做到準(zhǔn)確識別需求,必須利用相關(guān)專業(yè)領(lǐng)域知識分析、挖掘,才能確認(rèn)需求。
因此要求需求分析人員不僅具備很