的項(xiàng)目管理泰斗Harold Kerzner博士在他的可以比作項(xiàng)目管理“圣經(jīng)”的經(jīng)典之作《項(xiàng)目管理—計(jì)劃、進(jìn)度和控制的系統(tǒng)方法》中說:“項(xiàng)目經(jīng)理重要的職責(zé)是做計(jì)劃、整合計(jì)劃和執(zhí)行計(jì)劃”。“項(xiàng)目經(jīng)理是成功項(xiàng)目計(jì)劃的核心”“計(jì)劃是一種必備的管理職能,它增進(jìn)了對(duì)相互作用的不同部門之間復(fù)雜問題的理解”。對(duì)于軟件開發(fā)這個(gè)特殊的領(lǐng)域,制定項(xiàng)目計(jì)劃、執(zhí)行項(xiàng)目計(jì)劃對(duì)項(xiàng)目進(jìn)行控制的知識(shí)和經(jīng)驗(yàn)的積累非常重要。
一、項(xiàng)目計(jì)劃目的與作用
根據(jù)軟件能力成熟度模型集成CMMI1.1,軟件開發(fā)項(xiàng)目計(jì)劃的目的是:建立和維護(hù)定義項(xiàng)目活動(dòng)的計(jì)劃。項(xiàng)目計(jì)劃屬于CMMI的第2級(jí),其過程域包括開發(fā)項(xiàng)目計(jì)劃、與相關(guān)人員交流、獲取對(duì)計(jì)劃的承諾、維護(hù)計(jì)劃;項(xiàng)目計(jì)劃為實(shí)施和監(jiān)控項(xiàng)目活動(dòng)提供了基線。
項(xiàng)目計(jì)劃的第一個(gè)目的是建立估計(jì)值,即建立和維護(hù)項(xiàng)目計(jì)劃因素的估計(jì)值。為此應(yīng)該確定項(xiàng)目范圍,即通過建立高層工作分解結(jié)構(gòu)來估計(jì)項(xiàng)目范圍;監(jiān)理工作產(chǎn)品和任務(wù)屬性的規(guī)模與復(fù)雜度;確定項(xiàng)目的生命周期階段、以此來限定計(jì)劃范圍;基于估算的原理進(jìn)行對(duì)工作產(chǎn)品和任務(wù)的項(xiàng)目工作量和成本的估算。
項(xiàng)目計(jì)劃的第二個(gè)目的是開發(fā)項(xiàng)目計(jì)劃文檔,即文檔化項(xiàng)目計(jì)劃,維護(hù)項(xiàng)目計(jì)劃,并以此作為項(xiàng)目管理的基線。為此應(yīng)該建立和維護(hù)項(xiàng)目的預(yù)算和進(jìn)度表;要識(shí)別和分析項(xiàng)目風(fēng)險(xiǎn);確定如何采集和管理項(xiàng)目數(shù)據(jù);確定實(shí)施計(jì)劃所需要的各種資源;確定項(xiàng)目實(shí)施所必需的知識(shí)和技能;確定各項(xiàng)任務(wù)或活動(dòng)的承擔(dān)人;編寫項(xiàng)目計(jì)劃文檔。
項(xiàng)目計(jì)劃的第三個(gè)目的是獲得并維持所有項(xiàng)目干系人對(duì)項(xiàng)目的承諾。為此應(yīng)當(dāng)評(píng)審影響項(xiàng)目的所有計(jì)劃使所有項(xiàng)目干系人理解項(xiàng)目承諾;必要時(shí)調(diào)整項(xiàng)目計(jì)劃以適應(yīng)有效的和已經(jīng)估計(jì)的資源;獲取所有項(xiàng)目干系人特別是項(xiàng)目任務(wù)或活動(dòng)的承擔(dān)人對(duì)項(xiàng)目計(jì)劃的承諾。
項(xiàng)目計(jì)劃是項(xiàng)目實(shí)施的基礎(chǔ)。通過所有項(xiàng)目干系人認(rèn)可的項(xiàng)目計(jì)劃形成文件,便于本企業(yè)高層領(lǐng)導(dǎo)、相關(guān)管理部門糧道、相關(guān)參與部門領(lǐng)導(dǎo)、項(xiàng)目組成員、客戶、協(xié)作單位、分包單位等等所有項(xiàng)目干系人之間的交流溝通。項(xiàng)目計(jì)劃是項(xiàng)目組為實(shí)現(xiàn)項(xiàng)目目標(biāo)而科學(xué)地預(yù)測(cè)并確定項(xiàng)目生命周期的行動(dòng)方案。任何項(xiàng)目計(jì)劃都是為了解決三個(gè)問題:一是確定項(xiàng)目目標(biāo),二是確定為了達(dá)成項(xiàng)目目標(biāo)的各項(xiàng)行動(dòng)的順序和時(shí)間,三是確定項(xiàng)目中每項(xiàng)行動(dòng)所需要的資源。所以制定項(xiàng)目計(jì)劃是在明確項(xiàng)目目標(biāo)的基礎(chǔ)上,確定項(xiàng)目行動(dòng)方案,分配相關(guān)資源的項(xiàng)目綜合管理過程,是通過對(duì)歷史的、當(dāng)前的、項(xiàng)目或組織內(nèi)部的和項(xiàng)目或組織外部的有關(guān)信息進(jìn)行分析和評(píng)價(jià),對(duì)項(xiàng)目生命周期過程中可能的發(fā)展進(jìn)行評(píng)估、預(yù)測(cè),對(duì)新項(xiàng)目實(shí)施工作進(jìn)行的各項(xiàng)活動(dòng)做出盡可能周密的安排,終形成一個(gè)所有項(xiàng)目干系人認(rèn)可的、約定項(xiàng)目各項(xiàng)活動(dòng)、作為項(xiàng)目實(shí)施工作基礎(chǔ)的文件—項(xiàng)目計(jì)劃。項(xiàng)目計(jì)劃圍繞項(xiàng)目目標(biāo)的完成系統(tǒng)地確定項(xiàng)目的任務(wù)、安排任務(wù)進(jìn)度、編制完成任務(wù)所需的資源預(yù)算等,從而保證項(xiàng)目能夠在合理的工期內(nèi),用盡可能低的成本達(dá)到盡可能高的項(xiàng)目質(zhì)量要求。在制定項(xiàng)目計(jì)劃過程中必須明確五個(gè)基本問題:做什么、如何做、何時(shí)做、誰去做、需要多少資源。
簡(jiǎn)單地說,項(xiàng)目計(jì)劃可以起到如下作用:
1、 確定完成項(xiàng)目目標(biāo)所需的各項(xiàng)任務(wù)范圍,落實(shí)責(zé)任,制定各項(xiàng)任務(wù)的時(shí)間表,明確各項(xiàng)任務(wù)所需的人力、物力、財(cái)力;
2、 確定項(xiàng)目的工作規(guī)范,遵循的標(biāo)準(zhǔn),成為項(xiàng)目實(shí)施的依據(jù)和指南;
3、 明確項(xiàng)目組各成員及其工作責(zé)任范圍以及相應(yīng)的職權(quán);使項(xiàng)目組成員明確自己的工作目標(biāo)、工作方法、工作途徑、工作期限要求;
4、 保證項(xiàng)目進(jìn)行過程中項(xiàng)目組成員和項(xiàng)目干系人之間的交流、溝通與協(xié)作,使得項(xiàng)目各項(xiàng)工作協(xié)調(diào)一致,增加客戶滿意度;
5、 為項(xiàng)目的跟蹤控制提供基礎(chǔ)。
6、 項(xiàng)目計(jì)劃在項(xiàng)目中起到承上啟下的作用,計(jì)劃批準(zhǔn)后應(yīng)當(dāng)作為項(xiàng)目的工作指南。
二、項(xiàng)目計(jì)劃制定的原則
1、 目的性。任何項(xiàng)目計(jì)劃的制定應(yīng)當(dāng)圍繞項(xiàng)目目標(biāo)的實(shí)現(xiàn)展開。制訂計(jì)劃的第一步是必須分析目標(biāo)、進(jìn)而找出為了完成目標(biāo)所要完成的所有任務(wù)。
2、 系統(tǒng)相關(guān)性。項(xiàng)目計(jì)劃由一系列子計(jì)劃組成,如范圍計(jì)劃、人力資源計(jì)劃、進(jìn)度計(jì)劃、資源計(jì)劃、質(zhì)量管理計(jì)劃、風(fēng)險(xiǎn)管理計(jì)劃等等。各個(gè)子計(jì)劃不是孤立存在的,彼此之間相對(duì)獨(dú)立,又緊密相關(guān),應(yīng)當(dāng)形成一個(gè)有機(jī)的整體。構(gòu)成項(xiàng)目計(jì)劃的任何子計(jì)劃的變化都會(huì)影響到其它子計(jì)劃的制定和執(zhí)行,進(jìn)而影響到項(xiàng)目計(jì)劃的正常實(shí)施。
3、 經(jīng)濟(jì)性。項(xiàng)目不僅要有較高的效率,而且要有較高的效益,因此計(jì)劃過程是對(duì)多種選擇權(quán)衡、優(yōu)化的過程。
4、 動(dòng)態(tài)性。由于項(xiàng)目環(huán)境一般處在變化之中,特別是軟件開發(fā)先把棺木的多變性,經(jīng)常使計(jì)劃的實(shí)施偏離項(xiàng)目的基準(zhǔn)計(jì)劃,因此項(xiàng)目計(jì)劃要隨作環(huán)境和條件的變化不斷調(diào)整和修改,以保證項(xiàng)目目標(biāo)的完成。如何防止項(xiàng)目計(jì)劃多變,對(duì)出現(xiàn)的問題及時(shí)加以處理以保證進(jìn)度按原計(jì)劃實(shí)現(xiàn),在一定的意義上說甚至是更為重要的。防止項(xiàng)目計(jì)劃多變,要改進(jìn)計(jì)劃的編制工作,提高計(jì)劃的質(zhì)量,這首先要求項(xiàng)目經(jīng)理和項(xiàng)目計(jì)劃制定人員應(yīng)當(dāng)較好地掌握項(xiàng)目的環(huán)境條件,對(duì)各種條件進(jìn)行深入的調(diào)查落實(shí)并做出有根據(jù)的預(yù)測(cè),據(jù)以制定實(shí)施方案,適當(dāng)留有余地,以使編制的項(xiàng)目計(jì)劃切實(shí)而可行。其次是要使這種計(jì)劃能夠得到貫徹執(zhí)行,因?yàn)樵俸玫挠?jì)劃,如果不能認(rèn)真執(zhí)行,也不過是毫無意義的一紙空文。根據(jù)各方面的經(jīng)驗(yàn),實(shí)行各種不同形式的責(zé)、權(quán)、利機(jī)制是保證計(jì)劃實(shí)現(xiàn)的關(guān)鍵。
三、軟件開發(fā)項(xiàng)目的特點(diǎn)
與其他類型項(xiàng)目的共同點(diǎn):項(xiàng)目成功與否不僅取決于項(xiàng)目過程中所采用的技術(shù)方法工具,還取決于項(xiàng)目管理的水平,特別是計(jì)劃與控制的水平。了解軟件開發(fā)項(xiàng)目的特點(diǎn)對(duì)于項(xiàng)目的計(jì)劃制定和管理控制非常必要的。
與其他類型項(xiàng)目的不同點(diǎn):
1、 軟件產(chǎn)品和其他產(chǎn)品不同,軟件產(chǎn)品是一種“邏輯”產(chǎn)品,是無形的,沒有物理屬性的,看不見、摸不著、難以理解;
2、 需求難以明確且頻繁變更:由于用戶的成熟度或責(zé)任心的原因。用戶已開始無法給出明確的需求。在開發(fā)過程中,需求可能要經(jīng)常及修改,因此需要經(jīng)常地修改程序與文檔;
3、 難以在早期發(fā)現(xiàn)問題:需求不明確,加上后期修改可能沒有進(jìn)行全局性的考慮,產(chǎn)生的問題難以從早期的文檔中直觀地發(fā)現(xiàn),需要等系統(tǒng)設(shè)計(jì)出來后才會(huì)發(fā)現(xiàn)。
4、 項(xiàng)目成員對(duì)文檔的重視不夠。符合用戶需求的高質(zhì)量軟件需要依賴于大量準(zhǔn)確規(guī)范的文檔編輯工作,但項(xiàng)目組成員對(duì)他并不感興趣,很少愿意認(rèn)真去做,因而直接影響了軟件的質(zhì)量。
5、 勞動(dòng)密集型+智力密集型:軟件開發(fā)過程需要大量高強(qiáng)度的腦力勞動(dòng),并且都是手工勞動(dòng),這些勞動(dòng)非常細(xì)致、高度復(fù)雜、容易出錯(cuò),質(zhì)量那一用簡(jiǎn)單的度量來衡量,使得軟件的正確性難以保證。對(duì)于不深入找掌握軟件工程知識(shí)或缺乏軟件開發(fā)實(shí)踐經(jīng)驗(yàn)的人員,是難以做好軟件開發(fā)項(xiàng)目管理工作的。