摘 要 隨著計算機(jī)技術(shù)的發(fā)展,軟件開發(fā)技術(shù)也日益成熟,軟件開發(fā)項(xiàng)目及從業(yè)人員也日益增多。由于沒有一個標(biāo)準(zhǔn)劃分,管理上有很多問題不容易解決。文章對影響軟件開發(fā)進(jìn)度的主要因素進(jìn)行分析,闡明了進(jìn)度管理的重要性,并對具體的項(xiàng)目開發(fā)進(jìn)度管理方法進(jìn)行了探討。
關(guān)鍵詞 軟件開發(fā);進(jìn)度;管理;80-20原則
中圖分類號:F426 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-7597(2014)07-0166-02
軟件項(xiàng)目管理是為了使軟件項(xiàng)目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對成本、人員、進(jìn)度、質(zhì)量、風(fēng)險等進(jìn)行分析和管理的活動。實(shí)際上,軟件項(xiàng)目管理的意義不僅僅如此,進(jìn)行軟件項(xiàng)目管理有利于將開發(fā)人員的個人開發(fā)能力轉(zhuǎn)化成企業(yè)的開發(fā)能力,企業(yè)的軟件開發(fā)能力越高,表明這個企業(yè)的軟件生產(chǎn)越趨向于成熟,企業(yè)越能夠穩(wěn)定發(fā)展。因此,怎樣對軟件項(xiàng)目進(jìn)行有效的管理是急需研究的課題,國內(nèi)外專家學(xué)者也展開了相關(guān)的研究。
張家浩[2]以現(xiàn)代軟件工程為核心,系統(tǒng)分析了項(xiàng)目管理領(lǐng)域中軟件項(xiàng)目存在的問題,提出在理想和現(xiàn)實(shí)之間選擇平衡點(diǎn)的建議和方法。林銳[2]編寫的《IT企業(yè)項(xiàng)目管理:問題、方法和工具》一書為IT企業(yè)提供了專業(yè)性很強(qiáng)、行之有效的項(xiàng)目管理方法和相應(yīng)的工具,解決了大多數(shù)IT企業(yè)的軟硬件開發(fā)項(xiàng)目管理混亂、質(zhì)量低下、進(jìn)度延誤、費(fèi)用超支等問題。哈羅德·科茲納[4]在《項(xiàng)目管理:計劃、進(jìn)度和控制的系統(tǒng)方法》一書中討論了時間管理、沖突管理等問題,分析了影響項(xiàng)目成功的因素。石慧[4]運(yùn)用動態(tài)規(guī)劃的思想和網(wǎng)絡(luò)計劃的方法,利用馬爾可夫鏈模型進(jìn)行軟件項(xiàng)目進(jìn)度預(yù)測,對軟件開發(fā)項(xiàng)目中的計劃和控制應(yīng)用進(jìn)行研究,構(gòu)建了一個并行的IT項(xiàng)目進(jìn)度馬爾可夫鏈預(yù)測模型。
由于缺乏相關(guān)的法規(guī)政策,軟件項(xiàng)目開發(fā)的進(jìn)度很大程度上取決于程序員自身的專業(yè)技能和職業(yè)道德水平。由于沒有一個標(biāo)準(zhǔn)劃分,管理上有很多問題不容易解決。本文對影響軟件開發(fā)進(jìn)度的主要因素進(jìn)行分析,闡明了進(jìn)度管理的重要性,并對具體的項(xiàng)目開發(fā)進(jìn)度管理方法進(jìn)行了探討。
1 影響軟件開發(fā)項(xiàng)目進(jìn)度的主要因素
軟件項(xiàng)目在開發(fā)過程中,有很多影響其進(jìn)度的因素,內(nèi)因、外因、主觀、客觀因素均有,情況比較復(fù)雜。為順利管理軟件開發(fā)項(xiàng)目進(jìn)度,首先要對其中主要影響進(jìn)度的因素有所了解。
1.1 80-20原則,未按原計劃執(zhí)行進(jìn)度
80-20原則用在經(jīng)濟(jì)學(xué)中是指百分之八十的價值是來自20%的因子,其余的20%的價值則來自80%的因子。在計算機(jī)軟件開發(fā)領(lǐng)域,我們可以這么理解:80%的項(xiàng)目工作可以在20%的時間內(nèi)完成,而剩余的20%的項(xiàng)目工作需要80%的時間。
一般來講,這剩余的兩成工作屬于比較難的技術(shù)關(guān)鍵部分,通常出現(xiàn)在后期。由于軟件開發(fā)過程的不確定性,在任何技術(shù)關(guān)鍵點(diǎn)上都可能遇到難題,這與開發(fā)人員本身的分析、設(shè)計、編程風(fēng)格有關(guān),難以預(yù)測。在實(shí)際過程中,完全無法預(yù)測在什么時候會遇到(甚至可能在最后一步)能導(dǎo)致全盤重建的問題,因此原計劃進(jìn)度一般會調(diào)整。
1.2 預(yù)算、質(zhì)量要求等的變更及適應(yīng)性調(diào)整不及時
除了對項(xiàng)目本身的工作量估算不合理之外,設(shè)計人員的理解也可能造成問題。如開發(fā)人員理解的情況與實(shí)際情況有偏差,在沒有充分溝通并確認(rèn)時開展項(xiàng)目,過程中又會變更,在驗(yàn)收階段可能才發(fā)現(xiàn)“審題錯誤”,造成資源浪費(fèi),同時與之相關(guān)橫向、縱向項(xiàng)目的進(jìn)度也會受影響,易產(chǎn)生“軟件危機(jī)”。此外,其他問題如設(shè)備、人力不符合要求或調(diào)整,都會影響實(shí)際進(jìn)度。
1.3 前期可行性分析不充分
由于項(xiàng)目參與人員的經(jīng)驗(yàn)或素質(zhì)原因,在項(xiàng)目開始前的準(zhǔn)備不足,對項(xiàng)目狀態(tài)信息收集的不足,沒能好好把握項(xiàng)目的內(nèi)容,容易造成對項(xiàng)目的了解不符合實(shí)際情況,加上高估自身工作能力,這就會對進(jìn)度造成影響。如果沒有充分的理解和準(zhǔn)備,項(xiàng)目整體就會受到很大的影響,對項(xiàng)目本身的低估其實(shí)是對自身的一種高估,這樣會使得預(yù)期的進(jìn)度在實(shí)際進(jìn)展過程中不僅很難實(shí)現(xiàn),而且容易對工作人員的士氣形成打擊。
1.4 其他因素
假設(shè)、約束、風(fēng)險等條件考慮“不周”造成項(xiàng)目進(jìn)度計劃中未考慮一些不可預(yù)見的事件發(fā)生。例如軟件開發(fā)項(xiàng)目還會因?yàn)轫?xiàng)目資源特別是人力資源缺失(如人員生病、離職、開發(fā)人員臨時有其他救急任務(wù))等原因,對項(xiàng)目進(jìn)度控制造成影響致命影響。即項(xiàng)目及時完成是基于環(huán)境不變、任務(wù)不變、資源不變動等假設(shè)。軟件開發(fā)主要是靠程序員來進(jìn)行,軟件體現(xiàn)出程序員的不同風(fēng)格,因此程序員本身的主觀性也會造成影響。在進(jìn)度安排的時候應(yīng)當(dāng)適當(dāng)配置應(yīng)急預(yù)案,預(yù)留空余。
2 軟件開發(fā)項(xiàng)目進(jìn)度管理的目的
加強(qiáng)軟件開發(fā)項(xiàng)目進(jìn)度管理是軟件開發(fā)行業(yè)發(fā)展的必要手段,也是必經(jīng)之路。項(xiàng)目進(jìn)度控制和監(jiān)督的目的是:增強(qiáng)項(xiàng)目進(jìn)度的透明度,及時發(fā)現(xiàn)項(xiàng)目中存在的問題并改正,對項(xiàng)目進(jìn)展加以督促等,保證項(xiàng)目按時完成。
合理的管理手段可以加強(qiáng)項(xiàng)目的監(jiān)督控制,對項(xiàng)目進(jìn)度完成情況有一個大致的了解和評估,一旦出現(xiàn)問題可以及時溝通交流;遇到有落后進(jìn)度情況及時督促,對有理解偏差的情況及時發(fā)現(xiàn)、及時糾正等。
軟件開發(fā)時實(shí)施進(jìn)度控制是項(xiàng)目管理的關(guān)鍵。一般一個部門同時會接多個項(xiàng)目,并行處理過程易造成混亂。通常,一個項(xiàng)目會由多部門的課題組共同負(fù)責(zé),分項(xiàng)目之間橫向并列或縱向承啟,分部越多就越容易受影響。因此各分項(xiàng)目的準(zhǔn)時能確保項(xiàng)目實(shí)施進(jìn)度,對項(xiàng)目進(jìn)度的合理管理可以起到協(xié)調(diào)作用。進(jìn)度控制是項(xiàng)目管理過程中一項(xiàng)最重要的監(jiān)控內(nèi)容,負(fù)責(zé)對項(xiàng)目周期的整體把握與控制。通過軟件開發(fā)項(xiàng)目進(jìn)度管理方法,對各個分項(xiàng)目的進(jìn)度進(jìn)行控制,保證每個分項(xiàng)目各自按照項(xiàng)目計劃書中的預(yù)期進(jìn)度安排完成各自的內(nèi)容,對于其中出現(xiàn)的問題及時予以糾正,從而保證項(xiàng)目整體的順利完成。
3 軟件開發(fā)項(xiàng)目進(jìn)度管理方法
3.1 對項(xiàng)目本身充分了解endprint
在制定項(xiàng)目計劃書之前,首先應(yīng)當(dāng)對充分了解項(xiàng)目本身。項(xiàng)目進(jìn)度控制的前提是有效地計劃和充分掌握第一手信息,通過實(shí)際值與計劃值進(jìn)行比較,檢查、分析、評價項(xiàng)目進(jìn)度。對項(xiàng)目的充分了解是制定一個可行性分析報告的必要條件。除了了解項(xiàng)目相關(guān)技術(shù)內(nèi)容、發(fā)展情況外,還應(yīng)包括主要設(shè)備(工具軟件)、項(xiàng)目參與者的情況,以合理分工、科學(xué)管理。
3.2 項(xiàng)目計劃書與定期的進(jìn)度報告
為了按期完成軟件交付任務(wù),目前軟件開發(fā)單位陸續(xù)采取了很多控制進(jìn)度的管理手段,其中最為廣泛實(shí)用的就是項(xiàng)目計劃書和定期的進(jìn)度報告的提交。項(xiàng)目計劃書和進(jìn)度報告都是參考傳統(tǒng)的工程項(xiàng)目管理方案,同時結(jié)合軟件開發(fā)本身的特點(diǎn)進(jìn)行的改進(jìn)。作為項(xiàng)目進(jìn)度控制的基準(zhǔn),項(xiàng)目計劃書是項(xiàng)目的階段成果完成情況的一個預(yù)期與管理依據(jù)。根據(jù)計劃書中的時間安排,在項(xiàng)目的每個階段點(diǎn),項(xiàng)目負(fù)責(zé)人需要向相關(guān)管理人員(部門)書面提交階段工作匯報與計劃。在進(jìn)度報告中,要有完成情況、存在問題、下一步安排等,實(shí)際上就是項(xiàng)目執(zhí)行人員的對總結(jié)、分析、開發(fā)反思。
3.3 進(jìn)度協(xié)調(diào)會
在軟件開發(fā)項(xiàng)目中,一個項(xiàng)目通常由不同的項(xiàng)目團(tuán)隊(duì)合作完成,企業(yè)有專門的合同管理部門負(fù)責(zé)項(xiàng)目的分、轉(zhuǎn)包、合同期與進(jìn)度計劃的協(xié)調(diào)。項(xiàng)目經(jīng)理應(yīng)該及時掌握這些情況,按計劃進(jìn)行計劃進(jìn)度與實(shí)際進(jìn)度的動態(tài)比較,定期向客戶提供可靠反饋。這通常是通過進(jìn)度協(xié)調(diào)會來完成的,參與項(xiàng)目的每個團(tuán)隊(duì)負(fù)責(zé)人通過協(xié)調(diào)會了解相關(guān)方的進(jìn)度、探討問題,根據(jù)對方完成情況動態(tài)調(diào)整自己的進(jìn)度。
3.4 階段性審查與應(yīng)急措施
軟件開發(fā)項(xiàng)目進(jìn)度管理過程需要從項(xiàng)目從準(zhǔn)備到開始到進(jìn)行到完成的各個不同階段都采取不同的方法進(jìn)行控制管理,全面把握項(xiàng)目進(jìn)程。在準(zhǔn)備階段需要提供項(xiàng)目信息,同時確定項(xiàng)目研究進(jìn)度;編制階段計劃和項(xiàng)目總進(jìn)度計劃;控制該計劃的執(zhí)行;而需求分析和設(shè)計階段控制的任務(wù)是編制與用戶的溝通計劃、需求分析工作進(jìn)度計劃、設(shè)計工作進(jìn)度計劃,控制相關(guān)計劃的執(zhí)行等。最后,實(shí)施階段進(jìn)要求編制實(shí)施總進(jìn)度計劃并控制其執(zhí)行;編制實(shí)施計劃并控制其執(zhí)行等。
在項(xiàng)目設(shè)計書中應(yīng)當(dāng)有關(guān)于應(yīng)急預(yù)案的內(nèi)容,這是我國現(xiàn)在工程管理、軟件開發(fā)管理都比較容易忽略的一個內(nèi)容,其本質(zhì)是對項(xiàng)目過程中可能出現(xiàn)的干擾和影響的一個預(yù)測,對項(xiàng)目整體的合理把握。針對可能的問題,提出一定的解決方案,而在實(shí)際過程中,一旦出現(xiàn)問題,具體應(yīng)當(dāng)結(jié)合實(shí)際情況確定,避免產(chǎn)生相反的效果。
4 結(jié)束語
軟件項(xiàng)目的開發(fā)與傳統(tǒng)的工程項(xiàng)目具有很大的區(qū)別,軟件本身具有無具體形態(tài)、缺乏標(biāo)準(zhǔn)等特點(diǎn),開發(fā)過程不確定性大,主觀因素影響對軟件質(zhì)量影響較大,因此進(jìn)行項(xiàng)目進(jìn)度管理探討十分必要。本文通過總結(jié)進(jìn)度管理上可能存在的問題,提出了可以采取的管理手段,希望能對實(shí)際工作有參考價值。
參考文獻(xiàn)
[1]張家浩.軟件項(xiàng)目管理—華鼎項(xiàng)目管理書庫[M].北京:機(jī)械工業(yè)出版社,2009
[2]林銳,唐勇,黃曙江.IT企業(yè)項(xiàng)目管理:問題、方法和工具[M].北京:電子工業(yè)出版社,2005.
[3]Harold Kerzner.項(xiàng)目管理—計劃、進(jìn)度和控制的系統(tǒng)方法[M].楊愛華等譯.第7版,北京:電子工業(yè)出版社,2012.
[4]石慧.軟件開發(fā)項(xiàng)目的進(jìn)度計劃與控制研究[D].湖北:武漢理工大學(xué),2009.
作者簡介
劉海濤(1971-),男,講師,研究方向:軟件工程,高職教育。endprint