《预狈l》105了,l只月加测园地·软件开发成本预测祀京计算机学院李树芬软件工程经济学是运用经济学、预测科学摘要来研究处理软件工程的间题,研究软件工程的有限资源情况下,如何做出综合性决策的一门随着软件工程、管理科学、经济学等多学新学科。5EE的形成、发展和应用,特别是科的日益相互渗透与发展,随着软件工程的不软件开发成本的科学顶测,必将对软件产业、断实践,逐步发展,形成了运用经济学观念、对经济发展带来深刻的影响和起到良好的推动方法研究、解决软件工程问题的软件工程经济作用。学o;neernflwa:。neonoes(5EE一SEgjgEoi)目前的5EE内容,可归纳由两大部分组这一交叉新学科。本文旨在综合当前这一学科成。第一部分:软件成本预测方面。这部分内要点的基础上,对5EE的核心问题一软件成容是5EE的基础和核心。本预测,做一个概括二描述,并对著名的(1)软件生命周期模型:阶段与活动,COCOMO算法模型做一初步介绍。(2)软件成本预测技术,一、软件成本预测是5EE的核心(3)软件成本预测的算法模型,软件工程是随着计算机日益广泛地应用于(4)软件成本驱使源相对于软件生产率社会的各个方面,对于软件产品的功能、一可靠的分析,性、成本及生产率不断提出更高的要求,因而(5)以软件成本顶测为依据的软件工程在朝着大规模、工程化生产方式的不断发展过项目计划与控制的科学管理。程中逐步形成的一门新学科。在一些发达国家第二部分:软件工程经济决策技术方面。中,正在和已经逐步形成了一种相应的新兴工(1)成本一一有效性分析:性能模型和业一一软件产业。成本有效性模型,生产函数数,决一项成功的软件工程,应该在两个方面同策判据。时得到成功:一方面是成功的软件产品;另一(2)多目标决策分析:净值与临界分析,方面是成功的软件开发过程。这两方面的目标当前与未来的耗费与赚取;质量因又分别包含有三个子目标:即人类工程的、资数;目标限制及系统分析与限制性源工程的和程序工程的。很明显,既使是在最优化。终得到了一个性能合格的软件产品,但如果其(3)处理不确定性技术:风险分析,统开发进度是一拖再拖,开发费用是一增再增,计决策理论一一信息的价值。也不能认为这项工作是成功的。对于软件开发由于5EE是近年来发展起来的新学科,成本的科学预测和实行控制是十分重要的。因此有不少问题尚在研究、实践和发展之中,为了保证软件工程目标的成功,逐步发展而这些问题也均与软件开发成本的科学预测有起来以软件成本预测为基础的,综合平衡地解密切的关系。决软件生命周期中各种互相矛盾的间题,逐步二、软件成本预测发展形成了软件工程经济学。.5EE1软件成木预测的目的
·州洲国地·《预测》1987·1期软件成本预测的目的或好处,l!}归纳为四PUTNAM(1978)个方而:、一、seKll/3t3/4(说明略)、A以软件成本为基础,以经济效益为核心,进行综合决策·;表格式模型、B通过成本预测,研究影响软件产品成许多表格把成本驱使源数值同开发工时连本的诸因素,以期寻找、制定提高软件生产率系起来,其中包含着为了调整工时预测而采用的方针策略和具体的手段措施;的一些系数。、·C以成本预测为核心和依据,控制整个寺昆合模型软件生命周期中软件产品开发的全过程,进行采用解析模型的形式,1司表格模型相结保证质量、进度和降低成本的科学管理;合,联合起来使用。、D顶测成本,可做为签订合同或销售产例:品时定价的依据之一。并,日一以同产品在未来的RCAPRIC王乙S(1979)应用中可能产生的经济效益做比较,有助少正P一。:tSLIM(1979)确地考察与判断该产品开发与应用的必要性。TRWSCI二王,(」978).2软件成本顶测方法COCOMO一一结构化成本模型,是近年有许多预测方法己经应用在对软件成本的来较好的一种模型。预测中,就主要的可归类为七种:(2)专家判断(功算法模型向一位或多位专家咨询请教,这些令家运如下图所示,软件开发的工时,进度做为用他们以前积累下的经验来进行预测。如果儿成本驱使源的函数小来预测。位专家的预测不同,怎样才能得到最终的一种预测呢?可采用德尔非(DELP}11)评审法,成本驱使源成本顶测_即小组一致技木。Xi……Xn(变量价攀工时,关于德尔菲预测法,在不少顶测学专著中’):度)讲述到,这里只将其要点概括如下:所谓成本驱使源,tv。。.(codli,)即造成或协调员发给每一位李家一份对该项目的说明影响成本的诸因素(变量。)和一张表格,该表格用来记录预测。随着成本预测研究的不断发展,算法模型b.专家不具名的(匿名)地填写表格,写明自也从一开始的较简单的形式,逐步发展成越来己的预测谊。专家可以向协调员提出问题,但越细微、相对精确的复杂形式。例举如下不可相互提问。·线性模型.c(6洲协代中期)协调员准备一个对令家们怠见的综合,写在LFF。+a」Xl十OR=aT……礼,、X要求专家重复顶测的表上,并要求专家简单地·倍增模型阐明自己预测的根据和理由。.EFr0R之a。·XI·a3Tal孔……a、d适当地反复进行儿次,但不进行小组讨论。·解析模型下面给出关于某一系统软件一一操作系统项目五FFOR二x,,xZ,Tf(……凡)的德尔琦F预测综合表第二轮的例子:例:H八LS于EAD(19了7):,21NNL`)习:-侧咬一OR丁二2幼一(说明略)
《顶测》1987·1期·预测园地`德尔菲成本预测综合丧项目:操作系统日1i七}}984此处是从第一轮起预测的范围你的平均仇XXX人一:02040601000(MM)请填入你的下一轮预测;3乓巫匹丛_请解决你预测的基本理由;“该项目看上去像一个标准的过程控制操作系统,大泛队在这方而有许多经脸,不会有什么困难和麻烦。甲一尸尸,一,~~--一~~~~~~毯一~一曰r-一1~一一一~~~,一巴~一-~·~一一~~匆`一~一一一~~一~,一一,,,,护~~.,尸,.,.,..,.,,.r...r.......~一.,,(3)模拟预测归纳在其中呢?这是因为,在客观实践中,不将当前的软件开发项目同过去己完成的相是少数人这样做。比如,中标法,为了拿到项似项目做比较,从而份到成本估算预测值。目,和其它人竞争,把价格压得很低,用户接(4)自顶向下的预测受了,但实际上亏本很多。很明显,这样来估总成本从软件项目的整体性质出发估算,算成本是不可取的。然后在各部分中间分配。在上述方法中,也没有一种是最完善的。(5)自底向上的预测在实际应用中,常对几种方法采取有效的组从各任务单元为起点预测,向上相加,而合。比如采取自顶向下的预测同专家判断相结兮珍到总成本。合;采取自底向上同算法模型相结合等等。(6)帕肯森法(PARKINSON)三、软件开发成本预测COCOMO模型工作量扩充到填满有效值的方法来考虑成.1墓本的工时与进度方程本。onsCOCOMO(Ct’luetvesiCteoMOdl)一(7)中标法结构化成本模型,是算法组合式模型。分为基为了夺取某项任务,以用户能够接受的投本、中级和详细COCOMO三级」。`本文简单标价格做为成本的“预测值”。给出基本和中级COCOMO模型。上述第、(6)(7)两种方法,并不是真基本的COCOMO摸型是把软件成本做为正的预测方法,只不过是某种与项目有关系的软件大小的函数来顶测的,但同时考虑开发方其它因素起作用的“被动”或“迫使”的,因式的影响,不同的开发方式对应有不同的公式此,实际上给不出比较满意的成本预测的。既中的系数,开发方式的确定也起着相当重要的然,根本谈不上预测,为什么还做为一种方法作用。墓本公式如下:,..月.,~~~.,~,.,,叫...甲,,.,,..,.叫,~~卜一`~冲....,卜.一一伪..,,......开发方式工时才仕l好子峪`乙妇几..有机式DSI105035MM=24TDEV二(K)(MM)..半分离式五IM~3o12(工丈DSI1)TDEV二?03(M5M).,`苦关入式几IM~36又l义DSI120)1D已V二2o32(MM)
《预钡l》2057一期顶测四地其中:MM一人月(工时)TDEV一月(进度)目归类为三种不同的开发方式:有机方式,半“KDSL一一发货源指令条数/10分离方式和嵌入方式,分别对应有三套工}{寸与(程序大小)进度的计算方程,如前所列。一下而就三种开发.2软件开发的三种方式方式的主要特点做一概括:在COCOMO模型中,将各种软件开发项下表列出不同开发方式的软件项}j的例于:有机方式半分离方式}伏入方式·批量数据整理·大部分事物处理系统大型、复杂的事物处理系统·科学模型·新的,05DBMS·商用模型·庞大的库存、生产控制系统·非常庞少拍勺05·熟悉的·,05简单的命令指挥控制系统·宇航控制系统·编译·简单的库存生产控制·庞大的命令指挥控制一怜~,.~曰.州.,~...~.,.一二,,..,口`.,...,,一r一一一一一一一一一一,~-一一,吧一一一一一~甲一有机方式:较小的开发队伍,开发组织内①RELY要求的软件可靠性部自用的软件,大部分人员具有类似项目的经②DATA数据库大小验,能够比较彻底地理解对产.钻的需求:对产③CPLX产品复杂性况:性能修改,容易做到重新谈判。第二类:计算机属性半分离方式:开发队伍具有中等的经验,④TMIE执行时间限制对接口有一定的限制,有些接口较严格,有些⑤sTOR内存容量限制接口则较灵活。⑥vIRT虚拟机变动性嵌入方式:软件产品的开发实际上是在⑦TURN计算机周转时间硬、软件操作过程的强祸合当中进行的对于接第三类:人员属性口有严紧的限制,课题任务常常是“不认识”⑧AD分析员能力CA的领域;软件需求的修改影响重大,一般而言⑨AEXP应用经验项目比较庞大。LPCAP程序员能力.3中级COCOMO@vExP虚拟机经验进一步深入研究与考查造成成本的输入变LLxPE编程语言经验量一一成本驱使源,从具有普遍意义和相对独第四类:项目属性立性出发’,可以把主要驱使源分为四大类共15LMODP现代编程实践种:LTOOL软件工具的使用第一类:软件产.钻属性LEDCS要求的开发进度开发方式工时进度有机方式.·N`。M32lo`’.吕8MM=(KDSI)1DEV=25(MM、.·半分离方式NoMMM=30I,,(KDSI1)TDEV二2s吕5(MM).·嵌入方式.NoM20MM=28(KDSI,)TD5EV二2(入IM)15、。·MMM一MM;址l“~~曲..~......~一一一一一一一一~~~一~一一一~~思一口~一36
4J负测压j!地·《了少l沙!」》·108了z』;日成本驱使源对成本的影响可以通过相对应有现实的重要意义。目前,正在提倡软件做为的工时因子;,f在中级COCoMO模型中的修正商品进行流通,但做为商品,首先就有如何定作用米体现。中级COCOMO方程如下:价的间题。而现实中,软件的价格和其成本是工时因子fi被划分成六个范围:很低、低、严重脱节的:遇到某个机会可能其价格远远高正常、高、很高、甚高。工时因子正常时为过它的实际成本;而有时其价格又低得可怜。.,100否则或大于.,10或小于.,10可根据至于从成本的科学预测值出发控制管理其开发范围查表得到具体数位。过程,就很少有人真正能够这样做。在软件开其中N。MMM是没有经过15个工时因子修正发技术人员和管理人员的头脑中十分缺乏经济的工时预测值,在中级COCO五40中称为通常观念仍是普遍的现象。因此,在我国大力推广工时。经过工时因子修正后的工时,提高了预计算机应用一努力进行为了应用的二次开发的测的精确度。同时,普及与提高对软件开发成本的科学预测四、结束语是十分重要的。我们可以借鉴国外已有的经验软件开发成本的科学预测是软件工程经济和公式,再结合我国的实际情况,来运用各种学的核心,是有重要作用的。特别是在今天,科学预测方法,以便提高软件开发的实际经济我国大力推广计算机广泛应用的情况一,F更具效益,有助于我国软件产业的形成和发展。(上接25页),F二叹二.09012侣徒进卜」量以均匀递减方法计算,顶训沥年达到..,DW=155S010(Y)/F=16自给,2。。。年出口达到15万吨。8()S二Pl+Im+S一IC时间变量赋值为;83一10政策变量赋值为零..92()Y“...024728+oZGo15P:+oo3zooP-预测结果及分析。在上述条件实现的情况下,.F=512036R二.09987综合其他条件,经修正后的预测结果为,199。年我国.DW=2255(Y)/犷.=00336铝产量可达10万吨,消费量可达110万吨;2。。。年铝..205100+2)P=47062y+(D产量可达163万吨,消费量达巧2万吨。.,F=5826双.=0504铝产量预测结果基本保持了计算结果。因为,从..,DW=1902S0319(Y)/y=能耗的角度看,到2。。o年若直流电耗指标达到1400。..L12)PT二.041655+2lz7oy+o9466P_一.l7o7D度/吨铝,综合能耗降到.938吨标煤/吨铝,铝产量..,F=3261R=0957可达163万吨.在83年到2。。。年的18年中,节能技术进.,DW=202S(Y)/F二.0123步达到上述水平是完全有可能的。从预测计算结果的四、预测结果及分析K值看,相应生产能力约为256万吨。假以80肠开工根据最终的结构式及其数学检验,可知模型对历率计,产量应为205万吨、但山于能源供应的限制,史的描述是十分接近的。据此我们可以对未来进行预达到这一产量不太可能。测.当然,预测发生误差是很自然的现象。其原因主铝锭的消费量,计算结呆为200。年我国消费铝要有两个。tl)模型描述的规律可以说明过去,与未148万吨。但由于进口铝时,其对于消费是加性影来的发展规律可能存在差异,2()外生变量的取值不响。当我国出口铝时,其影响就发生了质的变化。这一定准确。实际上,对外生变量赋值,等于又是一个时可以认为出口铝对我国铝消费基本不发生影响。扣预测过程.因而,外生变量愈少,预测精度也就愈高。除这一影响后,2。。。年我国的铝消费量应为152万吨.1外生变量赋值.对投资赋值考虑了以下几个因左右。素。L)I国家优先发展铝的方针及一些投资规划;对199。年的预测,基木保持了计算结果。2()对铝工业的历史投资情况;3()整个国家将后根据以上对预测结果的分析,可知能源供应将仍的投资能力。赋值为在83年到2。。。年的18年中,总投是限制我国铝工业发展的主要因素。因此,应大力发资约为20亿元.90年以前的投资速度要大大高于90年展能源工业和节能技术,以保证铝工业的快速发展.以后的投资速度。但也要注意在扩大铝工业投资时保持与能源供应相适总能耗赋值,以铝工业历史用电水平依据,以及应,防止盲目投资造成损失。(该题目的研究,受到全国能源生产到2。。。年翻一番的预测材料和国家规沈阳铝镁设计院郑芳荃同志的热情帮助,特此致划,反推出。。。年侣工业用能源将达到53万吨标煤.谢。210)37