軟體專案管理是指在軟體專案研發過程中,對軟體專案進行高效率的計劃、組織、指導和控制,將研發任務與公司有關部門和相關人員緊密關聯起來,使部門和工作人員目標明確、業績清晰。專案管理更強調專案負責人的作用和團隊的協作精神,其組織形式靈活,更加關注人的因素,關注客戶和服務客戶,著重於提高軟體專案研發的效率和質量,體現為一種工作流程管理。

一、專案啟動階段

專案啟動階段的任務是識別客戶需求內容,對客戶提出的需求內容進行可行性分析、評估和立項。

(1)專案識別。科技部門接到業務部門提出的業務需求後,對業務需求內容進行確認,對業務需求做可行性研究分析,透過與業務部門進行交流溝通、分析評估後,對需求的可實現內容和不能實現的內容達成一致意見,科技部門對於確認的需求內容納人公司整體專案管理體系中管理,並配合與業務部門撰寫出詳細的專案需求說明書。

(2)專案立項。軟體專案透過評審後就可以進行立項,編制需求開發任務書。軟體公司接到專案任務後,首先由公司專案管理辦公室按照公司IT專案管理流程,為新專案建立資訊檔案,編制專案程式碼,啟動專案開發工作。

二、專案規劃階段

專案規劃階段的任務是為擬研發的軟體專案制定一個詳細的解決方案,為各種可交付成果準備工作計劃。

1.專案範圍規劃

(1)專案背景描述。透過對專案實施背景的分析,瞭解業務需求提出的背景,便於更好地掌握需求可能涉及的利益相關者。

(2)專案目標描述。主要包括三方面的內容:一是成果目標,即要開發一個怎樣的系統(如開發一個成本軟體管理系統);二是工期目標,即專案預計完成的時間(例如:2007年4月1日一2007年6月30日,為期3個月);三是成本目標,即預算專案總投資金額(如專案成本30萬元)。

(3)專案工作結構分解(WBS)。WBS的作用是把安排與定義專案範圍的各組成部分,按可交付成果進行組合。專案經理根據團隊成員職責分工,把複雜的工作逐步分解成要素工作,使得專案成員的工作具體明確、易操作和易控制。通常軟體專案採用基於可交付的成果為第一層次,具體的工作任務為第二層次,每下降一個層次意味著對專案可交付成果有更詳盡的描述。遵循以目標體系為主導、以專案系統說明為依據,自上而下,由粗到細。

(4)里程碑計劃。里程碑是完成階段性工作的標誌,根據WBS結構圖中專案劃分範圍,定義每一項工作任務完成的時間。

表1 成本軟體管理專案里程碑計劃

(5)工作責任分配矩陣。其作用是對專案團隊成員進行分工,明確其角色與職責。透過這樣的關係矩陣,直觀地反映和明確專案團隊中每個成員的職責,使專案的每個具體任務都能落實到參與專案的團隊成員身上,確保專案研發過程中事事有人做,人人有事幹。工作責任分配矩陣可以詳細列出每一項工作具體負責人完成的時間、工作參與的內容。

2.編制專案工作計劃

專案工作計劃編制要依據合同對工期的約定和要求、里程碑計劃、WBS,參照公司類似專案的歷史資訊和專案內外部條件,各種資源狀況等內容,編制專案工作計劃,常用的技術方法是PERT 網路技術、甘特圖法。

(1)專案進度計劃。依據WBS工作專案,詳細制定專案中每一個工作任務的工期,設計專案進度報告內容,制定各種專案進度報告發布渠道及釋出時間。

(2)專案人力資源計劃。依據專案總體目標和每一項工作需要花費的時間,確定完成專案需要的人員,並依據不同的工作要求,配備不同的崗位工作人員,如工程師、測試人員和專案管理人員。

(3)制定專案費用預算,如表3示例。①給每一項工作分配全部費用,以獲得度量專案執行的費用基線;②將費用預算分為人力資源費用、其他費用、提取的風險基金和專案獎金;③預算的主要依據是軟體專案估算技術(功能點法和DelPhi法)、經驗估計、工作分解結構WBS和進度、費用及資源計劃。

表3 成本軟體管理專案進度、人力資源和費用一覽表

(4)風險控制計劃。“凡事預則立,不預則廢”,只有事先對專案可能發生的風險進行有效地分析和評估,並採取有效的防範與應對措施,方能保證專案目標的順利實現。根據軟體專案特點,制定和完善風險管理流程,做好風險識別、分析、計劃、跟蹤、應對、改進工作和監督考評等方面工作。對於軟體專案開發採用外包的部分,要選擇在行業中信譽好、規模大、管理水平高和服務好的軟體公司作為開發商。

(5)質量控制計劃。專案團隊成員按照公司軟體專案研發全面質量控制要求,制定專案設計、編碼、測試、投產及編制相關的專案文件質量標準,並規定專案組提交質量控制需要的各種專案資訊,定義專案研發過程中評審活動。

(6)專案採購計劃。根據專案需要採購的IT裝置及應用軟體系統,依據公司採購管理辦法和專案進度計劃,編制專案採購計劃,同時做好與供應商的合同管理計劃。

(7)培訓計劃。制定專案開發前和專案完成後投產前的技術和業務培訓方式、培訓內容、培訓物件和培訓時間。

(8)方案評估計劃。專案規劃結束後,需要公司專案管理辦公室組織相關領域的技術和業務專家,對專案規劃階段形成的各種計劃書、實現方案內容進行評審,以確保內容的合理性、正確性。

3.設計專案實現方案

(1)專案技術實現方案。在全面分析現有業務需求處理層次和處理流程的基礎上,根據現行系統架構要求,在實現方案的設計過程中,既要從業務人員的角度去考慮問題,也要從技術人員的角度去考慮問題。既要考慮業務實現的方便性,同時又要充分考慮方案實施對系統整體資源花銷和影響,如系統執行效率,交易反應速度等,用最簡單、實用的方法設計業務需求實現方案。所以在需求轉化為實現方案設計時,要多花費些時間投入實現方案的設計工作中,儘量考慮長遠一點,使實現方案設計能在系統後續專案中得到繼承和完善,避免出現推倒重來的情況。

(2)專案開發方案。根據軟體專案實現方案、進度計劃、費用計劃和資源計劃,制定專案開發計劃,設計開發環境,統籌安排專案開發任務。

(3)專案測試方案。依據專案開發計劃,制定專案測試計劃,合理安排測試環境、組織單元測試、整合測試和驗收測試。

4.確定資訊溝通與披露渠道

①針對不同專案干係人確認專案溝通的渠道和方式;②作為專案經理,必須瞭解溝通要符合資訊接收者的需要,根據不同專案利益相關者需要提供不同的專案資訊;③建立專案資訊披露機制,應實時反饋有關專案延期、成本增加和出現質量問題等方面的資訊,並儘早溝通,說明原因,使高層經理和客戶能及時理解,並調整相關計劃。

5.專案資訊管理

建立專案管理資訊檔案,可實現對眾多的軟體專案進行管理。透過專用的專案管理軟體為每一個專案編號建立資訊檔案,詳細記載專案生命週期中每一個階段產生的專案資訊資料,要求專案組隨時提交專案資訊,逐步建成一個專案資訊管理知識庫。

三、專案執行階段

專案執行階段就是具體實施專案規劃中制定的各項工作內容,是專案生命週期中工作內容最多、佔有時間最長和消耗資源最多的一個過程。

1.明確團隊組成形式

對於商業銀行來講,如果是自行研發軟體專案,則適合選用強矩陣組織結構模式,特別是對於研發一個大型軟體專案,由於專案涉及會計、信貸、儲蓄、銀行卡、外匯等多個業務部門和應用子系統,還涉及與外部公司系統的連線等多方面工作,需要公司業務和技術各個團隊的密切配合才能完成,因此採用強矩陣式的管理模式,更能充分調動公司各部門的資源,完成該專案。如果軟體研發專案是外包,則需要採用專案管理方式更合適,設定專案經理專門負責每一個軟體專案研發的全過程。

2.建立專案開發團隊

依據業務需求開發任務書中,對專案完成時間、費用的要求,確認專案開發團隊人員數量,明確專案經理,建立以專案經理為專案負責人的開發團隊。團隊組建完成後,專案經理組織團隊人員進行交流學習和互相熟悉,說明專案任務、目標、規模、人員組成、規章制度和行為準則,個人崗位和責任,建立團隊與外界的初步聯絡及相互關係,確立團隊的許可權,建立團隊的績效管理機制,爭取公司各方面支援,根據團員特點分配職責,收集有關專案資訊。

3.實施專案開發測試

依據公司軟體專案設計開發制度要求和軟體專案管理規範,按照需求實現方案為專案具體開發做好準備。①技術人員在專案實現方案框架下,設計專案詳細實現的功能說明書;②根據專案實際要求準備好開發環境和測試環境;③程式設計師編寫程式程式碼,測試人員設計測試方案和應用案例;④是對需求實現功能說明書和測試計劃、測試案例進行評審;⑤撰寫測試問題報告,改正軟體Bug;⑥按照要求定時提交相關的專案管理資訊資料。

4.實施專案採購

專案經理及專案成員按照公司採購制度和流程控制要求,瞭解軟體產品供應商市場,諮詢市場詢價,採購招投標及與中標供應商簽訂合同。參與系統供應商招投標會議,瞭解熟悉供應商情況,當確定供應商後,專案經理與團隊成員一起與供應商進行詳細的需求功能溝通交流,向供應商講解自身應用系統的結構及該專案與其他應用系統的關聯,專案計劃實現的時間安排,技術問題的交流方式等,同時聽取系統供應商對提供系統功能的詳細介紹及有關技術要求。透過兩者之間的交流讓供應商熟悉掌握需求內容和專案進度安排,在預定的時間內提供相應的軟體專案開發文件資料,同時銀行本身做好採購系統裝置及應用技術環境的建設。

5.專案資訊入檔管理

在專案的研發過程中,會產生很多的來自不同層次和客戶的專案管理所需資訊和文件資料,及時、正確地蒐集好這些專案資訊並納人專案資訊管理檔案中統一管理,為跟蹤專案程序、提高專案控制能力及專案後評價、專案績效考核打好基礎。

四、專案控制階段

專案控制階段任務是定期監測與度量專案執行情況階段各項工作進展情況,識別是否有偏離計劃之處,對於專案執行過程中出現的問題,及時發現並採取糾正措施,以確保專案目標實現。

1.專案控制流程

2.專案進度與費用控制

(1)做好專案進度和費用分析,使用的方法主要是專案掙值法分析。該方法透過對各項工作實際消耗費用及完成情況與計劃對比,分析整個專案進度執行情況及費用支付情況,分析專案整體完成情況。

預期費用與實際費用的偏差CV=BCWP-ACWP,式中,BCWP表示已完成工作量的預算費用,ACWP表示已完成工作量的實際費用。CV>1表示實際費用小於預算費用;CV<1表示實際費用大於預算費用;CV=1表示實際費用等於預算費用。

預期進度與實際進度的偏差SV=BCWP-BCWS,式中,BCWP表示已完成工作量的預算費用,BCWS表示專案計算工作量的預算費用。SV>1表示實際進度超過預算進度;SV<1表示實際進度落後於預算進度;SV=1表示實際進度等於預算進度。

(2)撰寫專案進度報告。按照公司專案管理要求,定期編制專案進度報告,報告內容包括:專案進展情況報告、任務完成報告、專案進度控制報表(掙值分析)、專案狀態執行報告、重大突發性事件報告、專案進度控制報告、專案管理報告和問題跟蹤報告。

(3)每週定期召開專案工作例會。以周為單位對專案進度進行連續檢測,檢測結果與專案執行計劃比較。進度正常則按原計劃執行;進度滯後則要分析原因,找出解決措施,以里程碑計劃為階段目標,為實現整個專案目標紮實工作。

(4)里程碑會議。根據里程碑計劃中制定的需求分析完成時間、系統設計完成時間、編碼完成時間、測試完成時間和投產完成時間,在每一個階段完成時召開會議,確認該時間段是否按計劃完成工作。

(5)與專案外包商溝通會議。根據專案開發計劃召開與軟體專案開發外包商會議交流專案開發進度狀況及其他相關事宜,及時解決存在的問題。

3.專案資源的控制

專案的資源包括人力資源、開發環境資源、測試環境資源、裝置資源等,在專案開發過程中,專案經理要根據專案開發進度情況,最佳化資源分配,合理安排專案使用的開發和測試環境,調整開發人員和測試人員數量和工作內容,透過專案資源最佳化,確保專案開發進度和質量。

4.採購過程及合同控制

監督和控制軟體專案採購過程中,要確保供應商招投標及中標是否按流程工作,供應商的資質是否符合要求,要求提供的文件資料是否齊全。對於中標的供應商要做好合同管理,確保賣方符合要求,買方要根據專案進度情況,做好專案階段付款、合同內容變更管理。

5.需求變更管理

在軟體專案的研發過程中,對於需求內容變化請求都要求做出快速的響應,這需要制定相應的變更管理工作流程,控制來自各方面的變更,同時更新專案計劃內容,並及時把更新專案資訊資料存入專案資訊管理檔案。

6.專案風險控制

根據專案規劃階段對專案開發過程中不同風險的識別及應對策略,實行專案“實時監控、實時詢問、及時披露”制度。在專案開發過程中,對於出現的風險要及時向上級領導、客戶反映,同時要採取措施把風險減少到最低程度。對於外包商,專案經理需要密切監控專案的實施情況。

7.專案質量控制

按照質量保證計劃,由質量控制員全程跟蹤專案研發過程中質量控制點,提醒專案經理提交專案管理需要的質量資訊資料,對於發現的問題要及時通知專案經理改正。

五、專案收尾階段

專案收尾階段是專案生命週期的最後階段,這個階段的主要工作包括如下幾方面。

1.專案驗收

(1)業務需求提出部門透過驗收測試,驗證軟體專案實現的功能是否實現了需求的要求;(2)對於外包軟體專案產品的功能驗收,同時還要驗收外包商提供的相應技術文件資料是否齊全,內容完整正確。

2.專案交接

對於外包開發的軟體專案,在完成驗收後依據合同要求,接收外包開發商提供的有關專案資料。對於自行研發的專案按照公司專案管理要求,專案組要提供專案相關技術文件。

3.費用清算

根據合同規定和實際專案驗收情況,與專案外包軟體開發商進行資金清算。

4.專案後評價

(1)提交專案總結報告。專案開發結束,需要專案開發團隊撰寫專案報告,總結分析整個專案研發工作,分析專案開發其間出現的問題原因及解決的方法,撰寫出專案總結分析報告,為以後專案研發提供借鑑經驗。

(2)專案績效考核,按照公司專案考核指標來計算衡量專案總體情況。

(3)整理專案資訊資料存入專案資訊管理檔案。

其它小說相關閱讀More+

昭昭雲天

望完

匹配的異種老公奇奇怪怪可可愛愛

葡萄西柚子

母親說我當他的兒子很失敗

顧殤

重來一世,帝君只餘神性

疏雨木兮

網遊天龍八部之逆天傳奇

醉臥聽雨

山窩明月的新書

山窩明月