目前,軟件開發(fā)項目管理一直是一個令人困惑的難題,因為沒有一種固定模式可以讓程序員和項目經(jīng)理參考。而微軟為何能夠開發(fā)出一個又一個成功的商用軟件產(chǎn)品呢?這是業(yè)內(nèi)人士非常希望學到的寶貴知識。
本次技術(shù)大會上,微軟軟件開發(fā)項目管理課程受到了開發(fā)人員和項目經(jīng)理的追捧。微軟亞洲研究院高校關(guān)系部亞太區(qū)項目經(jīng)理欒躍和與會者分享了微軟的寶貴的經(jīng)驗。欒躍表示,開發(fā)工具和編程技術(shù)在軟件開發(fā)中的作用同軟件項目管理相比是次要的,一個軟件開發(fā)項目的成功,關(guān)鍵在于如何進行良好的項目管理,這是軟件開發(fā)之本。
軟件開發(fā)的挑戰(zhàn)
軟件開發(fā)可以說是人類歷史上最艱難的工作之一。軟件開發(fā)所面臨的獨特挑戰(zhàn)包括由技術(shù)、人員、資源、時間等帶來的風險和困難,市場的迅猛發(fā)展逼迫企業(yè)利用各種背景的開發(fā)人員,軟件復(fù)雜性的增長以及大型系統(tǒng)對領(lǐng)域知識的要求使得多人合作和團隊式開發(fā)模式成為必須,商業(yè)模式要求開發(fā)過程必須可重復(fù),很多開發(fā)公司或團隊仍舊采取小作坊式無規(guī)范的任意性管理和運作方式。
在軟件開發(fā)流程方面,到目前為止,還沒有一個放之四海而皆準的標準。世界上沒有一個模式和管理方法可以確保能夠開發(fā)出成功的軟件。欒躍表示,包括微軟在內(nèi),都處于一個不斷學習和摸索的過程中。很多軟件公司的管理處于“救火狀態(tài)”,哪里出現(xiàn)問題,就補救哪里。
缺乏完善的項目管理使得開發(fā)出的產(chǎn)品無法滿足客戶的全部需求?開發(fā)項目拖延,導(dǎo)致無法按時交貨;出現(xiàn)質(zhì)量問題,導(dǎo)致客戶不滿;產(chǎn)品完成,但項目費用嚴重超支;由于計劃安排不當造成延遲,導(dǎo)致以加班方法來補救。
開發(fā)項目成功與否并不僅僅基于技術(shù)原因。有優(yōu)秀的軟件開發(fā)人員和高超的技術(shù),但沒有良好的項目管理也是不行的。
很多軟件并沒有實現(xiàn)客戶所期望的功能,這也是一個相當嚴重的問題。產(chǎn)生這些問題的原因是多方面的,比如沒有完全了解客戶需求,采用的技術(shù)和商業(yè)指標不相符或團隊之間缺乏良好的溝通。任何一個問題都會導(dǎo)致項目失敗。在溝通層面來講,團隊成員之間需要一種工具把工作串聯(lián)起來。而團隊領(lǐng)導(dǎo),能否對項目進展進行良好的追蹤也非常重要。
對軟件開發(fā)實施管理
那么如何避免失敗,提高成功率呢?欒躍表示,培養(yǎng)和提高軟件開發(fā)管理能力,學習軟件開發(fā)項目的基本知識,在團隊中培養(yǎng)和使用從事項目管理的專業(yè)人員進行開發(fā)管理,在企業(yè)內(nèi)推廣良性的開發(fā)管理運作流程,免除運作的隨機性和任意性,建立可重復(fù)性的操作,建立開發(fā)歷史的數(shù)據(jù)檔案,逐漸為團隊建立一套嚴格的開發(fā)流程的規(guī)章制度等是提高軟件開發(fā)成功率的要素。
此外,軟件開發(fā)需要能夠盡早地發(fā)現(xiàn)錯誤,改正錯誤。錯誤發(fā)現(xiàn)得越晚,對于軟件開發(fā)造成的損失越大(參見附圖)。例如,如果在需求分析階段發(fā)生錯誤,那么最多就是把需求分析寫一遍。損失的是一個人的勞動,而如果到了測試階段發(fā)現(xiàn)了需求錯誤,再回去重新做需求分析,那么損失可能是致命的。
軟件開發(fā)工作需要三大支柱,首先需要最基本的技術(shù)和技巧,這是具體的開發(fā)工作,包括軟件架構(gòu)和編碼工作。其次是團隊的協(xié)作,現(xiàn)代軟件開發(fā)需要大量技術(shù)人員,如何很好地協(xié)作是一個巨大的挑戰(zhàn)。最后是現(xiàn)代化節(jié)省型生產(chǎn)模式的運用。通常人們?nèi)菀缀雎缘诙⒌谌?,這也是項目經(jīng)理需要引起重視的要點。
軟件開發(fā)項目的成功需要整個開發(fā)部門使用統(tǒng)一的管理工具,各個開發(fā)團隊能夠進行高效的溝通和協(xié)作,各個開發(fā)團隊按照統(tǒng)一的運作流程進行操作。這三點是絕對不可缺少的。
總之
項目經(jīng)理勝任力免費測評PMQ上線啦!快來測測你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html