版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程经济学第5章
第2页
软件生产过程:规划、需求分析、概要设计、详细设计、编码、系统集成、测试、交付本章研究主要内容:生产过程的规模效应投入要素与产出关联变动的规律劳动生产率的提高
第3页5.1软件生产函数与软件生产率
生产函数是宏观经济学和微观经济学理论中的一个重要概念反映生产过程中投入要素与其可能生产的最大产量之间的依存关系的数学表达式Y=F(K,L,N,O,t)Y为产出量K为资本L为劳动N为土地O为组织管理t为时间或工期简化为:Y=F(K,L,t)
第4页1、C-D生产函数西方学者在采用计量经济学的有关统计法的研究中提出了多种形式的生产函数,从不同的侧面反映了西方国家生产过程中的工程经济行为。由美国数学家柯布和经济学家道格拉斯提出的C-D函数形式如下:Y为产出量;L为劳动力投入;K为资本投入;A为除劳动与资本要素外其他对产出Y的总影响。5.1.1软件生产函数及特性
第5页分别对L和K求偏导,得:
称为劳动力对产出的弹性系数,表示在其他条件不变的情况下,劳动力增加百分之一会使产出变化的百分比;称为资本对产出的弹性系数,表示在其他条件不变的情况下,资本增加百分之一会使产出变化的百分比;
第6页生产函数一般都满足如下特性:资本与劳动力的边际产出均为正值,即有其经济含义为:劳动力(或资本)投入量不变的情况下,资本(或劳动力)的增加将导致产出量的增加。边际产量递减,即有其经济含义为:当其他生产要素固定不变时,随着某一要素投入量的增加,边际产量将逐渐减少。生产函数具有非负性,且总产量是生产要素组合的结果,即总产出为正值,单一要素的投入不能获得产出。即有
Y=F(K,L,t)>0Y=F(K,0,t)=0Y=F(0,L,t)=0
第7页2、规模经济(规模报酬)表示当生产规模变化时,对产出的影响程度。规模报酬一般有三种情况:当全部生产要素按某种配合方式以相同比例增加时,若Y=F(λK,λL,t)>λF(K,L,t),
则称该生产活动呈规模报酬递增或规模经济;若Y=F(λK,λL,t)<λF(K,L,t),则称该生产活动呈规模报酬递减或非规模经济;若Y=F(λK,λL,t)=λF(K,L,t),则称该生产活动呈规模报酬固定
第8页Y=F(K,L,t)=ALαKβF(λK,λL,t)=A(λL)α(λK)β=λα+βALαKβ=λα+βY
因此对C-D函数容易验证得以下结论:若+>1,则称该生产活动呈规模报酬递增或规模经济;若+<1,则称该生产活动呈规模报酬递减或非规模经济;若+=1,则称该生产活动呈规模报酬固定
第9页
弹性系数求解C-D生产函数是一种较为普遍的生产过程中的生产过程规律描述。但对于不同的企业(部门和地区),由于其外部环境与内部条件的不同,故产出对劳动力或资本的变化反映程度不同,即与不同。求解思路:收集特定企业(部门和地区)的数据序列,将二元非线性函数转化为二元线性函数求解
第11页软件生产函数美国软件工程专家(L.H.Putnum)S为软件生产规模或源代码程序量(单位:NCSS);K为软件项目在生存期内投入的总工作量(单位:人年)td为软件项目投入的人力峰值,通常为交付期或工期(单位:年)E为环境因子软件生产函数的三个特性:软件工作量或交付工期的边际生产量均为正软件工作量的边际生产量递减;交付工期的边际生产量递增;软件生产函数具有非负性根据软件函数中弹性系数之和大于1,可知软件生产活动具有规模报酬递增效应。
第12页5.1.2软件生产率及其影响因素软件生产率的定义:每个人月所交付的源代码程序量,单位:NCSS/PM软件生产率的影响因素:组织、管理因素;技术因素提高生产率的常用措施:提高团队工作的业务规范、编程规范采用较为先进的软件工具部分功能采用商业软件包改编现有的已熟悉软件的部分功能采用软件构件技术、多版本技术、软件复用技术建立科学、合理的激励、约束机制对人员的选择采用如下五原则:顶级天才、任务匹配、职业发展、团队平衡、逐步淘汰原则
第13页5.2软件生产过程经济分析
5.2.1软件生产系统动力学方程1、软件生产过程经济分析--分析软件生产系统内在经济要素关联及其动态发展规律。经济要素:生产规模、开发难度、人力工作量(累计工作量、人力峰值)、费用、劳动生产率、环境因子、交付期等例如:劳动生产率和生产规模、开发难度、环境因子之间的关联;开发难度和总工作量、交付期之间的关联;人力峰值的到达时间等。2、如何分析?——建立系统动力学方程软件生产系统动力学方程
英国软件工程学家诺顿提出了Noder-RayleighModel建立模型基础:a、假设(基于客观统计数据上的一种经验)
b、统计分析
第14页诺顿-瑞利模型Noder-RayleighModel
表5.1N-R模型变量表
变量符号变量内涵单位C(t)软件工程在[0,t)内投入的累计人力工作量(人力费用)人年m(t)C(t)的变化率或软件工程在t时刻投入的人力密度人K软件工程在生存期内投入的总工作量人年p(t)软件开发效率函数或学习函数-td软件工程投入人力的峰值时刻(通常为交付期或工期)年D软件工程项目的开发难度系数人/年D0软件工程项目的人力增长率人/年2S软件项目的生产规模或源代码程序量NCSSFC软件工程项目生产费用率万元/人年Fd软件工程项目开发劳动生产率NCSS/人年E软件工程开发的环境因子-
第15页模型假设如下:开发项目中需要投入的总工作量K为有限;C(t)在项目开始时为零,即C(0)=0,然后单调增长到K;任何时刻开发项目组投入的人力数m(t)与尚待解决的问题(或尚需投入)的累计人力工作量成正比;在项目生存周期中,项目开发人员由于不断学习,其开发效率可用关于时间t的学习函数p(t)来描述,是时间t的线性增函数,且m(t)与p(t)成正比。----由假设得下列人力投入的系统动力学方程:
第16页求解微分方程得:因为函数m(t)具有概率论中瑞利分布函数的形式,故m(t)称为诺顿-瑞利曲线。
第17页通过,求得N-R曲线在点时取得最大值。显然,m(t0)即为软件生存周期中的开发人员的峰值。由此可知,对于不同的b值(b>0)和K值,N-R曲线均为具有单峰值且自左向右由单调增到单调降的曲线。
第18页在20世纪70年代,美国陆军中央设计处对所积累的200多个软件开发项目的数据进行统计分析,Putnum发现:上述m(t)在(0,∞)中的最大点t0非常接近交货时间td,因为在临近交货期时需要大量的人力资源编制说明书,进行软件调试与质量检验,并对设计、编码等工作做再修改。
第19页由统计分析的结论,可知即代入
有
第20页一个开发好的软件系统在初步运行性能良好并交付给用户时只花费了生存期内投入总人力费用的39%,剩下的61%的人力费用将用于该软件系统在运行维护阶段的质量检验,可靠性增长,维护与修改等工作。m(t)C(t)Km0tdOt
第21页5.2.2软件项目难度系数与人力增长率Putnum通过对英美大量软件项目的研究,得到了一些统计规律:结论1:软件项目的开发难度与生存周期内投入的总工作量K成正比,与交付期td2成反比。D为软件工程开发难度系数(初始人力增长密度)
第22页结论2:对于具有统一项目开发特性的软件工程,尽管随着项目规模的增大,K和td均将增大,然而K/td3则基本稳定在某一常数周围,而不同开发属性的项目其常数不同。
8,软件是一个与其他系统有多个接口和交互功能的全新软件
D0=15,软件是一个独立系统
27,软件是从其他已开发的软件基础上建立的系统引入参数D0,D0为人力增长率
[例5.1]某软件项目,其初始人力密度增长率为4人/月,预计1年7个月后交付用户,生产费用率为6万元/人年,试确定项目生存期内投入的总工作量(人力费用),峰值人数和总费用项目开发难度系数和人力增长率,以及开发阶段投入的累计人力工作量和费用。解:注意到交付期有初始人力密度增长率由(5.12)式知有从而得生存期投入总工作量K以K与td数值代入(5.11)式和(5.13)式有峰值人数m0,人力增长率D0生存期投入的总费用(平均)U为开发阶段投入的累计人力工作量C(td)和费用Ud有
5.2.3软件的劳动生产率、生产函数及其关联
结论3:
---Fd为软件项目的劳动生产率,E0为软件项目开发环境的技术状态。公式的经济含义:难度越大,劳动生产率越低下在同样难度下,不同的开发环境、技术状态(如开发方法、开发工具、项目管理状态),亦将直接影响软件项目的劳动生产率。
把和式代入得:结合生产函数做弹性分析,可知:若开发时间压缩10%,人力费用将增长40%。若开发时间压缩10%,项目难度将增长60%。经验所得,时间压缩一般不能超过原计算值的25%。5.2.4软件项目开发子周期与生存周期经济要素的关联分析将软件的设计编码开发阶段称为软件项目的开发子周期而将软件项目的生存周期称为项目总周期1、项目开发子周期的工程经济分析Kd表示软件开发阶段人力费用总量Cd(t)表示软件开发阶段[0,t)时间段累计人力费用md(t)表示软件开发阶段t时刻人力费用t0d表示开发子周期内人力投入的峰值时刻并有,若仍设td表示软件交付期,则一个实用的假设是:在t=td时,项目将投入开发阶段人力投入总量Kd的95%(其余5%将用于现场安装与有效性测试),此即为对上式两边取对数可得,从而有或有
m(t)md(t)0tt0dtd投入人力密度
图5.3由图可知软件项目总周期的m(t)与开发了周期的md(t)在t=0时刻有相同的斜率,或有,可得
上式说明D既可以作为整个项目生命周期的难度系数,也可作为开发子周期的难度系数。但对于D0情况则并非如此
若在某个时间上项目已经消耗了其全部人力费用的39%,而此时计划中的任务也已经得到及时正确地完成且无需某些人员时,该项目经理即可确认此项目运行轨迹是正确的,而项目结束时的总人力费用可能就是预计的Kd人年,且不会拖延交货时间。而当交货时刻t=td时已消耗95%的总开发人力费用时,则尚有5%的Kd还可用于现场安装与有效性测试,从而保证项目开发工作的顺利完成。[例5.2]
某软件开发项目待开发的程序量S已经测算为9000NCSS,其开发将在环境因子确定为1200的环境中进行,并注意到该软件项目是一个独立的数据处理类型程序,其人力增长率选定为D0=15。试求:开发子周期td与开发峰值人数出现时刻t0d;开发子周期投入人力费用Kd,总投放人力费用K与项目难度系数D;峰值人数;该软件项目的生产率解:利用(5.15)式所示的软件项目生产函数可得
由此可得,由上述生产函数可得
由(5.22)式有由(5.14)式有
第36页5.2.5环境因子的确定
环境因子反映开发机构个性(开发风格和习惯)的工程经济参数由开发环境、技术状态(如开发方法、开发工具和设备管理状况等)所决定。
确定环境因子的方法:类比法统计分析法例如某开发机构欲开发一目标软件A,欲确定其环境因子EA,此时可采用类比法来求解E,亦即该开发机构可从其所拥有的历史资料信息库中选择一个与目标软件A有相似功能,采用相似开发方法与设备的软件B(已运行),根据该软件B在开发期内所投入的累计人力费用,交付期td和所提交的源代码程序量S,通过下式来计算E:如果开发机构所拥有的历次资料信息库中与目标软件A有相似功能,采用相似开发方法与设备的软件有多个,例如有B1,
B2,…
,
Bl
等软件l个,此时可调用这l个软件的数据库列
采用最小二乘法来计算E。
第39页不同规模软件工程经济分析表明:随着规模的加大,软件工程经济项目的人力资源组织及其管理有较大区别。随着规模的增大,开发机构的人力资源分成:项目开发任务组----开发的基本任务:规划、分析、设计、编码及审查与测试项目支持任务组应用学科领域知识的支持计算机网络与通信设备的使用与维护支持工程计划网络的设计、跟踪与控制文本提供、质量保证与配置管理资源控制、任务跟踪协调与进程监控5.3不同规模的软件工程经济分析为研究涉及项目开发任务组及项目支持任务组的有关工程经济分析,我们首先给出了有关工程经济参数的变量表6.35。若设表示开发阶段时间区间(子周期),则显然有5.3.1不同规模软件的人力投入属性及其比较变量经济内涵单位m(t)在项目生存周期内t时刻的人力投入量(人年)mp(t)在项目开发阶段t时刻的人力投入总量它包括开发人力投入量与支持人力投入量两部份(人年)md(t)在项目开发阶段t时刻的开发人力投入量(人年)ms(t)在项目开发阶段t时刻的支持人力投入量(人年)C(t)在项目生存周期内[0,t)区间内累计投入人力总量(人年)Cp(t)在项目开发阶段[0,t)时间段内累计投入开发人力与支持人力总量(人年)Cd(t)在项目开发阶段[0,t)时间段内累计开发人力投入总量(人年)Cs(t)在项目开发阶段[0,t)时间段内累计支持人力投入总量(人年)K在项目生存周期内为完成所有任务投入的总工作量(人力量)(人年)Kp在项目开发阶段内为完成所有(包括开发任务与支持任务)任务投入的人员总量(人力量)(人年)Kd在项目开发阶段内为完成开发任务投入的开发人员总量(人力量)(人年)Ks在项目开发阶段内为完成支持任务投入的支持人员总量(人力量)(人年)td表示在项目生存周期内投入人力峰值的时刻或项目交付时间或工期(年或月)t0p在项目开发阶段内投入人力峰值的时刻(年或月)t0d在项目开发阶段内开发人力峰值的时刻(年或月)t0s在项目开发阶段内支持人力峰值的时刻(年或月)表5.2有关变量经济内涵表程度量
SS<18K(18K,70K)S>70Kmd
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【初中 生物】细胞分化形成组织课件-2025-2026学年北师大版生物七年级上册
- 2026年全国消防安全知识竞赛试题库及答案
- 2026年党员干部党纪政纪条规知识竞赛测试题库及答案(完整版)
- 安全生产事故隐患排查治理工作制度(7篇)
- 成本预算执行与绩效挂钩策略
- 成本标杆的科室应用策略
- 云南省昭通市巧家县2023-2024学年七年级上学期期末英语试题(含答案)
- 温湿度记录仪设备报废回收协议
- POS机收单合作协议
- API接口调用对账协议
- 绿化苗木种植合同范本
- 2026年辽宁省沈阳市单招职业倾向性测试题库及参考答案详解一套
- 2025秋小学信息科技四年级全一册期末测试卷含答案(人教版)
- 2025~2026学年上海市闵行区莘松中学八年级上学期期中语文试卷
- 2025新疆维吾尔自治区哈密市法院、检察院系统面向社会招聘聘用制书记员31人笔试考试参考题库及答案解析
- DB35∕T 2249-2025 海峡两岸共通 妈祖祭典
- 冶金原理李洪桂课件
- 2025四川绵阳市江油星乙农业投资集团有限公司招聘26人考试历年真题汇编带答案解析
- GB/T 13354-2025胶粘剂密度的测定
- 2025-2030绿色建筑预制构件标准化生产与碳排放核算研究
- 水产养殖知识培训课件
评论
0/150
提交评论