項目管理師論文舉例:論項目質量管理
【摘要】
2009年3月,我作為項目經理參加某某公司3G手機應用軟件開發平臺的研制開發工作。我的主要工作職責是項目管理。該項目的客戶是內部客戶,主要目的是為公司手機產品的開發提供統一的軟件開發平臺,以便最大程度的在各個項目之間復用工作成果,從而能夠靈活、快速、高質量的完成手機應用軟件的定制工作。
項目的成功很大程度上歸功于對公司級質量體系的遵守和靈活應用以及對質量管理的重視。作者通過以此項目為背景,論述了如何在公司質量管理體系大環境下,進行項目的質量規劃、質量保證和質量控制等項目質量管理工作。最后作者總結了如何通過建立強有力的領導機制,遵循和靈活運用組織級的質量管理體系來提升項目的質量績效,另外還總結了質量審計在質量管理中的重要作用,另外作者還就項目執行中的教訓進行了總結和展望。
【正文】
2009年3月,我作為項目經理參加某某公司3G手機應用軟件開發平臺的研制開發工作。我的主要工作職責是項目管理。該項目的客戶是內部客戶,主要目的是為公司手機產品的開發提供統一的軟件開發平臺,以便最大程度的在各個項目之間復用工作成果,從而能夠靈活、快速、高質量的完成手機應用軟件的定制工作。該軟件平臺項目包括三個大的部分:手機端軟件開發框架子系統;PC端手機軟件輔助開發工具子系統;軟件平臺版權控制管理子系統;
其中手機端軟件開發框架采用M-V-C的設計模型,目的是使手機軟件的用戶接口(UI)和服務(例如電話、短線、訪問電話本,藍牙等)實現分離。PC端手機軟件輔助開發工具,基于.Net平臺進行了開發,采用面向對象的技術,主要有手機UI布局可視化設計工具、UML狀態機可視化設計工具軟件。
考慮的未來我公司可以授權其它公司使用這一套開發平臺和工具進行手機應用程序的開發,項目基于J2EE和Structs技術開發了一個軟件版權控制系統,用戶可以通過Internet訪問我公司的版權控制系統,使用我單位簽發的數字證書使用該軟件平臺。
由于該項目是基礎平臺類項目,公司高層經理十分重視,資源投入方面給予了大力支持。該項目歷時12個月,現在已交付使用,大大提高了項目成果的復用率,并使手機項目的開發周期縮短到原來的三分之一。為方便項目的管理,項目成立了兩級變更控制委員會(CCB),分別是以作者為領導的第二級CCB和以高層經理為領導的第一級CCB。
下面作者以此軟件開發平臺項目為背景,論述了如何在公司質量管理體系大環境下,進行項目的質量規劃、質量保證和質量控制等項目質量管理工作。
1.
作者所在的公司是一家大型的外包服務型公司,公司已經建立ISO9000質量管理體系,也通過了能力成熟度模型集成(CMMI)三級認證。公司具有較為完備的質量管理體系。公司制訂了相關的質量方針和目標,落實了質量責任。按照公司流程,項目管理團隊在項目啟動后需要對組織的質量管理過程以及相關的項目管理過程進行裁剪。
在作者的領導下,項目管理團隊對公司的標準流程進行了裁剪,因為該軟件平臺項目沒有手機硬件設計開發相關的活動、所以首先將硬件設計、開發、生產維護相關的流程裁剪掉了。另外對產品需求說明書的內容進行了修改,由原來要描述整個產品(包括軟件和硬件)的系統需求,改為只描述軟件系統的需求;另外保留了其他相關的流程和交付物。
由于組織標準流程中沒有要求編寫《軟件系統總體設計說明書》,但是項目組認為該軟件平臺即涉及三個異構的子系統,各個子系統之間協調配合非常復雜、數據流和信息交互也很復雜,非常有必要通過一份軟件系統總體設計來規范和協調各子系統的接口以便指導后續的開發活動。所以項目組決定增加一份新的交付物----《軟件系統總體設計說明書》。組織標準流程裁剪完畢后形成的項目質量管理流程報質量保證部門及公司領導批準后,作為項目今后計劃、執行和管理控制的行動綱要。
作者和項目管理團隊通過定期的項目會議與項目組成員進行了充分的溝通,明確了質量對項目的重要性以及大家如何做才能保證項目的質量,使大家對于如何實現項目的質量目標充滿了信心。對于項目組中部分成員認為,“流程是死的、無用的,軟件的質量是靠測試保證的”等錯誤思想,通過多次溝通予以了糾正,使大家就以下內容達成了一致:(1)項目的質量是規劃、設計和構建出來的,而不是單靠測試保證的;(2)要十分重視項目的質量成本,越在項目早期發現的錯誤,糾正的成本越低。(3)項目質量目標的達成需要全體項目成員的參與,而不是個別人的事。
2.
在完成《軟件系統需求說明書》及《軟件需求詳細說明書》后,依據項目啟動時公司領導對項目的期望。作者領導和組織項目管理團隊開始制定項目的質量管理計劃。因為該項目是基礎平臺類項目,所以項目的質量標準中除了功能性指標外,最重要的就是通用性、可靠性、可維護性與可移植性等指標。另外因為手機硬件的配置普遍都不高,所以對性能的要求也較為苛刻。對于通用性、可維護性、可靠性和可移植性等指標主要是通過吸取公司其他項目的經驗教訓、采用良好的架構設計的方法來解決。對于性能指標通過優化算法的方式來解決。除了確定項目的質量目標外,還明確了質量責任人,作者作為項目經理對項目質量負有首要的責任;小組組長對相關子系統質量負有首要責任;各開發人員對自己的模塊質量負有首要責任;質量保證人員對于項目質量有監督和指導的責任等。質量績效作為考核團隊成員績效的重要指標。
根據規劃,在項目實施期間使用公司規定的PVCS系統對代碼進行配置管理,使用MS Sharepoint系統對項目的其他文檔類交付物進行配置管理。對于項目交付的文檔根據重要程度和預先的規劃需要經過評審才允許提交進入配置管理系統。對于項目最重要的交付物----代碼的質量,項目組給予了高度重視,項目組除了對重要核心模塊進行代碼評審以外,還吸取敏捷開發中關于持續集成的思想,強調每次交付的代碼都應該經過嚴格的單元測試和集成測試。并且強調任務“完成”的定義是需求、設計、編碼、測試都完成了才算是完成了,糾正了一些開發人員認為只要編碼完成了就算完成的錯誤思想。
通過增量交付的方式,在一些關鍵點(里程碑)請公司領導進行驗收和確認,建立領導對項目的信心,公司領導對項目的質量也給予特別的關注,每次驗收后都會對項目組強調質量的重要性。公司的質量控制部門通過系統測試對項目的成果給予了把關。每次里程碑交付時,項目開發組完成集成測試,符合準入條件后,由測試組完成一輪系統測試,在項目最終交付時由測試組完成三輪系統測試,符合要求后方可通過。
項目在實施期間定期或不定期對項目的質量過程執行情況進行審計,由項目組質量保證人員主導對項目執行公司的質量過程情況進行結構性檢查。例如質量審計過程中發現部分開發人員在沒有完成集成測試報告的情況下就提交了代碼,并且相關的小組組長也沒有把好關。針對這種現象項目組采取了適當糾正和預防措施來確保質量過程的貫徹執行。
項目組在質量控制過程中除了加強檢查以外,還特別注重軟件缺陷記錄的分析工作。通過缺陷帕累托圖發現,GUI子模塊和MMS子模塊的缺陷占到了總缺陷的50%以上,而且通過對其缺陷趨勢的分析發現這兩個模塊在前三次的交付中的缺陷并沒有呈現收斂的趨勢。通過分析和總結發現,GUI子模塊的問題主要是需求分析時接口需求沒有做好導致的;而MMS子模塊的問題主要是第三方子模塊的缺陷較多導致的。通過重新分析和梳理GUI模塊的接口需求和升級MMS第三方的子模塊的方式項目很快解決了問題。通過再次分析發現這兩個模塊的缺陷比例下降了很多,而且缺陷也呈現出收斂的趨勢。
3.
在項目交付時,由公司領導和相關部門領導、資深工程師組成的評審委員會,對項目的成果進行了驗收。認為項目的主要交付物已達到了公司的要求,而且可以作為公司級的軟件開發平臺推廣應用,并且指定了首個接收使用該平臺的項目。另外在評審中發現該軟件平臺的用戶手冊不夠完善,這將對后續的推廣應用造成不利的影響。
項目針對評審中提到的問題就行了補救,完善了相關的文檔,評審后提交入項目配置管理系統。項目組還對項目執行過程中的經驗教訓進行了總結,尤其是項目組的《XX軟件系統總體設計說明書》被評為公司最佳實踐,并整理成文檔模板提交到了公司的財富庫中。
歷時12個月的項目,最終提前1個月完成了,通過這個項目我深深體會到了項目質量管理的重要性,同時也對項目執行過程中的一些經驗和不足進行了反思,現總結如下:
強有力的領導,是保證項目質量的關鍵。如果領導對項目的質量不表現出特殊的興趣,那么項目的質量是很難保證的。在這里作者想“領導”不僅僅是指公司高層領導,他們的支持只是項目質量管理的基礎,項目經理(或項目管理團隊)作為項目的“領導”也同樣具有重要的作用,強有力的項目領導才能保證公司的質量方針、項目的質量計劃得到執行。
靈活裁剪公司的標準流程。公司級的標準流程是通用的,而項目具有獨特性的特點,在裁剪流程時需要根據項目的實際情況裁剪,另外“裁剪”不只意味著減少,它還有“增加”和修改的意思。正式應為“裁剪”使得項目的實踐才能不斷豐富組織的財富,組織的過程成熟度才能不斷的提高和改善。
定期的質量審計有利于項目的持續改進。有時在項目執行一段時間后,項目組成員會陷入“不識廬山真面目、只緣身在此山中”的境況。而質量審計工作恰恰可以跳出謎團,以旁觀者清的心態發現項目中的質量問題。
沒有真正理解項目的質量除了通過產品的質量來體現以外還有服務的質量。對于軟件產品來講,產品的質量應該至少有兩層含義:一層是交付物本身的質量,另外一層就是服務的質量。項目在執行時沒有提供較完整的用戶手冊,差一點影響項目成果的推廣使用,這一教訓作者記憶深刻。好在項目平時的文檔記錄保存較為完整,在較短的時間內進行了補救。作者將汲取這一教訓,通過不斷學習和實踐,做好今后的項目管理工作。