究期末的残值。(b)完全不承认未使用价值,即B方案在研究期后的未使用价值在方案比较时全部忽略不计。(c)客观估计B方案在研究期后的未使用价值以作为残值,然后作两投资方案比较与选优 。费用现值法:所谓费用现值(Present Cost, PC)是指一个软件系统开发方案付诸实施时各年应付出的费用流的贴现值。这样的贴现值可以通过2.1节的现金流的贴现与预计原理求得。我们在求得各开发方案的费用现值后,再比较各开发方案的费用现值,并从中选取最小费用现值的方案作为最佳方案,这就是费用现值法的基本原理和思路。费用—效益分析
大部分软件项目均是以盈利性为目标,因此在对这些项目作可行性分析时,主要考虑其投资的盈利性问题。然而也有一部分软件项目,特别是服务于公用事业如城市道路交通管理、防洪救灾的紧急事务处理等的软件项目,由于这些项目追求的是为社会提供公共物品,满足社会大众的公共需求,以弥补市场机制的不足,有利于实现社会公平,提高人民生活。
因此,这些软件项目的社会效益应是项目可行性分析的主要出发点。而费用—效益分析方法就是解决上述问题的重要方法之一,该方法常被西方发达国家用以评价社会公用事业的社会、经济效果,也是发展中国家用于公用事业投资(政府投资)的大型项目可行性分析的主要方法之一。软件项目风险辨识项目风险辨识要解决的问题有如下三个:
软件项目有哪些风险需要考虑?引起这些风险的主要因素是什么?
这些风险所造成的后果严重程度如何?而解决上述三个问题的过程实际上是一个寻找风险因素,并对这些因素进行分类的过程,常用的风险辨识的方法有风险树分析法。幕景分析(Sceneries Analysis)法,头脑风暴(Brainstorming)法,Delphi法等,限于篇幅,以下通过案例来介绍风险树分析法的基本思想。见的风险辨识方法有表格分析法和风险列举法。确定风险应对策略 :风险回避策略,风险转移策略。风险分散策略,风险承担策略。
1.5第五章:
本章的标题为软件生产过程经济分析,主要分为下面几个内容:软件生产函数与软件生产率2 软件生产过程经济分析3 不同规模软件的生产过程经济分析4 软件项目理论生存周期长度及其关联分析。软件劳动生产率或简称软件生产率(Software Productivity),它被定义为每个人月(Person- months. PM)所交付的源代码程序量(单位:NCSS/PM)。大量的工作实践与实验研究证实:影响整个产品的软件生产率提高的因素主要有两类:第一类因素是组织与管理因素,如用人不当、管理不善、缺乏必要的业务规范和激励与约束机制等;第二类是技术因素,如产品需求的复杂性和高可靠性、服务器与工作站的存取速度与运算速度、主存储器的约束、需求的易变性以及恶劣的工作环境等因素都会影响软件生产率的提高。 提高软件生产率的常用的几个措施:提高团队工作的业务规范与编程规范。采用较为先进的软件工具如程序库、程序生成器、模型生成器等。部分功能采用商业软件包(如算法软件包、数据库管理系统等)。改编现有的已熟悉软
件的部分功能。采用软件构件技术、多版本技术和软件复用技术 建立科学和合理的激励和约束机制。对人员的选择采用如下五原则:顶级天才原则、任务匹配原则、职业发展原则、团队平衡原则和逐步淘汰原则。项目难度系数与人力增长率,软件工程专家普特纳姆(Putnam.L.H)通过对英、美大量软件工程项目资料的研究,得到了一些经验规律性的结论,首先他发现软件工程的开发难度与生存期内投入的总工作量K成正比,与交付期成反比。于是他建议引入一个能用来定量描述项目开发难度的参数D,并称D为软件工程开发难度系数,
且有,软件项目各经济要素(人力资源费用、
工期、工程难度、生产函数)及其数量关系均是在整个软件项目生存期(又称项目总周期)内获得的。显然,它应该适用于软件项目生存期的各阶段(子周期)如软件设计编码开发阶段、调试与验证阶段、修正维护阶段等。软件项目理论生存周期长度及其关联分析,对于大型软件项目,人们除关心开发子周期与项目任务子周期内的工程经济分析外,人们更应当关心在软件交付用户使用后的经济活动及其经济分析,为此我们设文该软件项目的生存周期为tf,亦即当时该软件将“报废”,以下来寻求tf与td、K等主要经济量的关系。注意到K为期间投入的累计人力资源总量,而C(tf)为内投入的累计人力资源总量,故可认为有。
1.6第六章:
本章标题为软件项目的进度计划制订和团队组织,基本概念与工作流
程,工作(任务)分解结构(WBS)。工作(任务)分解结构(Work Breakdown Structure)是指由一系列软件项目活动所组成的层次结构。WBS的目的是为进行团队组织,并进而为工作进度计划制订和成本估算与控制打下基础。WBS的任务分解可以生命周期的阶段/活动为准则,也可以软件项目的目标或功能属性为准则。WBS的分解层次数量不限,但每层数量一般尽量不超过七个单元,最底层元素(活动)可由个人或一个工作小组(一般至多为七人)来完成。活动逻辑顺序的确定准则,1.由客观规律与内部物质条件所决定刚性逻辑关系2.由人的主观意志所决定软逻辑关系3.依赖于外部环境或条件外部依赖关系4.由里程碑(项目分阶段考评的时间点)决定。计划网络图:计划进度网络图(简称计划网络图)是由一系列结点和有向边(有边弧)组成的反映软件项目各活动(任务)执行内在逻辑关系的赋权有向图。 常用的计划网络图(统筹图)有节点法网络图(单代号网络图),箭线法网络图(双代号网络图)和条件箭线图法等 。箭线法计划网络图是由一系列节点和箭线(有向弧)所构成的赋权有向图,此中箭线表述项目活动(任务),在统筹图中它又称为作业、工序等,每一箭线的始端和终端均有两个节点,分别表示该活动的开始事项和终止事项 。进度计划的分析与求解,求得软件项目的时间计划网络图只是求解软件项目进度计划的第一步,作为项目管理人员,为了更好地对该软件项目的开发进程进行管理与控制,他们还需要解决如下五个问题:(1)确定每个活动的开始时间和结束(完成)时间,且这样的活动开始时间与结束(完成)时间不应是硬性规定的,应允许其有一
定的机动余地。(2)在开发方已有的资源投入下求解该软件项目的交付日期(工期),或给定工期(投资方要求)条件下来安排各活动的开始时间和结束时间。(3)为了完成工期Td目标,在整个软件项目开发过程中哪些活动是关键的?此中所谓关键活动是指由于这些活动完成的耽误或更改,将直接影响项目工期目标完成。(4)由于开发过程中各相关活动是延续进行的,因此前一活动的耽误必将影响紧后活动的完成,从而构成了一条关键线路。显然关键线路及其中的每一关键活动是项目管理人员管理与控制的重点。(5)对于给定的工期目标Td,在已有项目各活动时长的条件下能否顺利完成的风险分析。 各阶段活动的全职人员数确定原则,(1)应尽量使FSPij为整数,其不足之处可由同一阶段的其他活动全职人员数合并。(2)软件程序规模较大时,编程或测试阶段可将程序员再分成若干个小组,为管理有效起见,每个团队小组不宜超过7人。(3)在安排各团队小组的人员配置时,应尽量使投入的每个全职人员在完成任务时在时间上具有连续性,不宜将人员频繁地调动更换工作任务。
2.知识点掌握
通过学习软件工程这门课程,掌握了,投资的相关概念及企业为了实现某种特定的目标(通常是为了获得收益或避免风险)而进行的某种资金投放或运行的经济活动。通货膨胀率是度量国家(地区)物价上涨(货币供应量或货币购买力)相对变化率的一种参数,国家或各级