方軍虎
[摘 要] 軟件項目開發(fā)的過程中,軟件項目管理的成功與否是決定一個項目是否能夠順利高效率完成的重要保證,但是我國大部分的軟件企業(yè)在進行項目管理時都存在著各種問題,對于軟件開發(fā)項目管理以及流程進行相關(guān)梳理。
[關(guān)鍵詞] 軟件項目管理;項目開發(fā);項目計劃
[中圖分類號] TP311 [文獻標識碼] A [文章編號] 1002-8129(2017)02-0123-03
一、管理目標
1.確保參與項目設(shè)計的全部人員都能夠非常全面和系統(tǒng)的就項目內(nèi)容以及項目關(guān)系人的需求進行了解。項目關(guān)系人包括:所有參與項目的公司內(nèi)部人員以及公司外部成員(客戶、合作公司等)。
2.保證項目能夠按時、保質(zhì)完成,并且就項目的成本進行合理控制。即必須保證項目管理的時間、成本和質(zhì)量這3個基本元素的平衡。
3.目標:確保項目的功能能夠達到客戶的要求,確保項目設(shè)計的系統(tǒng)性和完善性以滿足客戶需求的變化;確保項目的開發(fā)速度;確保項目不同開發(fā)流程的成功并即時交付。
二、常見問題
(一)開發(fā)時間的估算
在項目規(guī)劃階段,必須依據(jù)公司的實際情況如技術(shù)實力、資金以及團隊等等,就整體項目完成所需要耗費的時間進行合理的評估,并且具體到每一個模塊開發(fā)所需要的時間。
模塊分配和開發(fā)時間估算的步驟:
1.要求項目負責人在軟件各模塊得到合理的劃分之后,就不同模塊所需要的使用的開發(fā)時間進行評估和明確。
2.項目負責人必須就不同模塊開發(fā)的時間和項目參與人員進行溝通,并且合理的安排不同模塊的參與設(shè)計人員,并且允許技術(shù)人員依據(jù)自身的情況自行選擇相應(yīng)的模塊設(shè)計任務(wù),以提升其工作積極性。
3.模塊以及相應(yīng)的設(shè)計人員區(qū)分清楚之后,設(shè)計人員必須就模塊開發(fā)所需耗費的時間繼續(xù)評估。同時為了保證時間評估的合理性和準確性,模塊設(shè)計人員必須就其負責模塊的具體開發(fā)細節(jié)進行討論和研究。
4.項目負責人必須就各模塊設(shè)計人員上報的開發(fā)時間進行最后的評估、審核;就開發(fā)時間和項目評估時間及逆行比較。那些差異較大的,與人員探討其中的緣由。就需要耗費較長時間的模塊以及其他相關(guān)任務(wù)進行合理的分解,使其成為不同的獨立子任務(wù),并且保證這些子任務(wù)可以在一個工作日到三個工作日的時間內(nèi)完成,以保證整體項目的開發(fā)不會受到各種不確定性因素的影響。
(二)代碼評審
為了有效的保證項目能夠按時、保質(zhì)的完成,則必須保證代碼評審環(huán)節(jié)的有效執(zhí)行,否則就有可能導(dǎo)致軟件在開發(fā)完成之后出現(xiàn)很多bug,進而影響整個項目的交付時間。由此在整個項目開啟之前,就必須確立一套完善的代碼編寫以及達標審核規(guī)范。具體的實現(xiàn)方式用兩個文檔就設(shè)計工作人員具體的代表編寫進行規(guī)范,以約束代碼設(shè)計人員的編寫規(guī)范;其次負責代碼審核的工作人員必須依據(jù)具體的規(guī)范就所有的編碼進行審核,并且保證所有代碼的規(guī)范性。
(三)需求變更管理
需求變更是軟件項目設(shè)計過程中經(jīng)常會出現(xiàn)的不確定性因素之一,由此保證所有需求變更項目內(nèi)容的完成,對于整體項目的成功也起到了決定性的作用。
需求變更管理的目標:
1.項目負責人以及相關(guān)人員必須及時的了解項目的需求并更內(nèi)容。
2.變更處于有效的管理中。
3.盡量降低變更帶來的風險。
(四)風險管理
風險是軟件項目在設(shè)計的過程中不可避免的不確定性因素之一,具有絕對的客觀性。由此,不同風險的發(fā)生都會給軟件開發(fā)項目帶來一定的影響,并且影響軟件項目的交付時間、開發(fā)成本以及開發(fā)質(zhì)量等等。通常情況下軟件開發(fā)過程中可能遇到的風險以及具體的應(yīng)對方式如下所述:
1.目標以及需求不明確
為了保證項目開發(fā)的效率,項目開發(fā)組必須在項目正式開始設(shè)計之前,采用合理、有效的手段和方法與相關(guān)項目的業(yè)務(wù)組成員以及負責人就項目的需求進行全面的樹立和確立,并且依據(jù)項目開發(fā)組的實際情況,就所有的項目需求進行優(yōu)先級排列,并取得業(yè)務(wù)部門的書面確認。不僅如此還必須在項目開發(fā)的過程中及時的和客戶進行溝通,以保證客戶的潛在需求能夠得到充分挖掘,以保證軟件開發(fā)完成之后能夠使客戶滿意。
2.項目目標擴大以及需求變更
在多數(shù)情況下,項目需求變更可能都是由于客戶自身的想法改變或者提出更多需求的情況下發(fā)生的。顯然,對于項目組而言并不可能完全滿足客戶于任何時候提出的要求,否則必然會增加項目的開發(fā)成本。由此,項目負責人以及相關(guān)業(yè)務(wù)負責人,則必須明確的向客戶表明我方的態(tài)度。當然,在具體提出拒絕之前,項目開發(fā)組也必須就為什么拒絕提出合理的解釋,如果是可以在不增加成本和影響項目開發(fā)時間的情況下,可以盡可能的滿足客戶提出的新需求,否則,則必須及時向客戶表明我們的態(tài)度,堅決拒絕。
3.代碼質(zhì)量風險
質(zhì)量風險就是項目在開發(fā)過程中有可能出現(xiàn)的代碼錯誤所帶來的風險。由此在項目規(guī)劃的過程中,就必須充分考慮到這一風險的存在,并且保留一定的時間就這一部分風險進行規(guī)避。尤其是對于時間要求相對緊張的項目而言,可能存在的代碼風險可能會非常大。由此,為了規(guī)避這一風險,就必然需要讓所有的設(shè)計人員都能夠熟練的掌握項目的開發(fā)框架,并且能夠依據(jù)系統(tǒng)設(shè)計文檔進行設(shè)計。
4.人員技能和資源的不足
項目開發(fā)人員能力欠缺導(dǎo)致出現(xiàn)的項目質(zhì)量問題也是經(jīng)常遇到的風險之一。比如一個技能較熟練的代碼開發(fā)人員完成一個具體模塊的開發(fā)可能僅僅需要3個工作日,但一個新手可能就需要7-10天。因此,為了規(guī)避這一類風險,項目開發(fā)負責人在項目正式開始之前,就必須正對項目組所有工作人員的技能進行分析,并且就所有的項目模塊的難以程度進行分析,并以此為依據(jù)合理的進行開發(fā)人員的工作安排。同時,針對攻克難度加大的模塊,還必須設(shè)立具體的解決方案,保證在規(guī)定的時間內(nèi)就這些難題進行解決。同時需要特別強調(diào)的是,該類風險必須在項目設(shè)計正式開始之前就進行分析、識別并且做出具體的應(yīng)對方案,如此才能夠保證后期開發(fā)工作的順利。
5.缺乏良好的團隊協(xié)作
軟件項目的開發(fā)必須也團隊開發(fā)成員的精誠合作為前提,否則就很難保證項目各個模塊的有效集成,最后給整個項目的開發(fā)完成帶來極大的壓力。由此,在項目進行的過程中,就必須保證項目組成員之間建立起良好的溝通和協(xié)作意識,建立起團隊利益高于個人利益的意識,如此才能夠讓整個團隊具有絕對的向心力以及協(xié)作精神,并最終保證項目的保質(zhì)和按時交付。
6.項目會議
項目會議是保證軟件開發(fā)工作能夠有效進行的前提性因素,保證項目會議的成功即為項目能夠獲成功的保障,否則就可能給項目的開發(fā)帶來各種風險。
由此,為了規(guī)避此類風險,在會議進行的過程中,就必須保證會議氛圍以及會議的效率。由此,對于項目負責人而言,就必須很好的控制整個會議的進程,并且注重引導(dǎo)以幫助所有的參會人員都能夠明白整個項目目標以及各自的工作責任等等。比如多提一些開放式的問題。
會議記錄很重要,把一些結(jié)論和有價值的內(nèi)容記錄下來,這些是本次會議的重要成果之一。會議記錄可以完整的就整個會議的內(nèi)容進行記錄,并且能夠讓項目負責人以及項目組所有的開發(fā)人員在會議結(jié)束后查閱,以進一步保證會議內(nèi)容的傳到和理解。
會議要有結(jié)論。我們常在會議上聽到有人說:“大家討論了這么半天,結(jié)論呢?”沒有結(jié)論的會議是沒有意義的。
會議后的執(zhí)行情況的反饋很重要。及時有效的反饋一方面可以幫助項目負責人就整個會議的效果進行評估;另一方面可以提升項目開發(fā)人員的參與積極性,以進一步保證會議的作用和效率。
[參考文獻]
[1]軟件工程監(jiān)理的實施策略.信息技術(shù)與信息化,2004,(5).
[2]全文期刊論文.統(tǒng)一軟件過程與地理信息系統(tǒng)的應(yīng)用開發(fā).遙感技術(shù)與應(yīng)用,2003,18(6)
[責任編輯:曾 菡]