軟件項(xiàng)目成本管理論文
軟件項(xiàng)目成本管理論文
軟件項(xiàng)目管理是軟件項(xiàng)目開發(fā)中進(jìn)行規(guī)范化管理、保證軟件項(xiàng)目質(zhì)量和進(jìn)行成本控制的最重要的問題之一,成本管理是軟件項(xiàng)目管理中的一個(gè)核心組成部分。下面是學(xué)習(xí)啦小編為大家整理的軟件項(xiàng)目成本管理論文,供大家參考。
軟件項(xiàng)目成本管理論文范文一:淺析軟件企業(yè)項(xiàng)目成本管理
摘要:軟件企業(yè)是我國高新技術(shù)產(chǎn)業(yè)的重要組成部分,隨著軟件企業(yè)的競爭的加劇,軟件企業(yè)項(xiàng)目成本管理顯得尤為重要。本文通過對軟件企業(yè)項(xiàng)目成本管理中存在問題的分析,結(jié)合作者的工作實(shí)際,有針對性地提出了加強(qiáng)軟件企業(yè)項(xiàng)目成本管理和控制的建議。
關(guān)鍵詞:軟件企業(yè);項(xiàng)目成本;管理;建議
一、軟件企業(yè)項(xiàng)目成本管理概述
軟件企業(yè)項(xiàng)目管理過程包括可行性評審、項(xiàng)目評估、立項(xiàng)和計(jì)劃以及項(xiàng)目監(jiān)控及結(jié)項(xiàng)。其項(xiàng)目成本主要有三部分組成:(1)人工成本,包括項(xiàng)目組成員的工資和社保費(fèi)用、外包人員的工資費(fèi)用、加班及其他補(bǔ)貼等;(2)資產(chǎn)類成本,即資產(chǎn)購置成本,如計(jì)算機(jī)軟硬件、外部設(shè)備、網(wǎng)絡(luò)設(shè)施以及安裝工具的購置費(fèi)用等;(3)管理費(fèi)用,包括房屋租賃費(fèi),辦公費(fèi)、差旅費(fèi)、加班餐費(fèi)等。
完善的軟件項(xiàng)目成本管理能夠確保企業(yè)在預(yù)算內(nèi)按時(shí)、按質(zhì)、按量完成項(xiàng)目目標(biāo),加強(qiáng)項(xiàng)目成本管理是企業(yè)增加利潤增長點(diǎn)、提高核心競爭力,求得生存和發(fā)展的關(guān)鍵,因此對項(xiàng)目管理進(jìn)行成本全過程控制尤為重要。
二、軟件企業(yè)項(xiàng)目成本管理中存在的問題
1.成本預(yù)算流于形式
(1)立項(xiàng)環(huán)節(jié)的成本預(yù)算流于形式。雖然成本預(yù)算不可能完全精確,但要做到對成本支出方向和金額范圍有所約束,然而在很多企業(yè)中預(yù)算管理未能有效實(shí)施,原因在于成本預(yù)算的不科學(xué)、不合理,與實(shí)際存在很大的出入。由于成本預(yù)算對單位的所有人員都具有約束力,在一定程度上直接影響項(xiàng)目組人員的收入水平和公司的利潤,從而編制的預(yù)算在一定程度上存在著人為控制因素。
(2)盡管成本預(yù)算審核和批準(zhǔn)是減少人為影響的重要手段,但目前企業(yè)成本預(yù)算的審批流于形式,一般是項(xiàng)目經(jīng)理編制成本預(yù)算后,主管項(xiàng)目經(jīng)理、財(cái)務(wù)經(jīng)理、總經(jīng)理出于種種原因很少會(huì)提出異議,因此預(yù)算的審核和審批只是在走流程。預(yù)算是全年成本支出的指導(dǎo),缺乏與實(shí)際相吻合的預(yù)算,成本管理和控制的效果可想而知。
2.績效考核制度有待加強(qiáng)
人工預(yù)算的準(zhǔn)確性和績效考核在項(xiàng)目成本管理中具有非常重要的作用。一般的,在軟件項(xiàng)目成本中人工成本要占項(xiàng)目總成本的60%左右。人工成本主要取決于開發(fā)人員的水平、公司的薪酬體系等因素,同時(shí)也取決于項(xiàng)目的進(jìn)展情況。目前,績效考核比重在人工成本中僅占15%,占比偏低,這就不能更好的激勵(lì)項(xiàng)目組成員工作的積極性。
3.資金成本和風(fēng)險(xiǎn)成本管理執(zhí)行和控制環(huán)節(jié)有待細(xì)化
資金成本是指公司使用資金所產(chǎn)生的相關(guān)費(fèi)用。由于一般項(xiàng)目所需資金都由公司統(tǒng)一提供,因此在軟件項(xiàng)目實(shí)施過程中必然忽視現(xiàn)金使用狀況,更不會(huì)考慮項(xiàng)目投入會(huì)給公司帶來什么樣的資金壓力和項(xiàng)目效益狀況。在以項(xiàng)目為主的軟件公司中,項(xiàng)目收入是公司主要資金來源,項(xiàng)目支出是主要的資金流出,公司資金流是所有項(xiàng)目資金流扣除期間費(fèi)用后的余額。所以每個(gè)項(xiàng)目的資金流都對公司資金狀況產(chǎn)生影響?,F(xiàn)金流是所有公司的血脈,特別是對于中小軟件公司,如果不加強(qiáng)項(xiàng)目資金流管理,可能造成公司資金周轉(zhuǎn)困難,最終會(huì)影響公司的良好運(yùn)轉(zhuǎn),嚴(yán)重的甚至?xí)归]。
風(fēng)險(xiǎn)成本是指項(xiàng)目實(shí)施過程中由于一些不確定因素的影響而可能付出的代價(jià),在項(xiàng)目成本管理過程中,項(xiàng)目風(fēng)險(xiǎn)和風(fēng)險(xiǎn)成本不太受關(guān)注,但風(fēng)險(xiǎn)一旦出現(xiàn),就會(huì)給項(xiàng)目效益帶來很大影響。
4.項(xiàng)目過程管理有待細(xì)化
項(xiàng)目過程管理包括項(xiàng)目立項(xiàng)、計(jì)劃、監(jiān)控三個(gè)過程,項(xiàng)目立項(xiàng)過程指當(dāng)產(chǎn)品部門策劃或已承接某項(xiàng)研發(fā)、實(shí)施、維護(hù)任務(wù),并對該任務(wù)有時(shí)間、成本、資源上的初步計(jì)劃時(shí),必須以立項(xiàng)的方式及時(shí)通知事業(yè)部,獲得資源及管理上的支撐。項(xiàng)目計(jì)劃過程指收到立項(xiàng)通知書后15個(gè)工作日內(nèi),必須完成項(xiàng)目計(jì)劃及預(yù)算的制定并提交審批;項(xiàng)目計(jì)劃是項(xiàng)目考核的基準(zhǔn)。項(xiàng)目監(jiān)控過程指跟蹤了解項(xiàng)目計(jì)劃的各項(xiàng)參數(shù)如進(jìn)度、工作量、費(fèi)用、資源、工作成果等,及時(shí)了解項(xiàng)目的實(shí)際進(jìn)展情況,當(dāng)項(xiàng)目執(zhí)行效能嚴(yán)重偏離項(xiàng)目計(jì)劃時(shí),及時(shí)分析原因,采取適當(dāng)?shù)募m正措施。目前項(xiàng)目過程管理比較全面,但需要細(xì)化,比如預(yù)算管理包括工程預(yù)算和研發(fā)預(yù)算,但項(xiàng)目考核只對工程預(yù)算部分進(jìn)行考核,不能有效避免人為調(diào)節(jié),最終造成項(xiàng)目組考核都是滿分,成為虛設(shè),項(xiàng)目管理就失去了意義。
5.項(xiàng)目組人員綜合素質(zhì)有待提高
在軟件項(xiàng)目成本管理中,人是核心,制度和工具都圍繞人發(fā)生作用。但軟件項(xiàng)目的參與者基本上都是以專業(yè)技術(shù)人員為主,財(cái)務(wù)管理人員只占很少比例,尤其是項(xiàng)目的管理者大多數(shù)是專業(yè)技術(shù)部門出身,本身缺乏系統(tǒng)的財(cái)務(wù)管理理論知識和實(shí)踐工作經(jīng)驗(yàn).在軟件項(xiàng)目成本管理過程中,僅局限于項(xiàng)目進(jìn)度、范圍、人員工資和差旅費(fèi)用等方面的管理,對于項(xiàng)目成本預(yù)算、成本管理和控制、成本指標(biāo)分析等就顯得力不從心了,使得成本管理工作難以取得實(shí)效。
三、加強(qiáng)軟件企業(yè)成本管理的建議
針對成本管理容易出現(xiàn)的問題,加強(qiáng)軟件企業(yè)成本管理和控制勢在必行。
1.加強(qiáng)項(xiàng)目成本管理制度建設(shè),嚴(yán)格執(zhí)行項(xiàng)目成本預(yù)算管理
建立完善的項(xiàng)目成本管理制度,加強(qiáng)事前、事中和事后的管理和控制。成立項(xiàng)目管理領(lǐng)導(dǎo)小組,建立成本預(yù)算、成本控制、成本考核內(nèi)部管理制度,加強(qiáng)項(xiàng)目執(zhí)行過程中的管理和控制。保證管理的科學(xué)合理,執(zhí)行的真實(shí)有效。
針對成本預(yù)算流于形式的問題,必須切實(shí)做好審批環(huán)節(jié),建議根據(jù)不同人員的業(yè)務(wù)水平和綜合能力,審批相關(guān)的內(nèi)容,對項(xiàng)目成本預(yù)算進(jìn)行嚴(yán)格的審批。為解決審批人員的業(yè)務(wù)水平不夠而出現(xiàn)預(yù)算審批走過場的問題,應(yīng)將審批內(nèi)容與審批人員的年度考核相掛鉤,從而防范審批人員不負(fù)責(zé)任、隨意審批的現(xiàn)象。
在軟件項(xiàng)目管理全過程中,成本預(yù)算是關(guān)鍵,必須對預(yù)算成本進(jìn)行正確的認(rèn)識。合理的成本預(yù)算是成本管理的起點(diǎn),在項(xiàng)目未實(shí)施前對成本進(jìn)行準(zhǔn)確估計(jì)是相當(dāng)困難的,很多管理者認(rèn)為項(xiàng)目成本預(yù)算無法做到準(zhǔn)確,對項(xiàng)目管理失去信心。成本預(yù)算便于管理者在項(xiàng)目實(shí)施之前對其可能的成本及利潤水平進(jìn)行事前評價(jià),以判斷即將實(shí)施的項(xiàng)目能否給公司帶來利潤,以及帶來多大的利潤和利潤率,項(xiàng)目完成后將實(shí)際成本與預(yù)算成本進(jìn)行比較,以判斷項(xiàng)目的實(shí)際利潤水平以及實(shí)際利潤水平與預(yù)計(jì)利潤之間的差異。評價(jià)成本的超支和節(jié)約情況,并且根據(jù)成本考核結(jié)果進(jìn)行獎(jiǎng)懲,鼓勵(lì)節(jié)約,懲罰超支。 2.要進(jìn)行合理的績效考核
要結(jié)合公司的實(shí)際,適當(dāng)借鑒其他公司的成功做法,建立考核機(jī)制,制定績效考核的相關(guān)指標(biāo),盡量以可量化的指標(biāo),加強(qiáng)對公司全員的考核。將成本控制情況與個(gè)人待遇相掛鉤,對于節(jié)約成本的給予控制效益一定比例的獎(jiǎng)勵(lì)。要實(shí)施項(xiàng)目獎(jiǎng)勵(lì)制度,制定出具有可操作性和實(shí)用性的獎(jiǎng)懲措施,在實(shí)際工作中能有章可循,便于操作,體現(xiàn)出公平性、合理性,從而激發(fā)員工參與成本管理和控制的積極性,更有利于為公司創(chuàng)造更多的效益。如在進(jìn)行薪酬方案設(shè)置時(shí),可將員工收入的較小部分(如30 %) 作為基本工資,每月按時(shí)發(fā)放,較大部分( 如70 %)作為績效,根據(jù)考核評價(jià)發(fā)放。采用這種低工資+高績效的方式,能有效促使員工發(fā)揮主觀能動(dòng)性,強(qiáng)化成本意識和節(jié)約意識,嚴(yán)格進(jìn)行成本管理和控制,從而提高項(xiàng)目的經(jīng)濟(jì)效益,最終實(shí)現(xiàn)增強(qiáng)公司盈利能力和參與市場競爭能力的目標(biāo)。同時(shí),在項(xiàng)目實(shí)施過程中要嚴(yán)格控制人工成本,盡快從項(xiàng)目中釋放出高級管理人員,在不影響項(xiàng)目進(jìn)度和質(zhì)量的前提下,適當(dāng)減少或調(diào)整其用工時(shí)長。
3.加強(qiáng)項(xiàng)目過程管理和監(jiān)控,進(jìn)行有效的成本估算和預(yù)算
項(xiàng)目預(yù)算是項(xiàng)目資源分配的依據(jù),也是成本管理和控制的電影票,在成本管理中具有重要作用。成本估算和預(yù)算是對完成項(xiàng)目所需的資源的合理估算。預(yù)算管理應(yīng)包括全預(yù)算管理,實(shí)行項(xiàng)目組成員全預(yù)算成本考核,而不是部分成本考核。在實(shí)際工作中成本估算方法就顯得尤為重要,通常有三種成本估算的方法:一是Delphi方法:是PERT與Delphi的結(jié)合方法(只有1名估算成員時(shí)為純粹的PERT方法)??梢杂脕砉烙?jì)軟件的規(guī)模、工作量或者成本等可量化的內(nèi)容。1-6名有相關(guān)經(jīng)驗(yàn)的估算成員分別按最佳的、可能的、悲觀的三種情況給出估計(jì)值,分別記作a、m、b,則估計(jì)結(jié)果按如下的公式計(jì)算:E=(a+4m+b)/6,E為得出的估算值。二是FP功能點(diǎn)法:是一種對軟件功能、大小進(jìn)行間接的、量化的度量方法,基于外部應(yīng)用接口和內(nèi)部應(yīng)用復(fù)雜性的主觀判斷以及全局性能特點(diǎn)綜合考慮。功能點(diǎn)從用戶的角度體現(xiàn)了一個(gè)應(yīng)用的大小。它通過對主要的外部數(shù)據(jù)錄入,輸出,文件類型等相關(guān)的信息處理功能的數(shù)量來度量軟件應(yīng)用。功能點(diǎn)分析是一種具有清晰商業(yè)意義的度量方法。它量化了軟件中包括的對軟件使用者有意義的功能。這種度量直接與軟件的商業(yè)需求有關(guān),可廣泛應(yīng)用于各種開發(fā)環(huán)境,并貫穿于整個(gè)開發(fā)周期。功能點(diǎn)度量本身也是由多個(gè)階段產(chǎn)生的。通過一系列標(biāo)準(zhǔn)化的基本準(zhǔn)則,每個(gè)商業(yè)功能根據(jù)其類型和復(fù)雜度都是一個(gè)數(shù)字指數(shù)。這些指數(shù)合起來給出了對規(guī)模的最初度量,然后與一些軟件相關(guān)因素結(jié)合,規(guī)范為一個(gè)整體。最終結(jié)果是一個(gè)數(shù)值,稱為功能點(diǎn)指數(shù),用來度量軟件產(chǎn)品的規(guī)模和復(fù)雜度。三是基于規(guī)模的工作量估算:在軟件或工作規(guī)模有了明確估算后,在規(guī)?;A(chǔ)上計(jì)算工作量的方法上述三種方法可根據(jù)公司具體情況進(jìn)行選擇,也可同時(shí)使用。在實(shí)際工作中再有經(jīng)驗(yàn)的專家也不可能使預(yù)算和實(shí)際成本完全一致,因此項(xiàng)目應(yīng)該預(yù)留5%- 10%的不可預(yù)見成本作為應(yīng)急項(xiàng)目成本。
4.樹立整體經(jīng)營意識,建立規(guī)范的成本管理體制
軟件企業(yè)必須加大對全體員工的經(jīng)營理念教育, 強(qiáng)化全員的經(jīng)營意識。根據(jù)實(shí)際情況,制定有針對性的成本管理辦法。要將責(zé)任落實(shí)到人、采取切實(shí)可行和具有較強(qiáng)操作性的措施,并激勵(lì)全員參與,才能嚴(yán)格控制項(xiàng)目成本。不同的項(xiàng)目有不同的成本控制目標(biāo),項(xiàng)目經(jīng)理是項(xiàng)目成本管理的第一責(zé)任人,加強(qiáng)項(xiàng)目成本管理要形成以項(xiàng)目經(jīng)理為核心的成本管理體系,并采取一定的激勵(lì)機(jī)制,使個(gè)人的收入、職務(wù)升降和項(xiàng)目的效益掛鉤,從而充分調(diào)動(dòng)職工的積極性和主動(dòng)性,共同為項(xiàng)目的成本管理獻(xiàn)計(jì)獻(xiàn)策,徹底打破干好干壞一個(gè)樣,干多干少一個(gè)樣的格局。
5.提高項(xiàng)目組人員綜合素質(zhì)
提高項(xiàng)目組人整體素質(zhì),既是新形勢下的客觀需要,也是軟件企業(yè)發(fā)展對項(xiàng)目組人員的新要求。提高項(xiàng)目組人員整體素質(zhì),必須加大對項(xiàng)目組人員培訓(xùn)的力度,建立良好的培訓(xùn)體系。不僅要提高本專業(yè)素質(zhì),還需加強(qiáng)財(cái)務(wù)管理理念。順應(yīng)信息時(shí)代節(jié)奏,必須熟諳此道,懂得此理,自覺地把加強(qiáng)學(xué)習(xí)、更新知識作為第一要?jiǎng)?wù)。勤“充電”,加足“油”,應(yīng)對挑戰(zhàn)勝一籌。項(xiàng)目組人員綜合素質(zhì)的提高,是軟件企業(yè)制勝的法寶。
基于成本管理的各個(gè)階段,強(qiáng)化成本的動(dòng)態(tài)控制,軟件項(xiàng)目成本管理就要根據(jù)公司實(shí)際情況和項(xiàng)目具體要求,利用公司的既有資源,在保證項(xiàng)目進(jìn)度、質(zhì)量達(dá)到客戶滿意的情況下,對項(xiàng)目進(jìn)行有效的成本組織、實(shí)施、控制、跟蹤,分析和考核等管理活動(dòng),最大限度的降低項(xiàng)目成本,提高項(xiàng)目利潤。
參考文獻(xiàn):
[1]劉 萍:項(xiàng)目成本管理[M]. 哈爾濱工業(yè)大學(xué)出版社,2011.
[2]賈經(jīng)董:軟件項(xiàng)目管理[M]. 高等教育出版社, 2012.
[3]任永昌:軟件項(xiàng)目管理[M].清華大學(xué)出版社.2012.
[4]蔡學(xué)兵:軟件項(xiàng)目成本管理的問題和對策研究[Z].廣東工業(yè)大學(xué)經(jīng)濟(jì)管理學(xué)院.2008.
軟件項(xiàng)目成本管理論文范文二:軟件項(xiàng)目成本估算研究
摘要:軟件項(xiàng)目成本估算是軟件項(xiàng)目成本管理的基礎(chǔ),也是整個(gè)軟件項(xiàng)目管理中的一個(gè)難點(diǎn)。對軟件項(xiàng)目成本估算步驟以及常用方法進(jìn)行了初步探究,并著重介紹了IFPUG和COCOMO這兩個(gè)參數(shù)模型的應(yīng)用方法。
關(guān)鍵詞:軟件項(xiàng)目成本估算;軟件估算;IFPUG;COCOMO
中圖分類號:TP301 文獻(xiàn)標(biāo)識碼:A 文章編號文章編號:16727800(2014)001002003
作者簡介作者簡介:龔銀鋒(1983-),男,碩士,寧波數(shù)字電視有限公司項(xiàng)目經(jīng)理,研究方向?yàn)檐浖?xiàng)目管理、業(yè)務(wù)運(yùn)營支撐系統(tǒng)。
0 引言
項(xiàng)目的成本管理,是指在規(guī)定時(shí)間內(nèi),為確保項(xiàng)目目標(biāo)的實(shí)現(xiàn),對項(xiàng)目實(shí)際發(fā)生的成本支出采取的各種控制措施和控制過程。其管理活動(dòng)包括:資源需求預(yù)測、成本估算、成本預(yù)算和成本控制[3]。成本估算是后續(xù)成本管理活動(dòng)的前提,也是成本管理中的重點(diǎn)與難點(diǎn)。
軟件項(xiàng)目的成本估算,并非傳統(tǒng)資金意義上的估算。由于人的腦力勞動(dòng)是軟件開發(fā)的主體活動(dòng),因此軟件開發(fā)的主要投入在于支付開發(fā)人員腦力勞動(dòng)的報(bào)酬。不同軟件開發(fā)單位的薪資水平存在很大差別,所以從普適性考慮,軟件項(xiàng)目成本估算研究的主要范圍是軟件項(xiàng)目的工作量和工作進(jìn)度[6]。因此,衡量軟件成本的常用單位有人天、人月、人年等形式,并且有轉(zhuǎn)換系數(shù)可在不同單位間進(jìn)行換算。在估算出軟件開發(fā)所需的人力成本之后,再根據(jù)開發(fā)單位的實(shí)際情況和項(xiàng)目內(nèi)的其它費(fèi)用即可估算出相應(yīng)的成本[4]。
1 軟件項(xiàng)目成本估算階段
軟件項(xiàng)目的成本估算,一般需要經(jīng)過以下3個(gè)階段:
(1)規(guī)模估算階段。規(guī)模估算是指對軟件的大小進(jìn)行量化衡量,它是后續(xù)工作量估算的前提。估算軟件大小有兩種基本方式:估算軟件所解決問題的大小和數(shù)量,比如功能點(diǎn),因此也稱功能規(guī)模的度量;估算解決方案的大小即技術(shù)規(guī)模的度量,比如代碼行數(shù)。一般在項(xiàng)目初期主要以估算問題大小為主,隨著項(xiàng)目的開展逐步采用以估算解決方案大小的方式。
(2)工作量和進(jìn)度估算階段。工作量估算是對軟件開發(fā)所需人力的估算,這是軟件項(xiàng)目的主要成本。進(jìn)度估算將估算項(xiàng)目各任務(wù)單元可支配的時(shí)間,并制定里程碑計(jì)劃。工作量估算和進(jìn)度估算共同決定了項(xiàng)目團(tuán)隊(duì)的規(guī)模和結(jié)構(gòu)[4]。
(3)估算反饋階段。包括對成本估算方法本身的反饋,以及估算實(shí)踐中的階段性結(jié)果反饋[6]。在初期對項(xiàng)目掌握的情況較少并且仍有較多不確定性,隨著項(xiàng)目開展可了解到更多的信息以及既成事實(shí)后的情況。因此,通過不斷地進(jìn)行階段性估算結(jié)果反饋,有利于調(diào)整估算方法相關(guān)數(shù)據(jù),從而提高估算結(jié)果的精確性。
2 軟件成本估算方法
軟件成本估算方法主要有以下4種:類比估算法、項(xiàng)目分解法、專家估算法和參數(shù)模型法。
(1)類比估算法。類比估算法也稱基于案例的推理[2],即從已完成的類似項(xiàng)目的實(shí)際成本來估算新項(xiàng)目的成本。估算過程中,需確定項(xiàng)目之間的各項(xiàng)差異,并確定各項(xiàng)修正系數(shù),對各項(xiàng)數(shù)據(jù)加以運(yùn)算調(diào)整。
(2)項(xiàng)目分解法。需要對項(xiàng)目進(jìn)行分解,根據(jù)分解的先后順序不同,可分為自上而下估算法和自下而上估算法。自上而下估算法的思想是從項(xiàng)目整體進(jìn)行推算,將已估算出的項(xiàng)目整體工作量,按比例分?jǐn)傊另?xiàng)目的各項(xiàng)活動(dòng)中去。該方法比較適合在項(xiàng)目初期的總體設(shè)計(jì)中運(yùn)用[8]。自下而上估算法與自上而下估算法正好相反,這種方法是將項(xiàng)目逐層分解成足夠基本明確工作量的子任務(wù),在測算各子任務(wù)成本后,將它們累計(jì)起來就是整個(gè)軟件項(xiàng)目的成本。這種方法更適用于項(xiàng)目后期或分解后的子項(xiàng)目成本估算。
(3)專家估算法。邀請對軟件應(yīng)用領(lǐng)域或開發(fā)環(huán)境有豐富知識的專家對該軟件項(xiàng)目進(jìn)行工作量估算,當(dāng)遇到一個(gè)與已有軟件項(xiàng)目類似的新項(xiàng)目時(shí),可邀請熟悉原軟件項(xiàng)目的人員作為專家。
為了避免單個(gè)專家主觀因素的偏向性,該方法大都采取邀請多個(gè)專家進(jìn)行估算,并對多個(gè)估算結(jié)果進(jìn)行綜合。其中由美國蘭德公司(RAND Corporation)推廣的Delphi法正是匯集多個(gè)專家意見的技術(shù),其步驟大致如下[10]:①組織者向各專家提供軟件規(guī)格說明書和估算表格供他們進(jìn)行研究。估算表中應(yīng)包括軟件成本估算的最小值(ai)、最有可能值(mi)、最大值(bi)以及簡要說明和填表時(shí)間;②在專家研究軟件規(guī)格說明后,組織者召集他們召開討論會(huì)議。會(huì)上專家可向組織者提問,組織者也可向?qū)<医榻B類似軟件的有關(guān)情況,專家之間也可展開討論;③專家填寫估算表格,并匿名提交;④組織者對表格數(shù)據(jù)進(jìn)行匯總和分類摘要,并將結(jié)果反饋給各專家。Delphi法中的估算值匯總可用三點(diǎn)估計(jì)法,設(shè)各專家的估算期望值為Ei,最終估算期望中值為E,則有Ei=(ai+4mi+bi)/6,E=sum(Ei)/n;⑤組織者召集專家開會(huì),對估算結(jié)果進(jìn)行討論;⑥各專家研究估算結(jié)果,重新提交一份估算表格。重復(fù)④至⑥步驟,直至獲得一個(gè)大多數(shù)專家認(rèn)可的估算值。
Delphi法可以避免集體討論盲目屈從權(quán)威或多數(shù)的缺陷,消除相互間的影響,能讓專家充分表達(dá)各自見解,集思廣益。然而該方法實(shí)施過程繁瑣,并且非常耗時(shí)。
(4)參數(shù)模型法,即通過采用一個(gè)或多個(gè)數(shù)學(xué)公式得出估算值的方法。這些數(shù)學(xué)公式一般是在搜集大量歷史軟件項(xiàng)目數(shù)據(jù)的基礎(chǔ)上,進(jìn)行數(shù)學(xué)建模得出經(jīng)驗(yàn)公式,使用起來比較方便快捷。但一般都需要經(jīng)過一定的校準(zhǔn)之后才具有實(shí)際參考意義。
3 IFPUG
在規(guī)模估算階段,比較流行的參數(shù)模型有IFPUG(International Function Point Users Group,國際功能點(diǎn)用戶協(xié)會(huì))功能點(diǎn)分析法。該方法最初是由IBM公司的工程師Allan Albrecht所設(shè)計(jì)的自頂向下法,后被IFPUG所采用、發(fā)展和推廣,并出版了多個(gè)版本的功能點(diǎn)計(jì)算實(shí)踐手冊[7]。該方法是目前應(yīng)用最廣泛的軟件規(guī)模度量技術(shù),在我國的軟件行業(yè)軟件工程定額標(biāo)準(zhǔn)(2009版)中也參考了該方法。該方法的基本步驟如下: (1)把軟件系統(tǒng)分解為如表1所示的5類功能點(diǎn),并估算各類功能點(diǎn)的數(shù)量(FPi)[1]。
(2)給各功能點(diǎn)分配復(fù)雜度權(quán)重(Wi),如表2所示[2]。
在給各功能點(diǎn)分配權(quán)重時(shí),有定量的判斷規(guī)則。判斷ILF和EIF的復(fù)雜度依據(jù)的是其中所包含的數(shù)據(jù)元素類型數(shù)(data element type,DET)和記錄元素類型數(shù)(record element type,RET)。它們的判斷表格如表3所示[5]。
而對EI、EO和EQ復(fù)雜度的判斷,除了DET外還需要依據(jù)所涉及的文件類型數(shù)(file type referenced,F(xiàn)TR),并且有所不同。EI的復(fù)雜度判斷表格如表4所示[5],EO和EQ復(fù)雜度判斷表格如表5所示[5]。
(3)計(jì)算出一個(gè)未修正的功能點(diǎn)數(shù)(Unadjusted Function Point Count,UFPC)[9]:
UFPC=sum(FPi×Wi)。
(4)計(jì)算調(diào)整后的功能點(diǎn)數(shù)。僅從功能點(diǎn)數(shù)和其本身的復(fù)雜度,不能全面地反映系統(tǒng)規(guī)模,為此IFPUG還引入了14個(gè)系統(tǒng)特性(general system characteristic)對UFPC進(jìn)行修正:數(shù)據(jù)通信、分布式數(shù)據(jù)處理、性能、可配置性、事務(wù)效率、實(shí)時(shí)數(shù)據(jù)輸入、終端用戶易用性、在線升級、復(fù)雜運(yùn)算、代碼復(fù)用性、安裝簡易程度、操作方便性、多場合適應(yīng)性、易于調(diào)整變更[1]。將該系統(tǒng)特性(Fi)按對系統(tǒng)規(guī)模的影響程度劃分為6個(gè)級別,從無影響到最大影響分別用數(shù)字0~5表示,這樣最終的功能點(diǎn)數(shù)FP可由以下公式計(jì)算得出:
FP= UFPC×(0.65+0.01×sum(Fi))
上式中的0.65和0.01均為經(jīng)驗(yàn)常量。
4 COCOMO
在工作量估算階段,常用的參數(shù)模型有COCOMO(Constructive Cost Model, 結(jié)構(gòu)化成本模型)。該模型是由Barry Boehm在1981提出的(因此也稱為COCOMO81模型),是他研究了美國TRW公司的大量軟件項(xiàng)目后,推導(dǎo)出的一個(gè)成本估算模型[7]。該模型按詳細(xì)程度,分成基本型、中等型和詳細(xì)型?;拘桶匆韵鹿綐?gòu)建[10]:
E=a×Sb。
其中,E表示工作量,是按人月度量的;S是指規(guī)模,是按千行源代碼為單位的;a、b是常量,常量的選擇與軟件項(xiàng)目的類型有關(guān),Boehm把系統(tǒng)類型分為3種,如表6所示[10]。
中等型模型的計(jì)算公式最終調(diào)整為:
E=a×Sb×EAF ,其中EAF=∏15[]i=1Fi
詳細(xì)模型是對中等模型的進(jìn)一步擴(kuò)展,其基本公式與中等模型的公式相同。它把系統(tǒng)劃分為系統(tǒng)層、子系統(tǒng)層、模塊層,按這3層提供不同的成本驅(qū)動(dòng)因素表,供不同層次估算使用。同時(shí)還將模型常量按開發(fā)階段的不同進(jìn)行一定的調(diào)整。
COCOMO81推出后,在軟件業(yè)得到了廣泛應(yīng)用,也取得了良好效果。但軟件工程技術(shù)突飛猛進(jìn),新的軟件過程模型不斷涌現(xiàn),COCOMO81的應(yīng)用漸漸遇到了更多的困難。為了適應(yīng)新的需要,Boehm與其合作者對COCOMO進(jìn)行了不斷改進(jìn),在1996年正式發(fā)布了第一個(gè)版本的COCOMOⅡ[6],在COCOMOⅡ中對COCOMO81做了較大變更,比如劃分為應(yīng)用組裝模型、早期設(shè)計(jì)模型、后構(gòu)架模型。早期設(shè)計(jì)模型和后架構(gòu)模型的計(jì)算公式均為[6]:
PM=A×SE×∏n[]i=1EMi
其中,PM為工作量,單位為人月,A為常量3.13(CO COMOⅡ2003版),S是指規(guī)模(按千行源代碼為單位),EMi為工作量系數(shù),類似于COCOMO81中的工作量因素,在早期設(shè)計(jì)模型中概括為7個(gè)(式中n=7),而在后架構(gòu)模型中擴(kuò)展為17個(gè)(式中n=17)。E由以下公式計(jì)算所得[6]:
E=B+0.01×∑5[]i=1SFj
其中,B為常量0.93(COCOMOⅡ2003版)[6], SFj為:有先例、開發(fā)靈活性、架構(gòu)/風(fēng)險(xiǎn)解決方案、團(tuán)隊(duì)凝聚力、過程成熟這5個(gè)特性各按6個(gè)等級取值而來的比例因子[6]。
5 結(jié)語
軟件項(xiàng)目估算的目的不是預(yù)測項(xiàng)目實(shí)施的結(jié)果,而是幫助確定項(xiàng)目目標(biāo),使其在合理范圍內(nèi),從而能讓項(xiàng)目在可控狀態(tài)下達(dá)成項(xiàng)目目標(biāo)[11]。軟件的估算離不開歷史數(shù)據(jù)的支撐,雖然有行業(yè)數(shù)據(jù)參考,但其準(zhǔn)確度非常低,不同開發(fā)組織的生產(chǎn)率水平相差非常大,因此需要盡早積累開發(fā)組織自身的歷史數(shù)據(jù)??蓮囊唤M少量的數(shù)據(jù)開始,例如:每人每月完成的代碼行數(shù)、交付一個(gè)用戶故事的平均時(shí)長、BUG出現(xiàn)的概率以及修復(fù)時(shí)長等。
參考文獻(xiàn)參考文獻(xiàn):
[1] IFPUG.Function point counting practices manual[M].Westerville:IFPUG,1999.
[2] BOB HUGHES,MIKE COTTERELL.軟件項(xiàng)目管理[M].第5版.北京:機(jī)械工業(yè)出版社,2010.
[3] 池仁勇.項(xiàng)目管理[M].第2版.北京:清華大學(xué)出版社,2009.
[4] 房東.軟件項(xiàng)目估算模型研究與實(shí)踐[D].濟(jì)南:山東大學(xué),2006.
[5] 胡云龍.軟件規(guī)模度量方法介紹[J].計(jì)算機(jī)時(shí)代,2006(7):1721.
[6] 蔣敏迪.軟件成本估算模型及其實(shí)現(xiàn)[D].廣州:中山大學(xué),2004.
[7] 李莉.基于功能點(diǎn)的COCOMOⅡ估算模型研究和應(yīng)用[D].廈門:廈門大學(xué),2008.
[8] 劉瑞河,陳志成.軟件項(xiàng)目管理中的成本估算[J].江西理工大學(xué)學(xué)報(bào),2007,28(1):3639.
[9] 舒小仙.軟件項(xiàng)目管理的成本估算[J].中國水運(yùn),2008,8(12):8081.
[10] 鄭人杰,殷人昆,陶永雷.實(shí)用軟件工程[M].第2版.北京:清華大學(xué)出版社,1997.
軟件項(xiàng)目成本管理論文相關(guān)文章: