張冰
(煤炭科學技術研究院有限公司,北京 100013)
項目進度計劃表達項目中各項工作的開展順序、開始及完成時間以及相互的銜接關系。項目進度管理協調各項工作的開展,是項目實施的基礎。與傳統項目不同的是,軟件項目的進度管理對工作投入量難以估計。所以,只有對軟件項目的工作量進行可靠的度量,才有可能進行有效的進度管理。
管理信息系統應用于各企事業單位和諸多經濟領域,但系統在上線之后無法滿足客戶的需求,其功能沒有達到最初的設計目標。主要原因有:
(1)管理信息系統工作量估計不足導致的進度超期。必須綜合系統所在行業的特點、業務成熟度、開發的勞動生產率、復雜程度、技術難度、歷史經驗等因素,將一些定性的內容量化。
(2)管理信息系統需求調研不足,且后期多變。管理信息系統70%的需求是隱性的,被稱為領域需求。軟件開發者往往只調研業務需求,對于深層次的領域需求往往認知不足,導致設計過程中考慮不周,無法應對后期變化,輕者嚴重影響項目進度,重者直接導致項目失敗。
(3)未充分考慮信息安全因素。近年來,來自網絡的安全威脅不斷攻擊企業信息化系統。公安部出臺的一系列政策文件構成了信息安全等級保護政策體系,為指導信息系統安全等級保護工作提供了政策指導。
當前,管理信息系統功能性度量普遍采用基于功能點(Function Point,FP)的測算方法。該方法從功能的角度來度量系統,并可以充分考慮技術復雜度因子 (Technical Complexity Factor,TCF),可以實現更加精確的工作量估計。TCF系數的計算取決于14 個通用系統特性因子(General System Characteristics,GSC)。如何從管理信息系統建設的真實需求出發,重新設計GSC的因子構成,使之更加適合管理信息系統的工作量估算,成為軟件項目實施有效的進度管理的必要條件。
FP 估算法是軟件項目管理眾多知識中較為先進的方法,需要計算評估影響系統功能范圍的14 個TCF 計算因子。這些計算因子用來評定功能點應用的通用功能的級別。每個特性有相關的描述以幫助確定這個系統的影響程度。影響程度的取值范圍用0 ~5 表示,這5 個數字分別代表從沒有影響到有強烈影響。TCF 因子的計算公式為

式中,TCF 表示技術復雜度因子;Fi表示每個通用系統特性的影響程度;i 表示每個通用系統特性,取值1 ~14。TCF 因子的設計考慮了所有的計算機軟件開發過程中需要考慮的技術難度和復雜度因素,所以在TCF 的評分過程中,需要根據不同類型的應用程序進行適當的打分(表1)。

表1 TCF 因子列表
基于FP 的度量方法于1979 年由IBM 的Alan Albrecht 首先開發并應用?,F在的系統開發借助強大的軟硬件平臺,軟件工程師已經不像以前那樣關心程序的性能和內存管理的算法和細節,將更多的精力投入到如何了解業務需求,定義商業規則,并服務客戶上面來。
筆者通過大量的信息系統建設實踐,并結合行業發展的一般規律,決定對4 個TCF 因子進行更換。包括:
(1)數據通信因子。數據通信指的是應用程序直接與處理器通信的程度。一般指應用程序通過某種通信手段實現數據交換或信息控制等功能。更換原因:管理信息系統無需考慮應用程序與處理器通信程度。
(2)在線更新。在線更新是指內部邏輯文件(ILF)在線更新的程度,主要包括應用軟件系統提供在線更新ILF 的功能。更換原因:管理信息系統的數據存儲可以基于成熟的大型商業關系型數據庫,系統的數據訪問往往基于成熟的數據訪問組件技術,例如ADO. NET 和JDBC。數據庫和組件技術屏蔽了內部數據更新的技術難度和實現細節。此外,系統內部邏輯文件的管理往往基于程序的應用API,在線更新指標對于管理信息系統的設計與實施并無太大的意義。
(3)易安裝性。易安裝性指系統的轉換和安裝容易度對開發的影響程度。更換原因:該項指標主要負責度量系統升級或者安裝的難度,現在的管理信息系統往往基于較簡單的軟硬件環境,對系統的部署要求比以往大幅降低,基于瀏覽器/服務器部署方式,基本實現了應用程序的零安裝。
(4)跨平臺性??缙脚_性指應用系統經特殊設計、開發可以在多個組織、多個地點應用的程度。更換原因:該項指標主要負責度量系統在不同的軟硬件平臺下的表現而帶來的開發成本?,F在的管理信息系統往往基于較為簡單的軟硬件環境,對跨平臺部署的要求比以往大幅降低。此外,市場上主流的大型應用系統都推出了跨平臺應用,屏蔽了不同平臺對于應用程序設計開發的差異性和技術難度。
在總結多年的管理信息系統開發和運維經驗的基礎上,根據管理信息系統的特殊性,筆者刪除數據通信、在線更新、易安裝性和跨平臺性4個技術復雜度因子,增加以下4 個技術復雜度因子,包括:
(1)業務邏輯穩定性。該項指標用于評估管理信息系統涉及的業務工作的穩定性與成熟度。因為管理信息系統的設計需要建立在穩定的業務邏輯之上,否則,系統的開發工作會受到不穩定的業務模式的影響,后期大量進行需求回歸調整,會嚴重拖延項目進度并導致成本超支,甚至有導致項目實施失敗的可能性。例如,一個剛剛開始啟動、處于摸索期的業務工作實施信息化會比一個成熟工作實施信息化花費更多的需求分析、需求調整、用戶培訓和運行維護的時間與成本。
(2)業務信息化基礎。該項指標用于評估管理信息系統涉及的業務工作是否有較好的信息化基礎,包括已有的信息化系統基礎、信息化人員基礎等。如果所涉及的業務工作已經有了很好的信息化基礎,那么會大大降低系統實施風險,能夠更加精確地估算工作量,并有效地控制項目的進度和成本。例如,對一個陳舊的信息化系統進行重新開發花費的時間和精力,要遠遠小于毫無基礎、全新開發系統的花費。
(3)系統實施單位能力。該項指標用于評估系統建設單位實施管理信息系統的能力,包括信息化硬件設備條件、已經上馬的信息化系統數量、員工的信息系統使用水平,甚至包括系統實施主管領導的信息化管理水平等條件。如果實施單位曾經成功地實施過大型應用系統,例如ERP或CRM 等系統,那么應用新的系統所帶來的阻力和成本將明顯降低。
(4)安全等級保護要求。該項指標用于評估系統實施單位對系統安全等級的要求,目前我國的信息化系統安全等級保護級別由低到高分為5級。等級保護措施對系統硬件結構、軟件設計和后期運行維護都提出了更高的安全要求。所以,實施不同等級的安全保護對系統的設計和實施成本的影響是巨大的。
綜上所述,為了更好地適應管理信息系統的設計和實施,項目開發者更換了4 個GSC 指標,改進后的技術復雜度因子如表2 所示。

表2 改進后的TCF 因子

(續)
(1)業務邏輯穩定性。該項指標用于評估管理信息系統涉及的業務工作的穩定性與成熟度,具體評分標準如表3 所示。

表3 業務邏輯穩定性技術復雜度因子取值情況
(2)業務信息化基礎。該項指標用于評估管理信息系統涉及的業務工作是否有較好的信息化基礎,具體評分標準如表4 所示。

表4 業務信息化基礎技術復雜度因子取值情況
(3)系統實施單位能力。該項指標用于評估管理信息系統實施單位的信息化能力,具體評分標準如表5 所示。

表5 系統實施單位能力技術復雜度因子取值情況
(4)安全等級保護要求。該項指標用于評估系統實施單位對系統安全等級的要求,具體評分標準如表6 所示。

表6 安全等級保護要求技術復雜度因子取值情況
度量軟件規模以及實現軟件項目工作的量化是軟件項目進度管理工作的開始。沒有可靠的軟件規模度量方法,則相關的生產率(FP/每月)變化或者相關的質量變化數據就不能被統計出來。如果相關的生產率和質量的變化能夠得到統計和計量,則組織可以將注意力都集中到組織的強項和弱項上去,并且,所有試圖改進弱項的努力都可以被度量以確定實際的使用效果。
對TCF 因子的改進來自筆者多年來對管理軟件開發工作的反思。改進的成果已經應用于一些大型信息化建設項目中去。但是,盡管基于FP的計算方法是結構化的,但是TCF 因子權重的確定是主觀的,另外要求估算人員要仔細地將需求映射為外部和內部的行為,必須避免雙重計算,所以該方法也具有一定的主觀性。
[1] 韓萬江,姜立新. 軟件開發項目管理[M]. 北京:機械工業出版社,2004.
[2] 李明樹,何梅,楊達,等. 軟件成本估算方法及應用[J].軟件學報,2007,18 (4):775-795.
[3] 薛保菊. 談軟件開發項目的進度控制[J]. 軟件學報,2007,18 (4):775-795.
[4] 林銳,范同祥,唐勇. 面向企業的軟件研發管理解決方案:方法與工具[M]. 北京:電子工業出版社,2004.
[5] 張冰. 基于FP、PERT 的軟件項目開發進度估算方法[J].項目管理技術,2014 (1):80-83.
[6] 郭越熙. 通信軟件開發過程中的進度管理[D]. 北京:北京郵電大學,2009. PMT