吳宗東
[摘要]鑒于在軟件項(xiàng)目開(kāi)發(fā)和項(xiàng)目管理中存在復(fù)雜性、不確定性以及不可預(yù)見(jiàn)性,在研究了人一系列關(guān)于軟件項(xiàng)目管理流程方法以及軟件項(xiàng)目設(shè)計(jì)的運(yùn)作過(guò)程的答題程序之后,結(jié)合對(duì)各階段流程的著手條件、關(guān)鍵工作過(guò)程以及最后結(jié)果,在本文章對(duì)在軟件項(xiàng)目管理的流程分析和設(shè)計(jì)中存在的一系列問(wèn)題做了較為詳細(xì)的闡述、分析并提出建議。經(jīng)過(guò)分析軟件項(xiàng)目開(kāi)發(fā)的特點(diǎn),針對(duì)軟件開(kāi)發(fā)項(xiàng)目的高失敗率的特性,通過(guò)對(duì)軟件項(xiàng)目管理方法的研究,提出了軟件項(xiàng)目開(kāi)發(fā)過(guò)程的一種管理流程和相應(yīng)的子流程,實(shí)現(xiàn)了對(duì)軟件項(xiàng)目控制和管理。
[關(guān)鍵詞]軟件項(xiàng)目;設(shè)計(jì)管理;流程
[中圖分類號(hào)]TP31 [文獻(xiàn)標(biāo)識(shí)碼]A [文章編號(hào)]1672-5158(2013)06-0076-01
1 何為流程及在軟件項(xiàng)目管理中的作用
1.1 軟件開(kāi)發(fā)的目的
在進(jìn)行軟件項(xiàng)目開(kāi)發(fā)活動(dòng)中,要實(shí)現(xiàn)很多目標(biāo),比如關(guān)于項(xiàng)目的范圍、成本、時(shí)間以及質(zhì)量等,項(xiàng)目協(xié)調(diào)也是要完成的目標(biāo)。項(xiàng)目協(xié)調(diào)可以滿足項(xiàng)目參與者和利益相關(guān)者的要求,伴隨軟件規(guī)模和它所涉及領(lǐng)域的擴(kuò)展,軟件項(xiàng)目管理變得越來(lái)越復(fù)雜,大大的增加了管理難度,造成這結(jié)果的主要因素是不能管理其過(guò)程如果管理項(xiàng)目在無(wú)紀(jì)律混亂的情況下,那么項(xiàng)目組織就很難總結(jié)出好的管理方法和工具,就更不用說(shuō)從中獲益了。管理嚴(yán)謹(jǐn)?shù)暮锰幉粌H能夠就檢查和改進(jìn)在階段內(nèi)出現(xiàn)的偏差,還可以及時(shí)的終止項(xiàng)目。甚至還可以避免人才的來(lái)去帶來(lái)的負(fù)面影響。如果想要有效的對(duì)過(guò)程進(jìn)行控制,就不得不對(duì)項(xiàng)目管理流程更加明確。
1.2 軟件項(xiàng)目的構(gòu)成
一系列活動(dòng)有機(jī)構(gòu)成流程。而個(gè)人與團(tuán)體構(gòu)成基本活動(dòng),基本活動(dòng)的構(gòu)成不需要來(lái)自其他活動(dòng)的轉(zhuǎn)換。流程的每個(gè)活動(dòng)間都有著自己的獨(dú)有的流向,在流程過(guò)程中包含著明顯的開(kāi)始與結(jié)束,所以這是一個(gè)非靜止的概念。從結(jié)構(gòu)方面可以看出,流程由四個(gè)基本因素構(gòu)成:活動(dòng)及活動(dòng)的邏輯關(guān)系、承擔(dān)著、實(shí)現(xiàn)辦法。流程管理所包含的不但有管理技術(shù),還有現(xiàn)代管理的理想,以前的職能管理憑借的是控制、塔式組織。但隨著時(shí)間的推移其已經(jīng)不能適應(yīng)市場(chǎng)競(jìng)爭(zhēng)和當(dāng)今企業(yè)的發(fā)展需要,以分工理論為主的管理理論已經(jīng)使用了幾百年,目前又返回到系統(tǒng)和整合上面。
1.3 軟件項(xiàng)目生命周期的一系列的開(kāi)發(fā)過(guò)程是各種各樣的流程活動(dòng)
軟件項(xiàng)目是由各種各樣活動(dòng)流程活動(dòng)組成的,具體包括如下,軟件項(xiàng)目的計(jì)劃編制、系統(tǒng)分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、程序編碼、測(cè)試與維護(hù)等活動(dòng)過(guò)程都屬于流程活動(dòng):制定軟件項(xiàng)目管理流程,當(dāng)我們?cè)谥贫软?xiàng)目管理流程過(guò)程中,要著重考慮一下幾點(diǎn):(1)流程的制定可以將項(xiàng)目逐步引至成功,(2)流程的制定可以適應(yīng)軟件的開(kāi)發(fā),(3)流程的制定對(duì)項(xiàng)目開(kāi)發(fā)可以起到指導(dǎo)作用,(4)流程制定是使用流程圖表示的,可以讓每個(gè)參與者都能夠清楚的明白管理過(guò)程與開(kāi)發(fā)過(guò)程之間的關(guān)系,(5)流程過(guò)程中的參評(píng)要有明確的定義、標(biāo)準(zhǔn)和方法。
2 軟件項(xiàng)目管理大體過(guò)程設(shè)計(jì)
2.1 軟件項(xiàng)目管理的構(gòu)成
軟件項(xiàng)目管理過(guò)程大體可以分為以下幾部分:項(xiàng)目構(gòu)思、項(xiàng)目立項(xiàng)、簽訂合同和執(zhí)行合同??梢允褂肞1、P2、P3、P4、P5代替。同時(shí)也可以劃分為五個(gè)里程碑,分別是:完成立項(xiàng)、簽訂合同、定義功用、產(chǎn)品開(kāi)發(fā)、投入市場(chǎng),可以用TM1、Tm2、Tm3、TM4、TM5代替。
2.2 軟件項(xiàng)目管理的流程分析
項(xiàng)目管理的大體流程分析,項(xiàng)目搜尋是項(xiàng)目開(kāi)始的前提,其階段主要任務(wù)包括收集市場(chǎng)信息、客戶需求、以及潛在的需求。項(xiàng)目立項(xiàng)階段就是可行性的研究階段,就是討論成本與效益的可行性。項(xiàng)目售前階段是項(xiàng)目立項(xiàng)與簽訂項(xiàng)目合同的這段時(shí)間,主要任務(wù)包括以下幾個(gè)方面:做好與客戶介紹交了的計(jì)劃、對(duì)產(chǎn)品的銷售對(duì)象要有一個(gè)比較全面的了解以及客戶對(duì)項(xiàng)目感興趣的原因和對(duì)產(chǎn)品的要求。合同生成階段要做的是對(duì)項(xiàng)目方案的比較與相關(guān)的政策法規(guī)的認(rèn)識(shí),以及對(duì)合同的評(píng)估以及簽訂合同。合同執(zhí)行階段是項(xiàng)目管理流程的重要環(huán)節(jié),主要包括軟件的開(kāi)發(fā)、測(cè)試、驗(yàn)收、系統(tǒng)的維護(hù)等過(guò)程。
3 軟件項(xiàng)目失敗的原因和軟件項(xiàng)目管理方法的探究
3.1 軟件項(xiàng)目失敗的原因
我們可以從目前國(guó)內(nèi)外的軟件行業(yè)企業(yè)可以看出,“軟件危機(jī)”的影響仍持續(xù)著軟件行業(yè)。軟件項(xiàng)目的實(shí)施情況也總是很難令人滿意。經(jīng)過(guò)研究發(fā)現(xiàn),軟件項(xiàng)目之所以會(huì)失敗的原因主要有以下兩方面:一是應(yīng)用項(xiàng)目發(fā)展難以控制;二是項(xiàng)目管理者對(duì)項(xiàng)目管理工作的認(rèn)識(shí)掌握還不成熟。實(shí)踐證明,缺乏有效的項(xiàng)目管理是致使軟件項(xiàng)目失控的直接原因。
3.2 制定項(xiàng)目的任務(wù)
軟件項(xiàng)目計(jì)劃的主要作用是用來(lái)協(xié)調(diào)其他計(jì)劃的,協(xié)調(diào)的目的是為了指導(dǎo)控制和執(zhí)行可操作文件。它這是對(duì)客戶需要的理解表現(xiàn),是開(kāi)展項(xiàng)目活動(dòng)的開(kāi)始,也是開(kāi)展其他工作的依據(jù),項(xiàng)目計(jì)劃由全局計(jì)劃和下屬計(jì)劃構(gòu)成。在下屬計(jì)劃制定時(shí),項(xiàng)目經(jīng)理必須遵循的原則是:誰(shuí)負(fù)責(zé)那一部分工作,那部分的計(jì)劃就有誰(shuí)來(lái)制定,項(xiàng)目經(jīng)理只需審批就行。
3.3 開(kāi)發(fā)過(guò)程的制定
軟件開(kāi)發(fā)之所以存在較大風(fēng)險(xiǎn),最主要原因是軟件過(guò)程能力低,這是因?yàn)楣芾碥浖^(guò)程十分困難,為此就非常有必要在軟件過(guò)程的控制和管理方面加強(qiáng)。不同的軟件項(xiàng)目有著不同的過(guò)程,雖然項(xiàng)目計(jì)劃與執(zhí)行是互相交叉的,其主要部分是相似的,但是不同的項(xiàng)目的每個(gè)過(guò)程它所包含的具體活動(dòng)是差之毫厘謬以千里,而且由于不同的制定者所使用的開(kāi)發(fā)技術(shù)和技術(shù)路線的不同,所導(dǎo)致的側(cè)重點(diǎn)就不可能相同了。項(xiàng)目經(jīng)理在計(jì)劃制定前就必須根據(jù)開(kāi)發(fā)軟件的實(shí)際情況,建立一個(gè)穩(wěn)定性好、可控的軟件開(kāi)發(fā)模型。
3.4 加強(qiáng)過(guò)程控制
軟件項(xiàng)目的開(kāi)發(fā)和實(shí)施總是處于動(dòng)態(tài)之中,這種動(dòng)態(tài)是持久的、永恒無(wú)止境的,世上不存在靜止的軟件項(xiàng)目。需求、技術(shù)、系統(tǒng)結(jié)構(gòu)、代碼都會(huì)發(fā)生變化,就算是連環(huán)計(jì)都會(huì)發(fā)生變化,項(xiàng)目經(jīng)理在做好了計(jì)劃和準(zhǔn)備后,最重要的任務(wù)就轉(zhuǎn)換到過(guò)程的控制上來(lái)了。過(guò)程管理和變更控制是過(guò)程控制的主要部分。配置管理是一個(gè)軟件項(xiàng)目能否順利執(zhí)行的前提。在軟件開(kāi)發(fā)過(guò)程中比如會(huì)出現(xiàn)很多的附加產(chǎn)品,比如代碼、一系列文檔、數(shù)據(jù)等等,這些產(chǎn)品是有用的。而且隨著軟件項(xiàng)目的改變這些產(chǎn)品都會(huì)發(fā)生變法生產(chǎn)出不同的版本,試想一下,如果配置管理失效,項(xiàng)目工作人員勢(shì)必會(huì)深陷配置項(xiàng)的“泥潭”。很明顯我們應(yīng)該加強(qiáng)項(xiàng)目過(guò)程的任何部分細(xì)節(jié)。
4 結(jié)束語(yǔ)
在本文設(shè)計(jì)的軟件項(xiàng)目管理總體流程及相關(guān)技術(shù),目前已經(jīng)十分成熟了,在軟件項(xiàng)目的研發(fā)和管理中已經(jīng)大量的采用了。流程管理在軟件項(xiàng)目管理中的使用,降低了軟件項(xiàng)目管理的復(fù)雜性,增加了軟件項(xiàng)目的成功率。事實(shí)也證明,根據(jù)企業(yè)和項(xiàng)目的實(shí)際情況,制定軟件項(xiàng)目的實(shí)施步驟,確定產(chǎn)品的用處,指明各階段的開(kāi)始條件和終止條件,進(jìn)行有效的流程控制與管理,這樣將會(huì)極大的提高了軟件開(kāi)發(fā)的效率和降低項(xiàng)目的失敗率。
參考文獻(xiàn)
[1]羅鐵清,王如龍,軟件項(xiàng)目管理的研究及在項(xiàng)目開(kāi)發(fā)中的應(yīng)用,項(xiàng)目管理技術(shù)2005,3:66-70
[2]劉寬宏,殷人尾,基于GMMI的過(guò)程和產(chǎn)品質(zhì)量保證模型,計(jì)算機(jī)工程,2004,30(15):75-77
[5](美)凱西,施瓦爾貝,IT項(xiàng)目管理,王金玉,時(shí)郴譯,北京:機(jī)械工業(yè)出版社,2002
[4]張益林,王如龍,基于WEB的工作流技術(shù)在工程項(xiàng)目管理系統(tǒng)中的實(shí)現(xiàn),科學(xué)技術(shù)與工程,2005