李月娥
摘要:在國家頻出大力發展軟件信息服務業的政策催生下,現如今,該產業發展迅猛,市場潛力巨大。隨著互聯網+、云計算、AI等新技術層出不窮的大數據時代的到來,客戶的消費需求也在不斷細化,有特色的定制化需求越來越高。現有的成熟軟件功能已不能滿足特殊行業的個性化需求。如何提升軟件與行業的融合度,滿足客戶個性化需求,這是軟件企業共同面臨的技術難題。同時,軟件企業還面臨人力資源成本日益攀升、面對強勢的客戶無議價能力等壓力。綜上所述,雖然軟件產業市場潛力巨大,但軟件企業在客戶項目預算既定和企業人力成本俱增的雙重壓力下,如何提供滿足客戶定制化軟件需求的服務,傳統的軟件行業已受到了嚴重挑戰。為了能在激烈的市場競爭中生存和發展,軟件企業必須確保項目有一定的獲利空間。因此,有針對性的降低成本是諸多軟件公司可以采納的對策。定制軟件可以通過成本估算與成本控制來減少成本,提高軟件開發的質量和效率,對提高項目利潤起了積極的作用。本文主要研究了定制軟件項目成本估算與成本控制的方法,希望能給有關專業人士帶來一定的參考與借鑒。
關鍵詞:定制軟件項目;成本估算;成本控制
軟件產業是信息產業中重要的組成部分,其發展關乎到經濟的發展,在社會信息產業中占有重要地位,同時其在維護國家安全、調整產業結構、推動信息產業的發展等方面發揮了重要作用。軟件產業作為新的經濟形態,為社會發展提供新的經濟增長點,伴隨軟件業務盈利規模的不斷擴大,眾多高新企業如雨后春筍般應運而生,都希望能在科技紅利中分一杯羹。因此,軟件行業的市場競爭異常激烈,能夠低成本、高質量、科學化的開發軟件關系到軟件公司的生存,對軟件項目做好成本預估和成本控制是非常有意義的。
一、軟件項目成本估算的方法
預估軟件開發項目的成本時,要把從軟件計劃、需求分析、設計、編碼、單元測試、集成測試到認證測試各個環節需要的人力、資源、管理等成本估算在內,以基本公共衛生軟件設計為例,在軟件計劃和需求分析階段,軟件公司技術人員要和基層基本公共衛生服務人員詳細溝通,了解軟件在居民健康檔案輸入、慢病管理、老年人健康管理等領域的功能,這個溝通階段需要技術人員耗費人力成本和交通成本等,在軟件編制成本預算中要對于相關成本進行體現。此外,由于定制軟件開發項目在估算成本時比傳統開發項目要嚴格,仍以基本公共衛生服務軟件設計為例,在方案提出、范圍管理、變更管理等環節都要求非常規范且細致,所以在預估軟件開發的成本時必然需要更加科學且做到細致規范。在預估軟件開發項目的成本時,為了估算相對準確,需全面考慮到定制軟件從需求調研、開發、實施上線、試運行、終驗到運維所有階段和節點可能需要投入的所有資源。這些資源主要包括所有人員的薪酬,確保系統順利運轉的硬件設備以及外購開發工具等。另外,為充分準確且深入地了解和理解客戶的真實需求,開發人員往往需要進駐到客戶現場與客戶反復溝通與確認。因此,通常還會發生差旅成本。如果項目周期較長,在項目所在地租房更經濟時,企業往往選擇租房,此時,還需預估項目租房成本。軟件企業在預估定制開發的項目成本時,由于該軟件是獨特的,缺少以往的歷史數據體系作為支撐,因而前期預估的成本數據與實際成本往往存在較大的差異。成本估算是管理成本至關重要的環節,它包含了對項目大小、項目工作量、項目需要的資源等各方面的預估。
通常來說,在預估項目大小、工作量時,通常可以采用較多的方法進行預估。
首先,專家意見法,該方法是常用的預估方法。該方法要求通過與基本公共衛生工作人員的描述,專家軟件的復雜程度和需要的特殊設備給出自己的成本預估意見。由于工作人員了解不到專家給出方法的具體情況,所以此方法通常是依靠專家以往的經驗做出的。
其次,類比分析法。該方法要求工作人員將當前開發的項目同以往的項目進行類比,總結出兩者的異同點,然后結合現實特點進行修整。這些記錄通常會記入檔案,在日后的評估中用作參考。類比分析法主要包括以下幾個步驟:
第一步 篩選參考項目。對于基本公共衛生服務軟件成本預算,可以參考公立醫院之間的醫療聯合體軟件設計項目。
第二步 獲得與被選作為類比項目的信息。主要有工程進度、工作量、項目大小等;
第三步 獲得類比項目的工作進度與工作量的平均值,并以此平均值作為新項目的工作進度與工作量。定制單位的基本公共衛生服務人口數量和功能數量能夠決定軟件工程的大小,根據醫聯體軟件服務人口的數量以及軟件功能數量預估基本公共衛生服務軟件的平均工作進度。
第四步 分析新項目的工作量與工作進度的影響因素,并據此對初始估算值做出適當的調整。基本公共衛生服務軟件以居民檔案管理功能為基礎,在對居民健康檔案有效管理層面上分化出慢病管理功能、兒童管理功能、孕產婦管理功能等,因此,在軟件設計中必須將居民健康檔案管理功能的設計放在核心位置,設計進度在該階段不可操之過急。
類比估算法的優勢在于成本低、操作簡單,適用于難以取得項目資料的項目之中。然而,該方式對于歷史數據的可用性存在一定的依賴性,項目范例是影響估算結果是否準確的重要因素。
再者,分解工作量法。該方法首先通過最小的單元來描述軟件,然后預估每個小單元所需的工作量。對于簡單的小項目,將簡單的預估值進行累加即可,但是難度較大的項目還需后續的多項工作。
除此之外還有構建模型法和合成技術法。構建模型法先調查可能會干擾工作量的原因,在基本公共衛生服務軟件設計中,最大的干擾因素便是疾病內容有交叉,可能導致軟件各模塊之間必須交叉融合。然后建造數學模型,在建造模型時,包含了對項目規模、工作人員的經驗、所需語言等因素的掌控。合成技術法則是通過對多種技術進行結合,整合出最優估算方法的技術,通常被稱為“合成技術”,譬如貝葉斯分析法。此方法可以通過對多項技術的結合,糾正單一技術中可能存在的誤差,能有效提高預估水平的準確性。但此方法也存在弊端,它要估算出每項技術的成本,這無疑增加了預估工作的成本和工作量。
二、軟件項目成本估算的方法分析
綜上所述,諸如模型估算法、專家意見法、類比分析法在內的多種方法都是較為常用的,但他們存在的諸多弊端影響到項目管理。一方面,此類方法往往是只針對整個項目的成本進行預估,并不能估算到項目開發每個環節的成本,不利于掌握和控制各個環節的成本。另一方面,多數情況下,往往只重視對軟件開發與實施成本費用的預估而忽略對維護成本的預估,然而維護成本通常是巨大的,若此費用被忽視掉,對軟件項目整體成本的估算一定是不準確的。
三、軟件開發項目成本控制存在的主要問題
首先,現階段,許多軟件企業的軟件開發項目成本控制體制中存在著權、責、利三者分離的問題,部分項目經理主要將成本管理責任推給成本管理部門,總體來說成本管理體系不夠完善。
其次,項目人員的觀念陳舊,缺乏成本控制意識,這一點在項目不進行單獨核算的企業中表現的尤為明顯。項目經理職能存在著重技術、輕管理的問題,將項目成本管理責任推給財務部門。
最后,所謂工期成本指的是在工程施工中為達到工期目標所采用的各項措施所產生的費用,作為項目管理目標的三大目標之一,工期目標是否可以順利實現,會造成工期成本出現變化。雖然對于項目工期,軟件企業有著明確要求,但是由于缺乏對于工期與成本關系的研究,加上對于工期成本的重視程度不夠以及對工期缺乏正確的認識,常常會為了追趕工期進度而導致額外項目成本的增加。
四、軟件項目成本控制的方法
控制軟件項目的成本通常是從項目開始運作開始的,讓每個環節都按既定的預估水平進行運作,從而實現對各個步驟的控制。
(一)關于對變更需求的控制
在軟件項目確立之前,研究者要在充分了解客戶需求的基礎上出具報告,通過與客戶的溝通協調,將方案盡可能完善的體現在合同中,此流程關系到項目能否按時按期交付。然而,在開發軟件的整個過程中,客戶可能會變更需求,這就需要有針對變更需求的控制。
之所以會出現對變更需求的控制,是因為在開發軟件前,客戶通常不能清晰的認識到自己的需求。同時,開發者在形成分析方案時通常加入很多主觀因素。隨著軟件的開發和客戶對軟件的了解度加深,他們更能意識到自己的需求,從而向開發者提出相應的修改意見,這對于彼此雙方無疑都是不利的。
對于定制型軟件,若客戶和技術人員在軟件開發前沒有達成一致的方案,加之產品的技術要求比較高、工程量比較大,若出現客戶不滿意需要更改方案而合同中無法對此進行體現時,對企業造成的經濟損失往往高于預估值。
要控制好對需求的變更,前提是開發者和客戶做好需求度溝通,詳實的記錄好客戶的需求,同時將以往的經驗及可能出現的問題羅列給客戶,對于那些對自己的需求了解較清楚的顧客,只需告知他們哪些需求技術無法實現,以及實現需求后是怎樣運作的;對于那些不能清晰了解自身需求的顧客,要同他們進行深入且詳細的溝通,從而引導他們清晰的了解自己的需求。當需求認知達成共識后,要對分析方案進行簽字確認,并羅列到項目合同中。
項目合同還應說明在客戶需要改動需求時,如何進行協調處理。若是不至于影響開發方向的改動,可以根據實際情況滿足顧客的要求。此外,在軟件項目的研發過程中,為確保項目的順利進行,保質保量的完成開發任務,需要定期向顧客匯報進展及狀況,從而最大限度地減小需求變更對項目開發產生的負面影響。
(二)對人力資源成本的控制
對人力資源成本的控制是在軟件開發成本控制中一項重要的工作,控制人力資源成本并非控制工作人員的工作量,而是通過提高工作組的工作效率來降低成本。軟件開發項目組中,每個人的知識技能水平及工作經驗往往是不同的,加之每個人有各自不同的脾性,如何科學合理的調配一個高效率的團隊,勢必關系到軟件開發的效率和成本的高低。
因而,在軟件開發項目組中,每人都要有高昂的工作精神和良好的團隊意識,既要有“補位”意識,還要盡可能大的發揮自身的潛能,為團隊帶來創收。此外,項目組的人員穩定也是非常重要的。對于項目管理者來說,如何針對每個人的特點調配好人員的分工,了解員工的需求和困難,為研發人員創造一個良好的工作氛圍,是增強團隊的團結力和凝聚性的關鍵。軟件研發過程中,一旦出現管理問題或技術問題,項目管理者要能夠及時高效的解決。
五、結語
綜上所述,隨著對軟件項目所需成本的預估和控制成本的深入研究,軟件產業的發展態勢也較為樂觀,整項研究不僅能提高軟件開發的質量和效率,還能有效的減少成本,有利于研發人員科學合理的對項目進行開發和研究,這無疑能促進軟件產業朝著健康良好的態勢發展。
參考文獻:
[1]吳葉青.功能點在軟件造價評估中的應用[J].艦船電子工程,2018,3808: 21-26.
[2]許軍.成本工程在軍工科研事業單位運用的探討[J].現代國企研究,2018,20: 117+116.
[3]張紅金.成本管理在IS項目管理中的應用[J].電子技術與軟件工程,2018,06: 57-59.