6软件项目规模成本估算
软件项目规模估计方法介绍
软件项目的规模估计历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的规模估计往往和实际情况相差甚远。
因此,估计错误已被列入软件项目失败的四大原因之一。
软件工程师经常会被问到,编一个什么什么样的软件需要多长时间、多少钱。
面对这个问题,有不少人很犯难,因为,第一用户的需求太不具体,第二,自己缺乏一个科学的估计方法。
下面是几种软件项目规模的估计方法。
概念介绍先介绍一个衡量软件项目规模最常用的概念--LOC(Line of Code),LOC指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等。
一代码行(1LOC)的价值和人月均代码行数可以体现一个软件生产组织的生产能力。
组织可以根据对历史项目的审计来核算组织的单行代码价值。
例如,某软件公司统计发现该公司每一万行C语言源代码形成的源文件(.c和.h文件)约为250K。
某项目的源文件大小为3.75M,则可估计该项目源代码大约为15万行,该项目累计投入工作量为240人月,每人月费用为10000元(包括人均工资、福利、办公费用公滩等),则该项目中1LOC的价值为:(240×10000)/150000=16元/LOC改项目的人月均代码行数为:150000/240=625LOC/人月方法一、Delphi 法Delphi法是最流行的专家评估技术,在没有历史数据的情况下,这种方式适用于评定过去与将来,新技术与特定程序之间的差别,但专家"专"的程度及对项目的理解程度是工作中的难点,尽管Delphi技术可以减轻这种偏差,专家评估技术在评定一个新软件实际成本时通常用得不多,但是,这种方式对决定其它模型的输入时特别有用。
Delphi法鼓励参加者就问题相互讨论。
这个技术,要求有多种软件相关经验人的参与,互相说服对方。
软件项目价格评估
软件项目价格评估目前国际上通行的也比较科学的估算方法是采用功能点分析方法,使用此方法能够真实、准确地计算出计算机软件的价值以作为市场交易价格的参照依据。
1.价格评估公式:项目建设费Q=咨询服务费P+项目建设费M(软件开发费D+实施费S+维护费W)+验收测试费C+工程监理费G2.项目建设费计算公式:软件开发费D=工作量(人月)*软件人员月人工费用=(项目功能点*开发成本系数/7。
5/22)*(3。
23B)开发成本系数:3000个功能以下3.5人工时/FP-4.0人工时/FP3000-8000个功能以下4.0人工时/FP-4。
5人工时/FP实施费S =工作量(人月)*软件人员月人工费用=(项目功能点*实施成本系数/7。
5/22)*(3.23B)分布式实施项目的系数实施成本系数=开发成本系数*(0。
2+(n-1)*k)比例因子K:0。
08<=k〈=0。
15具体按项目实施难度而定维护费W=工作量(人月)*软件人员月人工费用=(项目功能点*维护成本系数/7.5/22)*(3。
23B)维护成本系数=(开发成本系数+实施成本系数)*p比例因子P一般为15%—20%软件人员月人工费用=(工资+奖金+福利+办公成本+资源储备+基础建设+税收利润)*(1+管理费用百分比)=3。
23B•软件开发费D:软件开发费用指对项目进行详细需求分析,系统设计,编码,测试等方面的工作而需支出的费用,取费主要依据项目规模(功能点),开发成本系数和软件人员月人工费,我方根据(附录四:软件功能说明表),对软件的功能进行分析认为:软件项目难度一般,由于各单位对报表的需求不一,所以编制报表的工作量较多,按照软件规模的大小,我们设定软件开发成本系数为4.1.软件功能点计算复杂加权因子表(Complexity weights Factor)系数范围采用系数用户输入数EI 3-6 4 用户输出数EO4—75 用户查询表EQ3—65内部逻辑文件数ILF7-1512外部接口文件数EIF5-1061.软件功能表数据表接口文件外部查询逻辑表报表数功能225 24 0231复杂系数4 6 5125功能点数8830 120 01155合计UFC13932.软件开发费用计算表计算公式UFC*开发成本系数/7.5/22*3.23B开发成本系数4。
软件项目管理实验三-项目规模成本估算-软件0801何飞
软件项目管理课程设计实验报告学院:计算机科学与技术学院专业:软件工程班级:0801班学号:2008001468姓名:何飞指导教师:林福平时间:2011年11月 25 日实验三: 项目规模成本估算一、实验目的:1.了解项目成本估算包含的内容;2.掌握项目成本的估算方法。
二、实验内容:1.按标准估值法(1)聘请了5位专家,他们对开发成本的最小规模、最大规模及最可能规模的估值如下表。
(2)由于采用B/S结构,通过计算,修正系数为1。
25。
开发成本采用最有可能规模进行计算:最小规模平均值A=(190000+195000+180000+185000+175000)/5=185000(元)最大规模平均值B=(230000+235000+200000+220000+240000)/5=225000(元)最可能规模平均值M=(210000+215000+190000+205000+220000)/5=208000(元)由此可得:开发成本=修正系数*(A+4*M+B)/6 =1。
25*207000=258750(元)管理成本和质量成本=开发成本*管理质量系数=258750*0.28=72450(元)项目直接成本=开发成本+管理成本+质量成本=258750+72450=331200(元)项目间接成本=直接成本*间接成本系数=331200*0。
25=82800(元)项目总估算成本=直接成本+间接成本=331200+82800=414000(元)由此可得:利润=项目总估算成本* 0.3=414000*0。
3=124200(元)项目的报价=项目总估算成本+利润=414000+124200=538200(元)2.按COCOMO模型法(1)代码行估算大约在5KLOC;(2)属于组织型项目;(3)符合中级COCOMO模型;(4)开发费用为1.2万元/人月;(5)考虑成本因素。
开发成本=总计人月数*人月单价=19*1。
2=22。
实用的软件系统开发成本估算法-软件成本管理(含例子)
软件系统开发成本估算法功能点估算含例子目录一、功能点估算法概念 (1)二、功能点估算法的特点 (1)三、功能点分析的步骤(含例子) (1)3.1 识别项目的类型 (2)3.2 识别项目的范围和边界 (2)3.3 按不同功能点计算 (3)3.3.1功能点估算分类 (3)3.3.2识别功能点的重要原则 (3)3.3.3内部逻辑文件与外部接口文件 (4)3.3.4事务类型功能点的计算规则 (8)3.3.5计算调整因子 (13)3.3.6计算调整后的功能点个数 (24)3.4 总结 (31)一、功能点估算法概念功能点估算法是软件项目管理众多方法中比较有技术含量的一个,也是最实用的一个.在软件项目管理中项目计划制定的优劣、合理直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要。
如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义.二、功能点估算法的特点项目范围的估算在CMMI的“MA”度量分析管理和“PP"项目计划中均有涉及。
对软件项目范围的估算有很多种方法,常见的是LOC代码行和FP功能点法.它们之间的区别和关系如下:•功能点估算法常用在项目开始或项目需求基本明确时使用,这时进行估算其结果的准确性比较高.假如这个时候使用LOC代码行估算法,则误差会比较大。
•使用功能点估算法无需懂得软件使用何种开发技术。
LOC代码行估算法则与软件开发技术密切相关.•功能点估算法是以用户为角度进行估算,LOC代码行估算法则是以技术为角度进行估算.•通过一些行业标准或企业自身度量的分析,功能点估算法是可以转换为LOC代码行的.在项目刚开始的时候进行功能点估算可以对项目的范围进行预测。
在项目开发的过程中由于需求的变更和细化可能会导致项目范围的蔓延,计算出来的结果会与当初估计的不同.因此,在项目结束时还需要对项目的范围情况重新进行估算,这个时候估算的结果才能最准确反映项目的规模。
软件工程中的软件项目预算与成本控制
软件工程中的软件项目预算与成本控制软件开发是一个复杂而庞大的过程,需要耗费大量的资源和资金。
对于软件项目的成功实施,预算的合理规划和成本的有效控制是至关重要的。
本文将从软件项目预算制定和成本控制两个方面进行讨论,探讨软件工程中的软件项目预算与成本控制的重要性及其实施方法。
一、软件项目预算制定软件项目预算制定是软件工程中的重要环节,它直接关系到项目资金的合理分配和项目进展的顺利进行。
下面是软件项目预算制定的几个关键步骤:1. 定义项目范围和目标:在制定预算之前,首先需要明确项目的范围和目标。
这包括确定项目的需求和功能,并根据这些需求和功能评估资源的需求。
2. 估算资源需求:在这一步骤中,需要对项目所需的人力资源、硬件设备、软件工具等进行估算。
通过与相关人员的讨论和分析,可以得出准确的资源需求。
3. 编制预算计划:根据资源需求和项目目标,制定详细的预算计划。
这个计划应包括项目的各个阶段的预算,以及每个阶段所需要的资源和资金。
4. 确定预算控制措施:为了确保项目预算的有效控制,需要确定一些预算控制措施,如制定预算监控机制、定期审查项目进展以及监测资源使用情况等。
二、软件项目成本控制软件项目成本控制是在项目执行过程中,对项目成本进行监控和管理的过程。
下面是软件项目成本控制的几个关键步骤:1. 成本估算:在软件项目开始之前,需要对项目的各个方面进行成本估算。
这包括人员工资、硬件和软件采购、办公设备租赁等各项成本。
通过成本估算,可以得出项目的总成本。
2. 成本分析:根据实际开展的项目活动和消耗的资源,对项目成本进行详细的分析。
这可以帮助项目团队了解哪些方面的成本较高,以及如何优化成本分配。
3. 成本监控:通过制定成本监控措施,对项目成本进行监控。
这包括进行成本的实时跟踪,及时发现和解决成本偏差,确保项目成本不超出预算。
4. 成本控制策略:为了降低项目成本,需要采取一些有效的控制策略。
例如,优化资源分配,提高人员的工作效率,节约硬件和软件的采购成本等。
软件项目费用概算及成本估算
确定价格。与国际市场联系紧密的,还应当参考国际市场价格。
一、项目概算和成本估算的意义
关于软件危机:自60年代提出以来,就没有真正解决过。 1、软件项目存在的问题:
●对软件开发成本和进度的估计不准确 ●用户不满意 ●软件质量不高,可靠性差 ●软件维护性差,错误难以纠正 ●缺乏适当的文档资料 ●软件成本占系统总成本的比例逐年上升 ●软件开发速度跟不上硬件发展速度 其中最难解决的是第一点。软件投入不断提高。日益增长的成本和有限 经费之间的矛盾越来越突出,如何进行成本控制,成为大家普遍关注的问 题。
2、需求变更问题 软件危机将会一直存在下去,其根源在于不断变化、提高的用户需求和
现有开发方法提升的差距的矛盾。
一、项目概算和成本估算的意义
趋势:
建立价格度量体系,规范市场,促进软件产业发展
◆政府相关部门高度重视 《广东省信息化发展纲要(2005—2020年)》特别提到:强化政
府投资的信息化建设项目管理。各级政府要按照先规划后立项、先评估 后建设的原则,集中统一管理政府投资的信息化项目。发展改革、财政 和信息化主管部门要根据当地信息化发展水平,坚持勤俭办事业的方 针,及时制订信息化建设项目建议书、可行性研究报告编制指南和概算 标准。建立科学的信息化评估体系,加强项目评估工作,评估意见要作 为项目立项、建设、验收和运行考核的主要依据。
软件价格评估的关键在于建立价格度量指 标
价格度量的重要指标:软件开发工作量及 人月成本
软件开发工作量取决于软件规模
二、国内外研究现状
自低向上 估算法
经验估 算法
自顶向下 估算法
代码行分析 功能估算分析
相似比 较法
标准 估算法
二、国内外研究状况--国际
软件工程造价估算方案
软件工程造价估算方案一、引言在软件开发过程中,造价估算是非常重要的环节,它涉及到资源的投入和回报,决定了项目的成本和效益。
正确的造价估算方案可以有效地帮助项目管理者和团队规划和控制项目,并为客户提供合理的成本预算。
本文将就软件工程造价估算的相关内容进行分析和讨论,提出一种可行的造价估算方案。
二、软件工程造价估算的重要性1. 造价估算对项目决策的影响在软件工程项目中,正确的造价估算可以为项目决策提供重要参考。
通过对项目的成本和效益进行预估,可以帮助项目管理者决定是否进行某一项目,以及合理地规划项目的资源分配和进度安排。
2. 造价估算对项目管理的作用造价估算是项目管理的基础,它直接影响着项目的计划、控制和执行。
准确的造价估算可以帮助项目团队合理地安排资源和工作,提高项目的效率和质量。
3. 造价估算对客户的意义对客户而言,造价估算是选择合作伙伴和确定项目成本的重要参考。
准确的造价估算可以帮助客户做出明智的决策,保证项目可以按时、按质地完成。
三、软件工程造价估算的方法1. 单项加总法单项加总法是较为简单的造价估算方法,它是通过对项目各项资源的成本进行单独估算,然后进行加总计算得出项目的总成本。
这种方法适用于较为简单的项目,对资源需求和成本的了解较为清晰的情况下。
2. 参数估算法参数估算法是通过对具体项目参数的估算来确定项目成本,主要是根据历史数据和类似项目的经验来进行预估。
这种方法适用于相对规范化和标准化的项目,对历史数据和经验的要求较高。
3. 模型估算法模型估算法是通过建立数学模型来估算项目的成本,主要是通过对项目的规模、复杂度、风险等因素进行分析和计算得出成本预算。
这种方法适用于复杂的项目,对因素之间的关联和影响进行分析的要求较高。
四、软件工程造价估算的步骤1. 确定造价估算的目标在进行造价估算前,需明确估算的目标和要求,包括成本、资源和进度等方面的考虑。
根据项目的具体情况确定造价估算的重点和侧重点,为估算提供方向和依据。
软件项目开发成本估算案例分析
软件成本估算应用案例分析本文以某公司开发一套人力资源管理系统为例来讲解软件成本估算的方法及过程。
项目需求:某甲方需要一套人力资源管理系统,该软件企业想要去投标,甲方单位业务部门人员列出了比较原始的业务需求,具体需求描述如下:1)组织架构管理对公司的组织架构进行维护和图形化显示,包括部门、岗位等信息。
可以对部门进行新建、修改、删除、合并、改变归属关系、设定岗位人数并根据已录入的档案信息自动显示实际岗位人数。
支持部门、岗位信息的EXCEL模板导入功能。
可以对岗位进行新建、修改、查询、删除等,岗位信息包括岗位说明、相关联工资级别等。
2)招聘管理对于空缺岗位生成招聘申请,人力资源主管和部门主管审批后自动发布到外部招聘渠道。
可以查询招聘信息或删除已过期的招聘信息。
对应聘人员信息进行管理,将得到的简历、面试情况录入到系统并进行维护。
3)档案管理对员工的信息进行管理,包括员工基本信息(如姓名、年龄、性别、岗位、电话、邮件等)、家庭档案信息、培训记录、工作记录。
还包括员工照片、社保号码等。
授权用户可以对员工档案进行查询或进行修改(如调动、离职、绩效考核信息填写等)4)人力地图将公司的全部或某部门组织架构图显示出来,并可查看员工的基本信息。
本人可以维护部分个人信息,如手机号码、个人主页地址、个人说明等。
5)培训管理制订公司年度培训计划进行管理,并对每次公司级培训建立培训记录并对培训效果进行分析。
提供年度培训计划的建立、修改、审核、审批等功能。
对每次培训进行管理,可自动发送培训通知,培训后填写培训满意度、培训总结。
可以对某时间段内的培训或选定培训进行培训效果的比较和分析6)人力资源分析包括基于人数的分析和基于部门的分析。
基于人数的分析包括统计各岗位、各部门、各学历、各年龄段的人数、各岗位/部门实际人数和空缺人数等。
基于部门的分析包括分析各部门到岗率、入/离职情况、岗位构成、学历构成、年龄构成等。
7)报表中心授权用户可查看或打印员工基本信息、培训信息、工作情况、考核情况、并提供人力资源常用模板(如离职申请、培训申请等)的下载和打印。
软件开发成本估算
软件开发成本估算软件开发成本估算主要指软件开发过程中所花费的工作量及相应的代价。
不同与传统的工业产品,软件的成本不包括原材料和能源的消耗,主要是人的劳动的消耗。
另外,软件也没有一个明显的制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。
因此,软件开发成本的估算,应是从软件计划、需求分析、设计、编码、单元测试、集成测试到认证测试,整个开发过程所花费的代价作为依据的。
软件开发成本估算的经验模型1.Putnam 模型1978年Putnam提出的,一种动态多变量模型。
L = Ck * K1/3 * td4/3其中: L-----------源代码行数(以LOC计)K-----------整个开发过程所花费的工作量(以人年计)td-----------开发持续时间(以年计)Ck----------技术状态常数,它反映“妨碍开发进展的限制”,取值因开发环境而异,见下表从上述方程加以变换,可以得到估算工作量的公式: K = L3/(Ck3*td4)还可以估算开发时间: td = [L3/(Ck3*K)]1/42.COCOMO模型(constructive cost model)这是由TRW公司开发,Boehm提出的结构化成本估算模型。
是一种精确的、易于使用的成本估算方法。
COCOMO模型中用到以下变量:DSI-------源指令条数。
不包括注释。
1KDSI = 1000DSI。
MM-------开发工作量(以人月计) 1MM = 19 人日 = 152 人时 =1/12 人年TDEV-----开发进度。
(以月计)COCOMO模型中,考虑开发环境,软件开发项目的类型可以分为3种:1.组织型(organic): 相对较小、较简单的软件项目。
开发人员对开发目标理解比较充分,与软件系统相关的工作经验丰富,对软件的使用环境很熟悉,受硬件的约束较小,程序的规模不是很大(<50000行)2.嵌入型(embedded): 要求在紧密联系的硬件、软件和操作的限制条件下运行,通常与某种复杂的硬件设备紧密结合在一起。
软件项目报价方法
软件项目报价方法软件项目报价方法一、引言在软件项目中,报价是一个至关重要的环节。
合理的报价不仅能够帮助企业获得利润,还能确保项目的成功实施。
本篇文章将详细介绍软件项目报价的方法,包括成本估算、利润考虑、报价策略等。
我们将尽力确保内容的完整性和可操作性。
二、成本估算在制定报价策略之前,我们需要先对软件项目的成本进行估算。
这包括人力成本、物资成本、间接费用等。
下面我们将详细介绍各个方面的考虑因素。
1.人力成本人力成本是软件项目的主要成本之一。
我们需要考虑以下因素:(1)技能水平:不同技能水平的员工对应不同的薪资。
在估算人力成本时,我们需要根据员工的能力和经验来评估其薪资水平。
(2)工时成本:根据员工的工作时间和工作效率,我们可以计算出每个员工的工时成本。
在估算时,我们需要考虑到员工可能需要花费额外的时间来解决问题或者应对突发事件。
(3)人员数量:根据项目需求,我们需要确定所需的人员数量。
这包括开发人员、测试人员、项目经理等。
2.物资成本物资成本包括购买软件、硬件设备以及相关配件的成本。
在估算时,我们需要考虑到设备的维护费用和折旧费用。
此外,还需要考虑到软件许可费用和升级费用。
3.间接费用间接费用包括租金、水电费、保险费等。
在估算时,我们需要考虑到这些费用与项目规模和持续时间的关系。
三、利润考虑在报价时,我们不仅要考虑成本,还需要考虑利润。
合理的利润能够保证企业的生存和发展。
下面我们将介绍几个考虑因素:4.市场状况:在制定报价时,我们需要了解市场需求和竞争对手的报价情况。
这有助于我们制定一个更具竞争力的报价。
5.项目风险:不同的项目有不同的风险等级。
对于高风险项目,我们可能需要制定更高的报价以补偿可能出现的损失。
6.客户价值:对于一些高价值的客户,我们可能需要制定更低的报价以获得更多的机会。
同时,对于一些低价值的客户,我们可能需要制定更高的报价以保护企业利润。
7.合同条款:在签订合同时,我们需要仔细审查合同条款以确保企业的利益得到保障。
软件项目成本评估准则
软件项目成本评估准则概述本文档旨在提供一个系统的软件项目成本评估准则,以帮助项目管理人员在项目规划和控制阶段准确估计项目成本,并做出合理决策。
成本评估要素1. 项目范围:明确项目的范围和目标,确保在成本评估过程中考虑到所有相关因素。
2. 人力资源:评估项目所需的人力资源,并考虑到人员工时和成本。
3. 硬件和软件:评估项目所需的硬件和软件资源,并根据市场价格进行成本估计。
4. 采购和供应链:评估项目所需的采购和供应链成本,并考虑到物流和交付时间。
5. 风险管理:评估项目的风险并计算潜在风险带来的成本影响。
6. 培训和培训资料:评估项目所需的培训和培训资料成本,并考虑到培训人员的工时和成本。
7. 软件开发和测试:评估软件开发和测试过程的成本,并考虑到开发生命周期的各个阶段。
成本评估方法1. 自上而下估算法:通过对整个项目成本的宏观估计,然后根据项目的规模和复杂性进行细化,逐步逼近真实成本。
2. 类比估算法:通过与类似项目的历史数据进行比较,结合各种因素进行类比估算,得出项目成本的近似值。
3. 参数化估算法:通过将项目成本转化为数学模型,并根据模型中的参数进行估算,得出项目成本的精确值。
4. 三点估算法:通过给出最佳、最坏和最可能的情况,结合概率统计方法计算出项目成本的预测值。
成本评估的挑战1. 不确定性:项目成本评估过程中存在很多不确定因素,如需求变更、市场波动等,需要合理评估并考虑其影响。
2. 专业知识:成本评估需要项目管理人员具备相关的专业知识和经验,以准确估算各项成本。
3. 数据可靠性:成本评估需要依赖可靠的数据源,包括历史项目数据、市场数据等,确保估算的准确性。
4. 时间成本:成本评估需要投入一定的时间和资源,因此需要在项目计划中合理安排成本评估的时间。
总结本文档提供了一个软件项目成本评估准则的框架,以帮助项目管理人员准确估算项目成本并做出合理决策。
在实施成本评估时,需要考虑到项目的多个要素,并选择合适的评估方法。
软件项目规模成本估算
第118页,共118页。
成本管理过程
资源计划编制:
确定项目需要的资源种类和数量
成本估算:中心环节
编制一个为完成项目各活动所需要的资源成本 的近似估算
成本预算:项目进度
将总成本估算分配到各单项工作活动上
成本控制:项目跟踪
控制项目预算的变更
chapter__6
2
第118页,共118页。
功能点计算公式的含义是:如果对应用程序完全没有特殊的功能要求(即综合特征总值
=0),那么功能点数应该比未调整的(原有的)点数降低35%(这也就是 “0.65”的含义)。否则,除了降低35%之外,功能点数还应该比未调整的点数增
加1%的综合特征总值。
第第333页3
第118页,共118页。
功能点与代码行的转换
语言
每个功能点的代码 行数
C
130
COBOL
110
Java
55
C++
50
Turbo Pascal
50
Packages
10-40
Visual Basic
30
chapter__6
334
Power Builder
15
第118页,共118页。
对象点(OP)
对象点是基于对象的软件产品规模估算。 著名的Probe方法
Watts Humphrey (软件质量之父,CMM创始人)
chapter__6
3355
第118页,共118页。
对象规模表(C++)
方法种 很小 小 类
计算 2.34 5.13
中 11.25
数据 I/O 逻辑 设置
软件项目中的成本构成及估算方法
软件项目中的成本构成及估算方法随着学问经济、信息时代的来临,计算机软件业迅猛发展。
商品化、资本化、资产化的计算机软件的价值评估的社会需求也日益增多,而且有越来越多的趋势。
由于系统软件通常是一些规模大、复杂程度高的人一机系统,因此,系统软件的开发发、使用、维护、管理的过程,是一个特别复杂的系统工程,需要有巨大的人力、物力、财力资源,需要各种计算机软、硬件的支持。
这一特点是在系统软件评估中应予充分考虑的,也是从成本途径评估系统软件价值时应予着重关注的。
据统计,软件成本在软、硬件总成本中的份额,已从50 年月的百分之十几,上升到近期的百分之七八十,而且还在持续上升。
软件成本中的开发成本和维护成本的比例,也从50年月的接近1:1,达到了近期的1:2。
系统软件开发成本和维护成本在整个生命周期中份额。
本文对上表的数字作了部分调整。
主在维护阶段剔除了完善性维护成本。
这一项成本不应列入托付评估系统软件的本次价值评估。
这样,开发、维护成本在整个生命周期中的份额也相应发生了变化。
一、系统软件的成本构成系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和。
从财务角度来看,列入系统软件的成本有如下的项目:(1)硬件购置费如计算机及相关设备的购置,不间断电源、空调器等的购置费。
(2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购置费。
(3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等。
(4)培训费。
(5)通讯费,如购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用。
(6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用。
(7)财务费用。
(8)管理费用,如办公费、差旅费、会议费、交通费。
(9)材料费,如打印纸、包带、磁盘等的购置费。
(10)水、电、汽、气费。
(11)专有技术购置费。
(12)其它费用,如资料费、固定资产折旧费及咨询费。
软件项目成本估算步骤:规模、工作量、工期、成本
软件项目成本估算步骤:规模、工作量、工期、成本软件项目成本估算分为以下步骤:
1. 估算软件规模。
根据可行性研究报告或类似文档明确项目需求及系统边界。
选择估算方法时,要依据项目特点和需求详细程度来决定。
2. 估算工作量。
可以采用方程法、类比法和类推法。
如果软件项目需求极其模糊或不确定,可利用高度相似的历史项目数据来粗略估算工作量。
3. 估算工期。
同样可以采用类推法、类比法和方程法进行估算。
4. 估算成本,类比法和类推法同样适用于需求极期模糊或不确定时的成本估算。
5. 进行软件工作量评估,包括收集历史工作量数据、分析历史工作量数据、建立工作量评估模型、评估工作量、工作量模型的标定和更新。
6. 进行软件阶段工作量评估,团队应充分考虑软件项目的工期因素,对软件项目总工作量安排和各个阶段工作量安排进行优化分析,将软件项目的总工作量以合理可行的方式分解为各个阶段的工作量。
同时考虑各种约束条件,如客户强制工期要求、市场竞争性等。
软件开发成本估算模型
软件开发成本估算模型软件开发成本估算模型是为了在项目启动阶段评估和预测软件开发过程中可能涉及的成本而设计的。
这些模型旨在考虑各种因素,包括项目规模、复杂性、开发人员的经验、所采用的技术等。
以下是一些常见的软件开发成本估算模型:1. COCOMO 模型(Constructive Cost Model):• COCOMO 是一种经验模型,最初由Barry Boehm在1981年提出。
它根据项目的规模、复杂性和开发环境等因素,使用不同的参数进行估算。
COCOMO分为三个级别:基本COCOMO、中级COCOMO和高级COCOMO。
2. Function Point 模型:•这个模型基于应用程序的功能点数量来估算软件开发成本。
功能点是根据用户需求的不同功能来计算的,包括输入、输出、查询和文件。
3. PERT 模型(Program Evaluation and Review Technique):• PERT 是一种项目管理技术,但也可以用于软件开发成本估算。
它使用概率分布来估算不同任务的持续时间,并计算整体项目的概率。
4. Expert Judgment:•专家判断是一种直观的估算方法,通过依赖经验丰富的团队成员的专业意见来估算成本。
这通常结合了历史数据和专家的直觉。
5. Monte Carlo 模拟:• Monte Carlo 模拟是一种基于概率的估算方法,通过多次随机抽样来模拟不同的项目情景,并计算出可能的成本范围。
6. 比较法:•通过比较相似项目的成本数据,可以估算新项目的成本。
这要求找到和新项目相似的历史项目,并调整以适应新项目的特定情况。
7. 成本估算工具:•有一些成本估算工具和软件,如Estimate, COCOMO II等,它们使用算法和模型来帮助项目经理和开发团队进行成本估算。
需要注意的是,这些模型和方法都是估算工具,实际项目成本可能会受到各种未知因素的影响。
因此,在项目进行过程中,成本估算通常需要根据实际情况进行调整。
10种软件规模估算简介
10种软件规模估算简介规模估算是项⽬成本估算的先驱条件.也是最关键的软件项⽬管理任务之⼀。
下⾯介绍10种软件应⽤规模估算的⽅法:1. 传统的类⽐规模估算法类⽐规模估算法是将新项⽬与已完成的旧项⽬进⾏类⽐,基于旧项⽬数据进⾏估算。
如果有基准数据或者来⾃类似项⽬的历史数据.这种规模估算⽅法可以较早完成,甚⾄在完全知道新应⽤软件的需求之前就可以开始类⽐规模估算。
但是,如果既没有类似项⽬的历史数据⼜没有精确的基准数据,类⽐规模估算法根本就⽆法⼯作。
2. 基于代码⾏指标的传统规模估算法虽然基于Loc指标的规模估算⽅法应⽤⾮常普遍,但它却是有害的。
它的害处表现在:1. 当计算⽅法在物理⾏数和逻辑语句数之间进⾏转换时,从相同代码段所计算出来的规模可能会出现超过500%的差异。
2. 该指标对⾼级编程语⾔的损害与该语⾔的能⼒成正⽐。
换句话说,使⽤Loc指标表⽰⽣产⼒和质量数据,汇编语⾔看起来⽐Java或c++更好。
3. Loc指标⽆法⽤于估算或度量软件项⽬的⾮编码活动,⽐如需求、架构、审计和⽤户⽂档。
4. 软件⾏业存在有超过700种编程语⾔.其中超过50种编程语⾔根本就没有已知的源代码计数规则。
5. ⼤多数现代应⽤软件都⽤多种编程语⾔编写,有些应⽤软件使⽤了多达15种编程语⾔.⽽这些语⾔每个部有⾃⼰独特的代码计数规则。
所以即使是Java和HTML的简单混合也使代码计数变得⼗分困难。
另外,这种规模估算⽅法对需求、功能说明书和其他书⾯⽂档的规模估算⽆能为⼒。
3. 基于故事点数指标的规模估算法⽤户故事包含了特定软件需求⾮常简洁的描述.只有⼀两句话组成。
它是⼀种收集需求的⽅法。
使⽤故事点估算的⼀个问题是.没办法将使⽤故事点度量指标的应⽤软件与使⽤功能点、⽤例点或任何其他软件度量指标进⾏规模估算的应⽤软件进⾏⽐较。
4. 基于⽤例指标的规模估算法⽤例是⼀种既有⽂字描述也有图形的需求表⽰⽅法。
⽤例中除了⾓⾊外还包括许多其他元素.⽐如前置条件、后置条件等。
软件的成本估算的名词解释
软件的成本估算的名词解释在当今的信息时代,软件在各个领域发挥着重要作用。
然而,软件的开发过程并非轻而易举,需要耗费大量的人力、物力和时间资源。
在开发软件之前,第一步就是进行成本估算,以确保项目的可行性和经济性。
本文将对软件的成本估算进行详细解释。
成本估算是对软件开发流程中所需资源的合理评估,旨在预测所需的人力、物力和时间投入,从而为项目管理和预算规划提供决策依据。
软件的成本估算并非一项简单的任务,需要考虑项目的规模、复杂性、技术要求以及开发团队的能力等因素。
首先,软件的成本估算包括人力成本。
人力成本是指开发软件所需的人员工资、福利和培训等费用。
通常情况下,软件开发团队包括项目经理、软件工程师、测试人员和用户界面设计师等。
每个团队成员的工作时间、工作效率以及项目进度都会直接影响人力成本的估计。
其次,软件的成本估算还包括物力成本。
物力成本是指开发软件所需的硬件设备、服务器、操作系统、数据库等设备和软件的购置和维护费用。
此外,还包括云计算服务等外部资源的使用费用。
物力成本的估算需要考虑到设备的价格、使用寿命和折旧等因素。
第三,软件的成本估算中还包括时间成本。
时间成本涉及到软件开发所需的工期和项目进度。
软件项目的时间成本估算需要对开发过程中各个阶段的工作量和时间分配有准确的估计,以及对项目风险的评估和处理。
此外,软件成本估算还需要考虑项目的规模和复杂性。
项目规模是指软件的功能需求和规格要求,通常使用功能点、代码行数和文件数等指标来衡量。
而项目的复杂性则受到软件功能的多样性、技术要求的高低以及系统的集成难度等因素的影响。
规模和复杂性的估算可以采用一些定量分析的方法,如基于历史数据的经验模型和软件度量等。
最后,软件成本估算需要考虑到开发团队的能力和经验。
开发团队的能力决定了项目的质量和效率,而经验则可以帮助团队更好地预测和处理潜在的问题和风险。
因此,在进行软件成本估算时,需要充分考虑开发团队的技术水平和项目经验。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5
规模的单位
LOC(Loc of Code)
源代码程序长度的测量
FP(Function Point)
用系统的功能数量来测量
人月 人天 人年
6
软件项目成本
完成软件规模相应付出的代价。 待开发的软件项目需要的资金。 人的劳动消耗所需要的代价是软件产品的主要
16
间接成本
不能具体到某个项目中的成本, 可以分摊到各个具体项目中的成本,例如:
培训 房租水电 员工福利 市场费用 管理费 其他等等
17
项目估算结果
估算结果包括估算文件和估算说明 估算文件
包括资源,资源的数量,质量标准,估算成本等信息 单位:一般是货币单位,或是规模单位 BAC(Budget At completion预算完成)
的过程。 是一种量化的结果 可以有一些误差,通常需要一定的调节 成本估算不同于项目定价 贯穿于软件的生存周期,只要WBS有变化就需要
进行成本估算 估计成本、资源、进度时需要经验、历史信息。
9Hale Waihona Puke 本章要点一、软件项目规模成本的概念 二、估算的过程 三、估算的方法 四、估算的误差
10
估算输入
成本 开发成本是以一次性开发过程所花费的代价来
计算的
7
软件的规模和成本的关系
软件项目规模(工作量)是成本的主要因素,是 成本估算的基础
有了规模就确定了成本,如一个项目需要20人 月,3万元/人月,则项目的成本是60万。
8
成本估算定义
对完成项目所需费用的估计和计划 包括预测开发一个软件系统所需要的总工作量
成本估算过程
成 本 估 算 方 法
估算结果
11
成本估算输入
项目需求、 WBS 历史项目度量 资源要求(资源编制计划) 资源消耗率(资源单价):如人员成本: 100元/
小时 进度规划:项目总进度(一般是合同要求) 学习曲线(项目组学习某项技术的时间)
12
资源规划
需要的资源种类、数量等
估算说明
工作范围,通常由WBS获得 估算的基础和依据,即确认估算是合理的和估算是根据
什么产生的 确认为成本估算所做的任何假设的合理性 估算的误差变动等
18
本章要点
一、软件项目规模成本的概念 二、估算的过程 三、估算的方法 四、估算的误差
19
估算的基本方法
1. 代码行、功能点、用例点 2. 类比 (自顶向下)估算法 3. 自下而上估算法 4. 参数法估算法 5. 专家估算法
Putnam模型是一种动态多变量资源模型,可以用下面 的方程式来表示:
L=cK1/3 T4/3 或
K=L3/(c3 T4) 其中L(行)与T(年)仍分别代表源程序长度和开发时间。 K表示全生存期(含维护在内)所需要的工作量(人—年)。对 大型软件而言,其大小约为开发工作量E的2.5倍,即E=0.4 K。c是一个与开发环境有关的常数。对“优良”、“好”与“ 不好”的3种环境,c的典型值可分别取l2500、10000与 6500。
软件项目管理与质量保证
黑龙江大学软件学院
0
软件开发项目管理
第六章 软件项目规模成本估算
1
本章要点
一、软件项目规模成本的概念 二、估算的过程 三、估算的方法 四、估算的误差
2
成本管理过程
资源计划编制:
确定项目需要的资源种类和数量
成本估算:中心环节
编制一个为完成项目各活动所需要的资源成本 的近似估算
20
代码行(LOC)
从软件程序量的角度定义项目规模。
要求功能分解足够详细的 有一定的经验数据(类比和经验方法) 与具体的编程语言有关
21
1.静态单变量估算模型
这种模型在计算软件开发的资源花费时,只需要 设定被开发软件的一种参数,故称为单变量型 。它的一般形式是: 资源=C1×(估计的软件特征)C2
其中,资源可以是开发工作量(E)、开发时间(T)或 开发人数(P)等;估计特征可以用源程序长度(L) 、或软件的开发工作量(E);C1、C2为依赖于开 发环境和软件应用领域的两个经验常数。
22
1.静态单变量成本估算模型
自1973年至l977年,Walston与Felix从60个软件项目(源程序长度从4至 467千行,工作量从l2至11758个人—月,使用了28种不同的高级语 言)的统计中导出了以下的一组参数方程: E(人—月)=5.1×L (千行)0.91 T(月) = 4.1×L (千行)0.36 T(月) =2.47×E (人—月)0.35 P(人) =0.54×E (人—月)0.6 文档长度(页)=49×L(千行)1.01
这组方程在计算E、T、P等开发所需的资源时,使用L(千行)作为估计 的特征。由L计算开发时间、工作量或文档页数,再由算出的工作 量E来计算开发时间与所需人数。
这类模型简单易懂,常数C1、C2可以从历史数据导出。但如果没有适 用于本单位情况的经验常数,就不能直接搬用。
23
2.Putnam成本估算模型
Administrative staff Database analysts
Testing specialists
14
成本估算
规模成本估算主要是对各种资源的估算,包括人 力资源、设备、资料等。
直接成本 间接成本 这些估算的算法下节讲
15
直接成本
与具体项目相关的成本(人员的工资、材料费、 外包外购成本等),包括开发成本、管理成本、 质量成本等。
13
一个大型IT项目的示例资源直方图
Number of People
12 10
8 6 4 2 0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Java programmers Business analysts Technical writers
Managers
成本预算:项目进度
将总成本估算分配到各单项工作活动上
成本控制:项目跟踪
控制项目预算的变更
3
关于估算
估算不是很准确的,有误差的 经验(历史)数据非常重要 不要太迷信数学模型
4
软件项目规模
软件项目规模即工作量,是从软件项目范围中 抽出的软件功能,然后确定每个软件功能所必 须执行的一系列软件工程任务