關(guān)于軟件項(xiàng)目管理技術(shù)分析研究
摘要:從軟件項(xiàng)目管理的重要性談起,研究分析了四個(gè)主流的軟件項(xiàng)目管理技術(shù),指出了它們的缺陷,最后結(jié)合實(shí)踐提出了一種新穎的軟件項(xiàng)目管理概念。
關(guān)鍵詞:能力成熟度模型 能力成熟度模型集成 個(gè)體軟件過程 群組軟件過程
1、引言
軟件項(xiàng)目管理是為了使軟件項(xiàng)目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對(duì)成本、人員、進(jìn)度、質(zhì)量、風(fēng)險(xiǎn)等進(jìn)行分析和管理的活動(dòng)。最早源自于70年代中期。當(dāng)時(shí)美國(guó)國(guó)防部曾立題專門研究軟件項(xiàng)目做不好的原因,發(fā)現(xiàn)70%的項(xiàng)目是因?yàn)楣芾砩埔鸬,而并不是因(yàn)榧夹g(shù)實(shí)力不夠,進(jìn)而得出一個(gè)結(jié)論,即管理是影響軟件項(xiàng)目全局的因素,而技術(shù)只影響局部。這個(gè)結(jié)論非常重要。到了90年代中期,軟件項(xiàng)目管理不善的問題仍然存在。據(jù)美國(guó)軟件工程實(shí)施現(xiàn)狀的調(diào)查,軟件研發(fā)的情況仍然很難預(yù)測(cè),大約只有10%的項(xiàng)目能夠在預(yù)定的費(fèi)用和進(jìn)度下交付。在商用軟件產(chǎn)業(yè)中,這一現(xiàn)象尤為嚴(yán)重。1995年,美國(guó)共取消了810 億美元的軟件項(xiàng)目,其中31%的項(xiàng)目未做完就取消了,53%的軟件項(xiàng)目進(jìn)度通常要延長(zhǎng)一半的時(shí)間,通常只有9%的軟件項(xiàng)目能夠及時(shí)交付并且費(fèi)用也不超支。由此可見,軟件項(xiàng)目管理技術(shù)的研究至關(guān)重要。
2、軟件項(xiàng)目管理技術(shù)綜述
隨著上世紀(jì)末軟件工程的快速發(fā)展,軟件項(xiàng)目管理水平也有了很大提高,提出了很多的軟件項(xiàng)目管理技術(shù),極大地推動(dòng)了軟件業(yè)的發(fā)展,這里我們主要談以下四種主流的軟件項(xiàng)目管理技術(shù)。
2.1 CMM
CMM是美國(guó)卡納基梅隆大學(xué)軟件工程研究所(CMU/SEI)提出的軟件研發(fā)項(xiàng)目管理的一系列方法,它基于組織對(duì)關(guān)鍵過程域的支持,定義了軟件過程成熟度的五個(gè)級(jí)別。
級(jí)別1(初始級(jí))描述了不成熟,或者說(shuō)是未定義過程的組織。級(jí)別2(可重復(fù)級(jí)),級(jí)別3(已定義級(jí)),級(jí)別4(已管理級(jí))和級(jí)別5(優(yōu)化級(jí))分別描述了軟件過程成熟度級(jí)別遞增的組織。和這些級(jí)別相關(guān)的KPA是:
級(jí)別2:需求管理,軟件項(xiàng)目計(jì)劃,軟件項(xiàng)目跟蹤和監(jiān)控,軟件子合同管理,軟件質(zhì)量保證,軟件配置管理。
級(jí)別3:組織級(jí)過程焦點(diǎn),組織級(jí)過程定義,培訓(xùn)大綱,集成軟件管理,軟件產(chǎn)品工程,組間協(xié)調(diào),同行評(píng)審。
級(jí)別4:定量過程管理,軟件質(zhì)量管理。級(jí)別5:缺陷預(yù)防,技術(shù)更新管理,過程更改管理。
2.2 CMMI
CMMI被看做是把各種CMM集成為一個(gè)系列的模型中。CMMI的基礎(chǔ)源模型包括:軟件CMM2.0版(草稿c),EIA一731系統(tǒng)工程,以及IPDCMM(IPD)0.98a版。CMMI也描述了5個(gè)不同的成熟度級(jí)別:
級(jí)別1(初始級(jí))代表了以不可預(yù)測(cè)結(jié)果為特征的過程成熟度。過程包括了一些特別的方法、符號(hào)、工作和反應(yīng)管理,成功主要取決于團(tuán)隊(duì)的技能。
級(jí)別2(已管理級(jí))代表了以可重復(fù)項(xiàng)目執(zhí)行為特征的過程成熟度。組織使用基本紀(jì)律進(jìn)行需求管理、項(xiàng)目計(jì)劃、項(xiàng)目監(jiān)督和控制、供應(yīng)商協(xié)議管理、產(chǎn)品和過程質(zhì)量保證、配置管理、以及度量和分析。對(duì)于級(jí)別2而言,主要的過程焦點(diǎn)在于項(xiàng)目級(jí)的活動(dòng)和實(shí)踐。
級(jí)別3(嚴(yán)格定義級(jí))代表了以組織內(nèi)改進(jìn)項(xiàng)目執(zhí)行為特征的過程成熟度。強(qiáng)調(diào)級(jí)別2的關(guān)鍵過程域中前后一致的、項(xiàng)目級(jí)的紀(jì)律,以建立組織級(jí)的活動(dòng)和實(shí)踐。附加的組織級(jí)過程域包括:①需求開發(fā):多利益相關(guān)者的需求發(fā)展。②技術(shù)方案:展開的設(shè)計(jì)和質(zhì)量工程。③產(chǎn)品集成:持續(xù)集成、接口控制、變更控制。④驗(yàn)證:保證產(chǎn)品正確建立的評(píng)估技術(shù)。⑤確認(rèn):保證建立正確的產(chǎn)品評(píng)估技術(shù)。⑥風(fēng)險(xiǎn)管理:檢測(cè)、優(yōu)先級(jí),相關(guān)問題和意外的解決方案。⑦組織級(jí)培訓(xùn):建立機(jī)制,培養(yǎng)更多熟練人員。⑧組織級(jí)過程焦點(diǎn):為項(xiàng)目過程定義建立組織級(jí)框架。⑨決策分析和方案:系統(tǒng)可選的評(píng)估。⑩組織級(jí)過程定義:把過程看做組織的持久發(fā)展的資產(chǎn)。⑩集成項(xiàng)目管理:在項(xiàng)目?jī)?nèi)統(tǒng)一各個(gè)組和利益相關(guān)者。
級(jí)別4(定量管理級(jí))代表了以改進(jìn)組織性能為特征的過程成熟度。3級(jí)項(xiàng)目的歷史結(jié)果可用來(lái)交替使用,在業(yè)務(wù)表現(xiàn)的競(jìng)爭(zhēng)尺度(成本、質(zhì)量、時(shí)間)方面的結(jié)果是可預(yù)測(cè)的。級(jí)別4附加的過程域包括:①組織級(jí)過程執(zhí)行:為過程執(zhí)行設(shè)定規(guī)范和基準(zhǔn);②定量的項(xiàng)目管理:以統(tǒng)計(jì)質(zhì)量控制方法為基礎(chǔ)實(shí)施項(xiàng)目。
級(jí)別5(優(yōu)化級(jí))代表了以可快速進(jìn)行重新配置的組織性能和定量的、持續(xù)的過程改進(jìn)為特征的過程成熟度。附加的級(jí)別5過程域包括:①因果分析和解決方案:主動(dòng)避免錯(cuò)誤和強(qiáng)化最佳實(shí)踐;②組織級(jí)改革和實(shí)施:建立一個(gè)能夠有機(jī)地適應(yīng)和改進(jìn)的學(xué)習(xí)組織。
2.3 PSP
PSP(PersonalSoftwareProcess,個(gè)體軟件過程)是由CMU/SEI 開發(fā)出來(lái)的,它的推出在軟件工程界引起了極大的轟動(dòng),可以說(shuō)是由定向軟件工程走向定量軟件工程的一個(gè)標(biāo)志。PSP為基于個(gè)體和小型群組軟件過程的優(yōu)化提供了具體而有效的途徑,例如如何制訂計(jì)劃,如何控制質(zhì)量,如何與其他人相互協(xié)作等等。在軟件設(shè)計(jì)階段,PSP的著眼點(diǎn)在于軟件缺陷的預(yù)防,其具體辦法是強(qiáng)化設(shè)計(jì)約束準(zhǔn)則,而不是設(shè)計(jì)方法的選擇。因此,PSP保障軟件產(chǎn)品質(zhì)量的一個(gè)重要途徑是提高設(shè)計(jì)質(zhì)量。
2.4 TSP
TSP(TeamSoftwareProcess,群組軟件過程)是CMU/SEI在PSP基礎(chǔ)上又發(fā)展出的軟件項(xiàng)目管理技術(shù),它主要是指導(dǎo)項(xiàng)目組中的成員如何有效地規(guī)劃和管理所面臨的項(xiàng)目開發(fā)任務(wù),并且告訴管理人員如何指導(dǎo)軟件開發(fā)隊(duì)伍。始終以最佳狀態(tài)來(lái)完成工作。TSP實(shí)施集體管理與自己管理自己相結(jié)合的原則,最終目的在于指導(dǎo)開發(fā)人員如何在最少的時(shí)間內(nèi),以預(yù)定的費(fèi)用生產(chǎn)出高質(zhì)量的軟件產(chǎn)品,所采用的方法是對(duì)群組開發(fā)過程的定義、度量和改進(jìn)。
實(shí)施TSP的先決條件有三條:首先,需要有高層主管和各級(jí)經(jīng)理的支持,以取得必要的資源;其次,項(xiàng)目組開發(fā)人員需要經(jīng)過PSP的培訓(xùn)并有按TSP工作的愿望和熱情;第三,整個(gè)開發(fā)單位在總體上應(yīng)處于CMM二級(jí)以上,開發(fā)小組的規(guī)模以3~20人為宜。在實(shí)施TSP的過程中,首先要有明確的目標(biāo),開發(fā)人員要努力完成已經(jīng)接受的委托任務(wù)。在每一階段開始,要做好工作計(jì)劃。如果發(fā)現(xiàn)未能按期按質(zhì)完成計(jì)劃,應(yīng)立即分析原因,以判定問題是由于工作內(nèi)容不合適或工作計(jì)劃不實(shí)際所引起,還是由于資源不足或主觀努力不夠所引起。開發(fā)小組一方面應(yīng)隨時(shí)追蹤項(xiàng)目進(jìn)展?fàn)顟B(tài)并進(jìn)行定期匯報(bào),另一方面應(yīng)經(jīng)常評(píng)審自己是否按PSP的原理工作。開發(fā)小組成員應(yīng)按自己管理自己的原則管理軟件過程,如發(fā)現(xiàn)過程不合適,應(yīng)及時(shí)改進(jìn),以保證用高質(zhì)量的過程來(lái)產(chǎn)生高質(zhì)量的軟件。項(xiàng)目開發(fā)小組則按集體管理的原則進(jìn)行管理,全體成員都要參加和關(guān)心小組的規(guī)劃、進(jìn)展的追蹤和決策的制定等項(xiàng)工作。
3、軟件項(xiàng)目管理技術(shù)分析研究
CMM的基于活動(dòng)的度量方法和瀑布過程的有次序的、基于活動(dòng)的管理規(guī)范有非常密切的聯(lián)系,所以CMM在實(shí)踐中反映出來(lái)的問題表現(xiàn)為過度基于過程的管理,具有典型的傳統(tǒng)瀑布方法癥狀,F(xiàn)代主流的疊代軟件項(xiàng)目開發(fā)技術(shù)、軟件產(chǎn)業(yè)最佳實(shí)踐和經(jīng)濟(jì)動(dòng)機(jī)推動(dòng)了軟件開發(fā)組織采用基于結(jié)果的方法:開發(fā)業(yè)務(wù)案例、構(gòu)想和原型方案;細(xì)化后納入基線結(jié)構(gòu)、可用發(fā)布,最后定為現(xiàn)場(chǎng)版本的發(fā)布。雖然CMMI保留了基于活動(dòng)的方法,它的確集成了軟件產(chǎn)業(yè)內(nèi)很多現(xiàn)代的最好的實(shí)踐,因此它很大程度上淡化了和瀑布思想的聯(lián)系,而和疊代思想聯(lián)系得更緊密。軟件項(xiàng)目管理技術(shù)發(fā)展到今天,有了成熟的現(xiàn)代軟件項(xiàng)目管理十大原理(沃克爾·羅伊斯):①首先注重結(jié)構(gòu)過程;②用疊代生命周期在早期防御風(fēng)險(xiǎn);③強(qiáng)調(diào)基于構(gòu)件的開發(fā);④建立變更管理環(huán)境;⑤用循環(huán)工程工具使變更更自由;⑥使用嚴(yán)格的、基于模型的設(shè)計(jì)符號(hào);⑦提供過程的客觀質(zhì)量控制的手段;⑧使用中間產(chǎn)品的基于演示的評(píng)估;⑨發(fā)布細(xì)化的、展開的計(jì)劃;⑩建立一個(gè)可升級(jí)的、可配置的過程。
根據(jù)對(duì)軟件開發(fā)項(xiàng)目一線的多數(shù)工程師和項(xiàng)目經(jīng)理的調(diào)查分析,我們知道CMM對(duì)現(xiàn)代原理幾乎沒什么影響,甚至有些現(xiàn)代原理實(shí)際上是和CMM關(guān)鍵過程域相沖突的。基于對(duì)產(chǎn)業(yè)默認(rèn)實(shí)踐的觀察和分析,CMMI和現(xiàn)代管理原理關(guān)系十分密切,激發(fā)了半數(shù)的疊代軟件管理原則。
因此,對(duì)于采用瀑布過程開發(fā)軟件項(xiàng)目的組織來(lái)講,最好采用CMM的軟件項(xiàng)目管理技術(shù),而對(duì)于采用迭代軟件開發(fā)過程開發(fā)軟件項(xiàng)目的組織來(lái)說(shuō),還是應(yīng)該采用CMMI軟件項(xiàng)目管理技術(shù)進(jìn)行軟件項(xiàng)目管理。
但是,并不是實(shí)施了CMM/CMMI后,軟件研發(fā)項(xiàng)目的質(zhì)量就能夠有所保障了。CMM/CMMI不是萬(wàn)能的,它的成功與否,與組織內(nèi)部有關(guān)人員的積極參與和創(chuàng)造性活動(dòng)密不可分,而且CMM/CMMI并未提供有關(guān)子過程實(shí)現(xiàn)域所需要的具體知識(shí)和技能。這就需要PSP的管理技術(shù)來(lái)協(xié)作了,PSP專注于為個(gè)體和小型群組軟件過程的優(yōu)化提供具體而有效的途徑。統(tǒng)計(jì)數(shù)據(jù)表明,在應(yīng)用了PSP后軟件中總的差錯(cuò)減少了,在i貝0試階段發(fā)現(xiàn)的差錯(cuò)減少了,生產(chǎn)效率提高了,軟件項(xiàng)目開發(fā)有了很大的改善。
眾所周知,現(xiàn)代軟件項(xiàng)目早已走出單個(gè)英雄單打獨(dú)斗的時(shí)代,而是需要眾多軟件工程師的密切合作。實(shí)踐證明,PSP已不能解決現(xiàn)代軟件項(xiàng)目管理中的所有問題,這時(shí),擅長(zhǎng)于項(xiàng)目任務(wù)規(guī)劃管理和項(xiàng)目人力資源規(guī)劃管理的TSP恰好可以在這方面做有益的補(bǔ)充。
綜上所述,單純實(shí)施CMM/CMMI,永遠(yuǎn)不能真正做到能力成熟度的升級(jí),達(dá)到軟件項(xiàng)目管理的最佳境界,只有將實(shí)施CM CMMI與實(shí)施PSP和TSP有機(jī)地結(jié)合起來(lái),靈活地應(yīng)用于軟件項(xiàng)目管理,才能發(fā)揮最大的效力,取得最好的效果。
4、總結(jié)
文章分析研究了幾種主流的軟件項(xiàng)目管理技術(shù),結(jié)合實(shí)踐,提出了新穎的軟件項(xiàng)目管理概念。我們相信隨著軟件工程的發(fā)展和進(jìn)一步成熟,軟件項(xiàng)目管理技術(shù)的發(fā)展會(huì)取得更大的進(jìn)步。在實(shí)際項(xiàng)目中,我們要堅(jiān)持改善軟件工程的管理,并在實(shí)踐中總結(jié)適合自身的經(jīng)驗(yàn),這樣才有利于管理技術(shù)的進(jìn)步和軟件項(xiàng)目的順利完成,創(chuàng)造出更高的品質(zhì)、更大的效益。
【軟件項(xiàng)目管理技術(shù)分析研究】相關(guān)文章:
探析軟件項(xiàng)目管理中的PERT技術(shù)應(yīng)用論文12-02
關(guān)于軟件項(xiàng)目管理的控制研究11-20
關(guān)于軟件項(xiàng)目管理及風(fēng)險(xiǎn)分析11-20
關(guān)于軟件項(xiàng)目管理中人員管理方法探究11-20
論軟件項(xiàng)目管理的現(xiàn)狀分析和對(duì)策11-20
軟件項(xiàng)目設(shè)計(jì)與開發(fā)過程管理分析03-29
淺談持續(xù)集成在軟件項(xiàng)目管理中的作用11-20
淺論一種加強(qiáng)軟件項(xiàng)目管理的實(shí)踐模式12-08
- 相關(guān)推薦