鐘 瑾,馬麗萍
(中國海洋大學 管理學院,山東 青島 266100)
基于軟件研發(fā)項目層面的作業(yè)成本分析體系的構建
鐘 瑾,馬麗萍
(中國海洋大學 管理學院,山東 青島 266100)
本文分析了作業(yè)成本法難以在軟開發(fā)行業(yè)實施推廣的關鍵因素,提出了實現(xiàn)軟件開發(fā)的財務管理與項目管理相結合的思路構想,把作業(yè)成本法引入軟件開發(fā)項目的全生命周期管理中,建立起基于項目層面的作業(yè)成本分析體系。
軟件;項目管理;作業(yè)成本法;工作分解結構;里程碑
軟件研發(fā)行業(yè)與制造業(yè)等行業(yè)不同,具有專業(yè)化、系統(tǒng)復雜性程度較高的特征。在軟件開發(fā)過程中,人是軟件產品質量與產品成本的決定性因素,而以人力資源為主的相關資源的投入并不是在開發(fā)過程中一次性或連續(xù)均勻的投入,不同層次的人力資源在研發(fā)過程中的每一個階段的投入量水平都有著差異,而且為滿足開發(fā)過程中的各種需求,人力資源成本也在不斷整合配置并充分發(fā)揮其個體優(yōu)勢。這一過程所產出的軟件作為純知識產品,其開發(fā)進度和質量很難估計和度量,成本投入與生產效率也難以預測。這導致軟件項目開發(fā)具有較大風險和不確定性。成本管理與控制貫穿軟件研發(fā)過程的始終,是軟件項目能否順利實施的關鍵,對于該行業(yè)至關重要。目前軟件研發(fā)行業(yè)成本管理往往具有滯后性,還沒有完全做到動態(tài)監(jiān)控和實時控制,因而這一過程中的預算松弛、預算失控等成本控制問題較為突出。
作為現(xiàn)代企業(yè)成本管理控制的核心方法之一的作業(yè)成本法。自20世紀80年代后期由卡普蘭和庫珀推廣到全世界之后,在學術研究領域一直都受到人們的關注。作業(yè)成本法最顯著的特點是它把管理控制深入到了組織運營的最基礎的 “細胞”層面——作業(yè)層面,不僅關注影響成本產生的決定性因素,更關注引導這些動因產生的機理,即作業(yè)的劃分與作業(yè)動因的選擇。其目的就是識別增值與非增值作業(yè),并消除非增值作業(yè),實現(xiàn)成本的最小化。這也是它區(qū)別于其他管理工具的最大優(yōu)勢。
在現(xiàn)實工作環(huán)境中,作業(yè)成本法被廣泛應用食品生產、加工制造、服務行業(yè)。在加強成本的前饋控制和實時控制、細化預算分析體系等方面都取得了顯著成效(以青島啤酒為代表)。然而其他行業(yè),特別是以軟件研發(fā)為代表的高科技行業(yè)中卻幾乎沒有應用。雖然在學術研究方面,有的學者論證了它在軟件開發(fā)實際應用領域中的必要性并提出了合理構想。但也只是在研發(fā)團隊基礎上進行的表層作業(yè)分析,沒有深入到每一個軟件項目層面,作業(yè)成本法沒有發(fā)揮其真正的作用,缺乏實用性。
作業(yè)成本法要求財務人員對生產過程中的每一個環(huán)節(jié)都有深入了解和分析。然而由于專業(yè)能力水平限制,復雜的研發(fā)設計流程對于財務人員來說無異黑箱一樣。黑箱的輸入端,是內化在技術人員頭腦之中的知識技能等無形資源以及輔助性的實物資源。黑箱的輸出端,卻僅僅是一個產品——軟件系統(tǒng)。加之與大規(guī)模生產流水線完全不同,每一個軟件系統(tǒng)的生產流程,即研發(fā)計劃,是依據(jù)特殊顧客需求和自身研發(fā)實力而制定的,都是有差異的。在這種情況下,財務人員游離于組織核心活動之外,財務活動無法滲透到軟件生產過程中。然而,對于軟件研發(fā)流程最為了解的莫過于每一個研發(fā)項目的項目經理,研發(fā)團隊中的項目經理由參與研發(fā)的高級技術人員擔任。除了控制開發(fā)成本,項目經理更加關注軟件的質量與開發(fā)進度,適度的預算超支往往得到項目經理的默認。
從上面的分析可以看出,軟件項目管理與財務管理的脫節(jié)是作業(yè)成本法難以在軟件研發(fā)行業(yè)推進的主要原因。只有解決以上問題,才能把作業(yè)成本法引入軟件項目的全生命周期管理中,建立起基于軟件項目層面的作業(yè)成本分析體系。因此,如何把作業(yè)成本法的管理思想真正融入軟件項目的全生命周期管理過程中,正是本文的關鍵所在。
如上所述,鑒于軟件開發(fā)行業(yè)生產過程的特殊性、復雜性,本文擬把項目管理中的項目識別方法工作分解結構(WBS)應用到作業(yè)成本法中的流程與作業(yè)的識別中,同時借助于軟件項目開發(fā)進程中的里程碑(Mile Stone)概念,把該軟件系統(tǒng)總成本劃分為各個成本中心,即后文“項目子產品”,進行成本分配。
美國能源部的文件這樣定義WBS:“WBS是一種數(shù)字化和圖形化的表達方式,它通過鏈接所有項目工作單元和終端產品實現(xiàn)項目的完整定義?!盬BS由項目經理建立,其目的是要把產品或可交付成果分解成一個個獨立單元,并理清它們與終端產品間的關系(Budd C.I.,2008)。 從中可以看出,WBS 的主要作用就是分配管理職責與技術職責。不同的軟件系統(tǒng)所采用的軟件開發(fā)模型是不同的,這使軟件開發(fā)的作業(yè)流程呈現(xiàn)多樣化,導致作業(yè)識別的多樣化。但是WBS涵蓋了構成整個流程的全部關鍵項目要素,由WBS提供的獨立的單元節(jié)點完全符合作業(yè)成本法中對作業(yè)的界定。用WBS可以解決財務人員對于軟件研發(fā)這一專業(yè)流程的作業(yè)劃分的難題。里程碑(Mile Stone)用于項目進度管理和跟蹤,以方便監(jiān)控項目進展和健康狀態(tài)。在達到里程碑的時候,項目經理一般需要檢查項目狀態(tài),并出詳細的項目狀態(tài)報告,該報告記錄了終端產品的階段性成果。軟件項目管理中的里程碑只是出現(xiàn)在開發(fā)過程中的文檔記錄。筆者把這一概念拓展到了軟件研發(fā)項目的整個生命周期中,即從項目的接洽-需求分析-項目的研發(fā)-項目的后續(xù)維護,以反映軟件系統(tǒng)在整個研發(fā)過程中的全部成本耗費,并按照研發(fā)過程的時序先后劃分成本中心并進行成本歸集,反映出單一終端產品在其特定生產流程的不同階段中的資源投入情況,便于對軟件系統(tǒng)進行成本形態(tài)分析,也為后續(xù)進行實時成本監(jiān)控奠定了基礎。
此外,為了改進生產流行、提高自身的研發(fā)能力并實現(xiàn)軟件項目管理與國際接軌,多數(shù)軟件開發(fā)企業(yè)都通過了CMMI等級認證。CMMI強調過程的文檔記錄,對每一過程進行了詳細的說明和闡釋。作業(yè)成本法實施過程中的資料收集和基于流程管理的作業(yè)動因分析等環(huán)節(jié)都可以從CMMI的文檔記錄中獲取所需的數(shù)據(jù)。
本文通過案例研究具體展現(xiàn)基于軟件項目層面的作業(yè)成本分析體系建立的全過程。案例企業(yè)為一家中型軟件研發(fā)公司,規(guī)模約400人,技術開發(fā)人員占總員工的85%,在軟件研發(fā)行業(yè)具有一定代表性。筆者通過采用訪談方法,通過與該公司的研發(fā)與營銷總監(jiān)、財務總監(jiān)、主管會計和2位項目經理進行交流溝通,同時對該公司的一個中型軟件項目的研發(fā)團隊的工作流程進行為期兩周的實地調查以全面掌握該公司的運營情況,并收集相關技術、財務數(shù)據(jù)。
通過實地調查訪談,筆者了解到該公司在軟件開發(fā)過程中主要使用瀑布模型與螺旋模型。瀑布模型,是最傳統(tǒng)的模型。開發(fā)過程中的各個階段不連續(xù)、不交叉,是相互獨立的直線流程。上一環(huán)節(jié)的開發(fā)結果或開發(fā)產品為下一環(huán)節(jié)的起始點,是下一環(huán)節(jié)的基礎材料。在實際使用中都不是嚴格意義上的瀑布模型,各階段存在重疊,而且每個階段也非純直線串行,存在著并行。螺旋模型(迭代式)中,整個開發(fā)工作被組織為一系列小項目,被稱為一系列的迭代。每一次迭代都包括了需求分析、設計、實現(xiàn)與測試。雖然每個項目應用開發(fā)模型不同,但是軟件開發(fā)的流程是穩(wěn)定的,且以線性、重疊式或迭代式呈現(xiàn)在模型中。通過該公司實際軟件開發(fā)流程所包含的各個作業(yè)進行梳理,整個流程被分成5各階段:啟動與需求(業(yè)務洽談、招投標、入場調研、需求分析作業(yè));設計(概要設計、詳細設計);編碼測試(編碼、集成、單元與組裝測試、系統(tǒng)測試作業(yè));安裝(試運行、正式上線);支持(維護、升級)。
資源是在作業(yè)執(zhí)行過程中發(fā)生的代價,其涵蓋了企業(yè)所有價值載體。如果說企業(yè)是始于外部供應、終于客戶銷售的資源不斷投入和成果不斷產出的循環(huán)往復的運作系統(tǒng),那么資源就是支持作業(yè)執(zhí)行的必須的經濟要素。
軟件開發(fā)項目資源主要由以下4部分構成:①軟件開發(fā)資源耗用:最主要的是項目組開發(fā)人員的人工成本;②硬件資源耗用:主要包括實施軟件項目所需要的所有硬件設備、系統(tǒng)軟件、數(shù)據(jù)資源的購置、運輸、倉儲等費用,還包含軟件開發(fā)整個階段中使用相關的設備(電腦等)、房屋的折舊、水電費用等耗用的辦公資源開支。③差旅及培訓費用:包括軟件開發(fā)人員和用戶的培訓費用。④項目管理費用:用于項目組織、管理和控制的費用支出。
WBS把整個項目被層層分解,最底層的項目的末端點已被細化為最簡單的模塊,例如:設計—概要設計—模塊A與模塊B。底層每一個項目最末端點都有著清晰的任務完成責任人。軟件開發(fā)的流程由項目經理、技術主管、企業(yè)管理人員、前期銷售人員等多方面力量的共同參與。
圖1 項目的作業(yè)動因、作業(yè)中心與成本中心
每一個軟件開發(fā)項目執(zhí)行的終端產品都是一個根據(jù)客戶需求而開發(fā)出的軟件系統(tǒng),相關財務信息都是以整個項目為單位進行歸集列示的。為了體現(xiàn)項目質量、工期、價格、管理水平、人力資源成本的影響,同時監(jiān)控整個項目流程關鍵部分的執(zhí)行情況與相關成本耗費,筆者把項目研發(fā)與項目管理的各個階段所形成的各個項目里程碑(關鍵功能模塊的實現(xiàn))與管理性的書面文檔,定義為該項目生產的子產品,每一個項目一般會有5種重要的子產品:①需求分析報告;②軟件設計計劃規(guī)格說明書;③模塊功能的實現(xiàn);④管理與進展報告;⑤服務與維護報告。
在進行成本分攤時,沒有直接歸入最終的軟件系統(tǒng),而是借鑒典型瀑布模型的思路,即每一開發(fā)環(huán)節(jié)相互獨立進行,每一環(huán)節(jié)都相應產生本環(huán)節(jié)的成果,即項目子產品,并形成記錄在案的文檔。目的是為了體現(xiàn)項目中的關鍵環(huán)節(jié)如需求分析、質量管理及具體功能模塊的詳細成本信息,利于項目在各個階段實現(xiàn)相關成本的重點控制分析。
在實際開發(fā)過程中,每一環(huán)節(jié)的作業(yè)雖然有先后順序,但并非按照瀑布模型呈現(xiàn)嚴格的串行,而是在同一時點重疊并行(如在編寫代碼的同時已經在進行測試階段的規(guī)劃設計);有的作業(yè)環(huán)節(jié)如質量管理是由項目經理全程跟進的。對這5個項目子產品的成本發(fā)生情況在整個項目周期中進行實時追蹤記錄??梢苑从吵鲰椖康恼鎸嵾M度情況,及現(xiàn)階段成本耗費的重點環(huán)節(jié),為管理和監(jiān)督提供實時信息,以實現(xiàn)資源在各個時點的優(yōu)化配置。
表1為包含5個項目子產品的終端產品的成本分攤結果。由WBS劃分的項目作業(yè)、以此整合的作業(yè)中心與項目里程碑所拆分的項目子產品在研發(fā)流程上具有時間上的同步關系,所以啟動中心、執(zhí)行中心、質量監(jiān)控中心和維護中心內的作業(yè)都可以作為各個項目子產品的專屬作業(yè)直接歸集。只有支持中心各個作業(yè)成本需要按各個項目子產品生產耗時與整體項目周期的耗時比進行分配。
基于軟件開發(fā)項目層面建立起的作業(yè)成本分析體系,使財務追蹤和成本控制活動真正融入到了整個項目開發(fā)生命周期的日常管理活動中,也為全面預算管理體系的建立提供了條件。
表1 項目終端產品的實際成本構成
[1][美]Budd C I, Budd C S.掙值項目管理實踐指南[M].廣聯(lián)達軟件股份有限公司,譯.北京:電子工業(yè)出版社,2008.
[2][美]維索茨基,貝克,克蘭,等.有效的項目管理[M].李盛萍,譯.北京:電子工業(yè)出版社,2002.
[3]郝波.作業(yè)成本法與軟件開發(fā)項目造價管理[J].科學學與科學技術管理,2006,27(7):165-166.
[4]曹陽.作業(yè)成本管理在軟件服務業(yè)的應用[D].天津:天津大學,2010.
[5]寧亞平.作業(yè)成本法適用條件調查研究[J].財政研究,2012(3):79-80.
10.3969/j.issn.1673-0194.2015.15.004
F275.3
A
1673-0194(2015)15-0012-04
2015-06-08