您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > 第3章 软件的成本、工期与定价分析
软件工程经济学SoftwareEngineeringEconomics第2页•理解成本的概念、经济内涵和特点;了解成本的分类•掌握软件成本测算的影响因素分析•掌握功能分解法、Delphi法、影响因子法、类比法,求解软件成本和工期。•掌握直线折旧、加速折旧法•理解价值工程分析过程,及确定价值分析的考察对象的方法:价值系数法和ABC法第3章软件的成本、工期与定价分析学习目标第3页软件的成本构成及其影响因素分析3.1软件成本与工期的测算方法3.2第3章软件的成本、工期与定价分析软件成本与价值工程分析3.3软件产品的定价与营销3.4第4页3.1软件的成本构成及其影响因素分析成本(Cost):—是取得各项生产要素、商品或劳务以及为实现特定经济目的而发生的费用。1、成本的经济内容•劳动资料•劳动对象•劳动者2、成本特点•消耗性•补偿性•目的性•综合性•代偿性第5页3.1软件的成本构成及其影响因素分析3、成本分类①按照企业主要经营活动分类:•研究与开发成本•采购成本•生产成本•经营成本•管理成本②按成本与产量的对应关系分类:•变动成本和固定成本③按成本的确定时间分类:•预测成本、定额成本、计划成本、实际成本成本分类的作用?第6页3.1软件的成本构成及其影响因素分析按成本的确定时间分类:预测成本•是指在产品规划与设计阶段依据一定的设计方案和某些预测方法来测算将来可能发生的成本•作用:是不同设计方案进行比较与选优的依据定额成本•根据消耗定额所确定的产品成本•作用:用来做日常成本控制的标准和依据第7页3.1软件的成本构成及其影响因素分析按成本的确定时间分类:计划成本•是根据消耗定额及生产计划而确定的在计划期内(一年)应该达到的成本•作用:一般作为年度考核的依据实际成本•是根据产品生产的实际耗费而计算的成本•作用:存货计价与产成品定价的基础第8页3.1.2软件成本构成生存周期要素成本说明1系统规划阶段。系统调研。投标竞争(含可行性分析)。需求分析主要是出差费用及相关人员工资及附加费2系统分析/设计阶段。系统分析。系统概要设计。系统详细设计及评审分析与设计人员工资及附加费、技术资料与技术咨询费设计评审费3系统构建阶段。系统硬件购置与安装。系统软件与购置。基建与有关设施建设。数据与技术资料收集。人员培训。有关硬件原材料购置。有关硬件生产/测试及废品损失。有关软件编辑/测试。有关文档编制购置计算机、通信设备、传感器、路由器等及系统软件与有关应用软件的费用,软、硬件生产过程中所消耗的水、电、运输及材料消耗费4系统运行维持阶段。系统营销。系统切换。系统运行(运行指导人员费用、材料消耗费、固定资产折旧费)。系统管理(审计费、行政管理费用、系统服务费用)。系统维护(纠错性、适应性、完善性维护费用)营销费用包括广告、分销、促销等费用系统切换包括设备运输、安装测试等费用第9页3.1.3软件成本测算的影响因素分析软件的成本测算是其系统工程经济分析中的一项重要内容,它既是软件各种技术设计方案比较选优的依据,也是软件定价的基础。注:这里的软件定价主要指软件项目投标、申请基金支持、申请贷款等需要的软件定价。第10页3.1.3软件成本测算的影响因素分析认识到成本预算的重要性后,让我们一起来分析一下影响成本测算的因素。第11页3.1.3软件成本测算的影响因素分析成本测算的影响因素估算时间设备人力资源工期模型求解用户开发技术外部环境系统环境正确对待软件成本测算的态度减少软件成本测算误差的策略第12页3.2软件成本与工期的测算方法1功能分解法基本思想软件N2NmN1N13N12N11N1nN21N22N23N2nNm1Nm2Nm3Nmn………按功能分解……生存周期阶段分解软件构建信息库用户功能需求界定将系统划分成功能子系统(模块),计算各功能子系统(模块)的平均工作量,计算各子系统(模块)成本,计算各子系统(模块)工作量,汇总计算系统总成本与总工作量,,,由专家或经验给出i子系统(模块)j阶段工作量估计值,合成系统各阶段工作量与总工作量进行成本分析,寻找关键子系统(模块)或阶段,研究解决办法比较是否基本一致?由专家或经验给出各功能子系统(模块)的工作量下限,上限和最可能值,计算各阶段系统成本合成系统总成本结束ssssMMCC~~与,与,1.2kkkCMknnjjssCCC1~~,~njmiMij~1,~1,~jM~miijjminjijsMMMM111~~,~~jN64jjjjbmaEjojjCCEojjjEEM/ssME,mjjsCC1mjjsEE1mjjsMM1jajbjmmj~1jNmj~1ojojEC,k修改YN功能分解法的成本测算流程图第14页3.2.2Delphi法关于各子系统Nj的成本特性值aj,mj,bj由一个专家群体(专家组)给出的)由一个专家给出的功能分解法Delphi法适合于规模较大、研发经费较多的软件项目确定决策主持人,选择专家l人,设计专家调查表,给出,,进入第P次调查,由主持人给每位专家发送专家调查表主持人召开专家会议(现场或网上),就不清楚的问题回答咨询,专家展开讨论l个专家填写(无记名)调查表,并送回给主持人,主持人计算专家k的成本估计值,计算专家组的成本估计均值,成本均方差和变异系数主持人再次召开专家会,公布数值,,并对所公布之数值进行讨论,研究各子系统成本估值的决策问题主持人向各专家再次发出调查表,要求各专家按照修改准则Ⅱ进行填写23457进入下一次调查依据决策准则Ⅰ来决定是否继续调查?6是输出决策方案9否18结束00P1P,1~,1~kiCkliniCi,1~iin,iiiC和1~in,iiiC和12(,,,)nCCCC1PPDelphi法求解流程考虑一下:的作用?00P第16页3.2.3统计模型法基本思想首先寻找对软件成本y的影响要素x1,x2,…,xn。然后从中选出一些主要影响要素和收集企业长期从事软件开发是这些要素的数据序列(从IT企业信息库中获得)及对应的项目成本序列;在此基础上,通过研究这些主要影响因素与成本的统计关联关系建立统计模型,统计模型的建立常采用回归分析法;最后通过统计模型来预测软件的成本。2x12(,,)nyfxxx1xnxy图3.5统计模型的关联关系图第17页回归分析法自然界中的许多现象之间存在着相互依赖、相互制约的关系,这些关系表现在量上主要有两种类型:①函数关系:即变量之间有着确定的关系–S=∏R2②统计关系:•即变量之间虽然存在着密切的关系,但从一个(一组)变量的每一个确定的值,不能求出另一个变量的确定的值。可在大量的实验中,这种不确定的联系,具有统计规律性,这种联系便称为统计相关。第18页回归分析法由一个或一组非随机变量来估计或预测某一个随机变量的观察值时,所建立的数学模型及所进行的统计分析,称为回归分析。回归分析分为一元回归和多元回归例:某种商品年需求量与该商品价格之间的一组调查数据:价格pi5222.32.52.62.833.33.5需求量di13.532.72.42.521.51.21.2第19页回归分析法d=f(p)Pd1234012345第20页yabxbxyaelnyabxxyxxyyy(a)byaxxyy(b)(c)(d)(e)(f)1bayx001axkkyabe3.2.3统计模型法常见一元统计模型几何图形第21页回归分析法对于一元非线性函数需转化为一元线性函数求解:例3.2寻找对有影响的主要要素收集数据序列将数据序列在平面xoy上描点,并将这些离散点连成曲线,并根据此曲线的发展趋势从(a)、(b)、(c)、(d)、(e)、(f)中选择一个作为拟合模型,设为M1利用初等变换将拟合模型M1转化为形如(6.18)式的线性模型M2利用(6.19)式求解线性模型M2的参数与,并将其代入(6.20)式,从而得到模型M对预测模型M按照(6.21)式与(6.22)式进行统计检验统计检验是否通过?可将形如(6.20)式的模型作为对yn的预测模型,并通过此预测模型及对xn的估值来求解yn的估计值结束是否寻找新的模型M1重新寻找对yn有影响的主要要素,仍记为xnnynx{(,),1,2,,}nnxynl{(,),1,2,,}nnxynlˆbˆA是是否否预测模型求解流程图第23页3.2.4影响因子法影响因子法:又名驱动因子法,它是一种在统计模型的基础上通过引入更多的对y有影响的要素来完成对统计模型估计值的修正的一种定性与定量相结合的方法。该模型的求解思想•首先确定对y较大影响的有限的几个要素(定量估计值)作出估计的统计模型;•考虑到上述因素外的综合影响要素,对上述模型中y的估计值作出修正。•修正模型为:121(,,,)nmjjyUgxxxUU第24页COCOMO模型COCOMO(COnstructiveCOstMOdel)模型结构化成本模型COCOMO系由美国的B.W.Boehm在其著作《Softwareengineeringeconomics》(1981)中提出该模型是在对美国加里福尼亚TRW公司63个不同应用领域中的软件开发项目进行详尽分析基础上建立的一个分层次的结构化成本测算模型,其中包括基本模型(BasicModel)、中级模型(Intermediatemodel)和详细模型(Detailedmodel)等三个子模型。第25页COCOMO模型不同类型的信息系统软件,在不同的环境和条件下进行开发时,所面临问题的难度、所花费的工作量和费用都是不同的。COCOMO模型注意到了这个问题,它从软件规模和开发方式的特征出发,将开发工作划分为三个方式:有机的(Organic)、嵌入的(Embedded)和半独立的(Semidetached)方式。第26页COCOMO模型组织型(Organic又称有机型),是指规模相对较小,结构简单的软件项目,此类软件需求不那么苛刻,开发人员对此类软件产品开发目标理解充分,工作经验丰富,对软件的使用环境很熟悉,受硬件的约束较少,程序的规模不是很大(5万行)。例如,多数应用软件及老的操作系统和编译程序均属此种类型;嵌入型(Embedded)是指此种软件要求在紧密联系的硬件、软件和操作的限制条件下运行,通常与某些硬件设备结合在一起。因此,对接口、数据结构、算法要求较高。软件规模任意。例如,大而复杂的事务处理系统、大型/超大型的操作系统、航天测控系统、大型指挥系统,均属此种类型;半独立型(Semidetached)是指对此种软件的要求介于上述两种软件之间,但软件规模和复杂度都属于中等以上,最大可达30万行。例如,大多数事务处理系统、新的操作系统、新的数据库管理系统、大型的库存/生产控制系统、简单的指挥系统,均属此种类型。第27页COCOMO模型下各软件开发方式的特征特征开发方式有机方式半独立方式嵌入方式1开发部门对产品目标的理解程度2对同类软件系统的已有开发经验3软件遵从预定需求的必要性4软件遵从外部接口规格的必要性5相关的新型硬件与操作过程是否同时开发6是否开发新的数据处理算法与体系结构7提前完成开发项目可获得的奖励数量8软件规模(单位:KDSI—千行源指令)彻底相当的程度一般相当有经验有一定经验中等基本上相当程度全面地基本上相当程度全面地有一些中等广泛很少有一些相当多不多有一些相当多50300无上限第28页COCOMO模型(中级模型)00151()ssddsskjjCMThMMUMMrLUU模型中各变量的工程经济含义如下:Cs:软件开发成本(单位:美元):软件开发阶段的工时费用率(单位:美元/人月)Ms:软件开发阶段的修正工作量(单位:人月)Mo:软件开发阶段的基本工作量(单位:人月)L:软件开发规模(单位:源指令千行数或KDSI)U:软件综合影响因子(无量纲)U
本文标题:第3章 软件的成本、工期与定价分析
链接地址:https://www.777doc.com/doc-1458734 .html