软件工程管理(精品).ppt

上传人:hwp****526 文档编号:85537330 上传时间:2023-04-11 格式:PPT 页数:65 大小:555.50KB
返回 下载 相关 举报
软件工程管理(精品).ppt_第1页
第1页 / 共65页
软件工程管理(精品).ppt_第2页
第2页 / 共65页
点击查看更多>>
资源描述

《软件工程管理(精品).ppt》由会员分享,可在线阅读,更多相关《软件工程管理(精品).ppt(65页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件工程管理第十章第十章第十章第十章 软件工程管理软件工程管理101010.1 10.1 软件工程管理概述软件工程管理概述10.2 10.2 可行性研究可行性研究10.310.3 成本估算技术成本估算技术10.4 10.4 软件项目的组织与计划软件项目的组织与计划10.6 10.6 软件能力成熟度模型软件能力成熟度模型10.5 10.5 软件质量保证软件质量保证第十章 软件需求分析10.1 10.1 软件工程管理概述软件工程管理概述 软件工程管理是对软件项目的开发管理,是对整个软件生存期的所软件工程管理是对软件项目的开发管理,是对整个软件生存期的所有活动进行管理。任何工程的成败,都与管理的好坏

2、密切相关,软件工有活动进行管理。任何工程的成败,都与管理的好坏密切相关,软件工程更不例外。尤其是软件产品的特殊性,软件工程的管理对于保证软件程更不例外。尤其是软件产品的特殊性,软件工程的管理对于保证软件产品的质量具有极为重要的作用。产品的质量具有极为重要的作用。随着软件的规模和复杂度的不断增大,开发人员的增加以及开发时随着软件的规模和复杂度的不断增大,开发人员的增加以及开发时间的增长,这些都增加了软件工程管理的难度。间的增长,这些都增加了软件工程管理的难度。例如:例如:Windows 2000的开发的开发 是微软公司历史上最艰巨的任务,仅是微软公司历史上最艰巨的任务,仅核心部门的的成员就有核心

3、部门的的成员就有2500人,测试用的代码就有人,测试用的代码就有1000万行,测试中所万行,测试中所用到的脚本程序就有用到的脚本程序就有6500种种。象规模如此之大的软件系统,如果没有。象规模如此之大的软件系统,如果没有科学的、规范的、有效的管理,是不可能成功的。因此科学的、规范的、有效的管理,是不可能成功的。因此软件工程管理成软件工程管理成软件工程管理成软件工程管理成为软件工程的重要研究内容之一。为软件工程的重要研究内容之一。为软件工程的重要研究内容之一。为软件工程的重要研究内容之一。10.1 软件工程管理概述任任何何技技术术先先进进的的大大型型项项目目的的开开发发如如果果没没有有一一套套科

4、科学学的的管管理理方方法法和和严严格格的的组组织织领领导导,是是不不可可能能取取得得成成功功的的。即即使使在在管管理理技技术术较较成成熟熟的的发发达达国国家家中中尚尚且且如如此此,在在我我国国管管理理技技术术不不高高、资资金金比比较较紧紧缺缺的的情情况况下下,大大型型软软件件项项目目开开发的管理方法及技术就显得尤为重要。发的管理方法及技术就显得尤为重要。软软件件工工程程管管理理的的对对象象是是软软件件工工程程项项目目,因因此此软软件件工工程程管管理理涉涉及及的的范范围围覆覆盖了整个软件工程过程。盖了整个软件工程过程。软件工程管理的主要任务有:软件工程管理的主要任务有:一、软件可行性分析与成本估

5、算一、软件可行性分析与成本估算二、软件生产率及质量管理二、软件生产率及质量管理三、软件计划及人员管理三、软件计划及人员管理10.1.1 10.1.1 软件管理的任务与目标软件管理的任务与目标10.1.1 10.1.1 软件管理的任务与目标软件管理的任务与目标10.1.2 10.1.2 软件作用的范围软件作用的范围确确定定软软件件的的作作用用范范围围是是软软件件项项目目计计划划的的第第一一项项活活动动。是是要要对对用用户户要要求求解解决决的的问问题题进进行行确确切切定定义义,进进一一步步分分析析软软件件开开发发的的风风险险,以以便便制制定定软软件计划。件计划。10.1.2 10.1.2 软件作用

6、的范围软件作用的范围 从以下方面考虑软件的作用范围:从以下方面考虑软件的作用范围:从以下方面考虑软件的作用范围:从以下方面考虑软件的作用范围:软件的功能、性能软件的功能、性能软件的功能、性能软件的功能、性能 接口(与硬件、软件工具、人、过程的一系列操作)接口(与硬件、软件工具、人、过程的一系列操作)接口(与硬件、软件工具、人、过程的一系列操作)接口(与硬件、软件工具、人、过程的一系列操作)软件的可靠性软件的可靠性软件的可靠性软件的可靠性关关于于软软件件范范围围的的叙叙述述都都应应给给出出定定量量的的数数据据(例例如如,同同时时使使用用该该软软件件的的用用户户数数目目,发发送送表表格格的的长长短

7、短,最最大大允允许许响响应应时时间间等等等等),指指明明约约束束条条件件或或限限制制(例例如如,产产品品成成本本限限制制了了存存储储的的容容量量)。此此外外还还要要叙叙述述某某些些质质量量因素(例如,给出的算法是否容易理解、是否使用因素(例如,给出的算法是否容易理解、是否使用AdaAda语言等)。语言等)。10.1.3 10.1.3 资源要求资源要求1 1、人人力力资资源源在在考考虑虑各各种种软软件件开开发发资资源源时时,人人是是最最重重要要的的资资源源。在在安安排排开开发发活活动动时时必必须须考考虑虑人人员员的的技技术术水水平平、专专业业、人人数数、以以及及在在开开发过程中各阶段对各种人员的

8、需要(图发过程中各阶段对各种人员的需要(图10.210.2)。)。2 2、硬硬件件资资源源主主要要包包括括宿宿主主机机Host Host MachineMachine(软软件件开开发发时时使使用用的的计计算算机机及及外外围围设设备备)、目目标标机机Target Target MachineMachine(运运行行已已开开发发成成功功的的软软件件的的计计算算机机及及外外围围设设备备)和和其其他他硬硬件件设设备备(专专用用软软件件开开发发时时需需要要的的特特殊硬件资源)。殊硬件资源)。3 3、软软件件资资源源即即软软件件工工具具集集,主主要要有有业业务务系系统统计计划划工工具具集集、项项目目管管理

9、理工工具具集集、支支援援工工具具、分分析析和和设设计计工工具具、编编程程工工具具、组组装装和和测测试试工工具、原型化和模拟工具、维护工具、框架工具等。具、原型化和模拟工具、维护工具、框架工具等。4 4、软软件件复复用用性性及及软软件件部部件件库库为为了了促促成成软软件件的的复复用用,以以提提高高软软件件的的生生产产率率和和软软件件产产品品的的质质量量,应应建建立立可可复复用用的的软软件件部部件件库库。对对于于软软件件的复用,人们经常忽略,但这却是相当重要的一环。的复用,人们经常忽略,但这却是相当重要的一环。10.1.3 10.1.3 资源要求资源要求图 10.2 Putnam _ Norden

10、 曲线高高低低计划需求分析初步设计详细设计编码单元测试整体测试功能测试管理人员管理人员高级技术人员高级技术人员初级技术人员初级技术人员通常,软件开发所需的资源,可由通常,软件开发所需的资源,可由“金字塔金字塔“型(图型(图10.1).描述。描述。人人 人员的技术水平,专业和数量。人员的技术水平,专业和数量。工具工具 主要是软、硬件工具。主要是软、硬件工具。根根据据统统计计结结果果,在在软软件件开开发发过过程程中中,不不同同阶阶段段的的人人员员需需求求情情况况如如图图 10.210.2,按照按照Putnam _Putnam _ Norden Norden 曲线所示。曲线所示。人人工具工具问问 题

11、题 分析在软件开发的分析在软件开发的不同阶段各类人员的不同阶段各类人员的需求情况,为什么?需求情况,为什么?图 10.110.1.3 10.1.3 资源要求资源要求Putnam _ Norden 曲线10.2 10.2 可行性研究可行性研究可可行行性性研研究究又又称称为为可可行行性性分分析析,目目的的是是避避免免盲盲目目投投资资,减减少少不不必必要要的的损损失。即以最小的代价在最短的时间内确定该项目是否可能开发、是否值得。失。即以最小的代价在最短的时间内确定该项目是否可能开发、是否值得。任任何何软软件件的的开开发发,都都会会受受到到开开发发时时间间、经经费费及及开开发发环环境境及及技技术术的的

12、限限制制。及及早早对对软软件件项项目目的的可可行行性性做做出出细细致致而而谨谨慎慎的的评评估估是是十十分分必必要要的的。若若在在定定义义阶阶段段及及早早发发现现将将来来开开发发工工作作中中可可能能出出现现的的问问题题,及及早早地地作作出出决决定定,可可将将项项目目开开发的风险降到最低。发的风险降到最低。可行性研究的主要内容有:可行性研究的主要内容有:技术上可行技术上可行经济上可行经济上可行社会上可行社会上可行可行性报告可行性报告可行性报告可行性报告可行性报告可行性报告可行性报告可行性报告可行性分析的结果可行性分析的结果报告报告10.2 可行性研究10.2.1 可行性研究的任务10.2.1 10

13、.2.1 可行性研究的任务可行性研究的任务技术上可行技术上可行经济上可行经济上可行社会上可行社会上可行技术上可行技术上可行经济上可行经济上可行社会上可行社会上可行现现有有技技术术、资资源源及及限限制制能能否否支支持持和和实实现现系系统统的的功功能能、性能。主要是技术风险问题。性能。主要是技术风险问题。进行成本估算及效益评估,确定项目是否值得开发。进行成本估算及效益评估,确定项目是否值得开发。主主要要指指系系统统开开发发后后能能否否运运行行,是是否否存存在在合合同同、责责任任、侵权、用户组织管理等方面的问题。侵权、用户组织管理等方面的问题。一、可行性分析的任务一、可行性分析的任务一、可行性分析的

14、任务一、可行性分析的任务二、可行性分析步骤二、可行性分析步骤二、可行性分析步骤二、可行性分析步骤确定项目规模和目标。确定项目规模和目标。研究现行系统(如果存在)。研究现行系统(如果存在)。建立新系统的高层逻辑模型。建立新系统的高层逻辑模型。用系统流程图或数据流图(用系统流程图或数据流图(DFDDFD图)描述。图)描述。提出实现高层逻辑模型的各种方案,并对各方案进行评价。提出实现高层逻辑模型的各种方案,并对各方案进行评价。推荐可行的方案。推荐可行的方案。编写可行性报告。编写可行性报告。进进行行可可行行性性分分析析时时,通通常常用用系系统统流流程程图图来来描描述述所所要要开开发发的的系系统统。用用

15、于于描述项目的处理流程、范围、功能等。描述项目的处理流程、范围、功能等。1 1、系统流程图的基本符号、系统流程图的基本符号、系统流程图的基本符号、系统流程图的基本符号处理框处理框输入输入/输出输出文档文档连接连接换页连接换页连接数据流数据流磁盘磁盘联机存储联机存储显示显示人工输入人工输入人工操作人工操作辅助操作辅助操作通信链路通信链路一、系统流程图一、系统流程图一、系统流程图一、系统流程图10.2.2 10.2.2 可行性分析的描述手段可行性分析的描述手段10.2.2 10.2.2 可行性分析的描述手段可行性分析的描述手段2 2 2 2、系统流程图举例、系统流程图举例、系统流程图举例、系统流程

16、图举例 库存管理系统库存管理系统库存管理系统库存管理系统功能:功能:j库存零件的种类和数量存放在库存清单主文件中。库存零件的种类和数量存放在库存清单主文件中。随时更新库存文件。随时更新库存文件。当某零件少于库存临界值时,产生订货报告,通知采购部门。当某零件少于库存临界值时,产生订货报告,通知采购部门。输入变更记录输入变更记录库存管理模块库存管理模块订货信息订货信息报告生成模块报告生成模块订货报告订货报告库存库存清单清单10.2.2 10.2.2 可行性分析的描述手段可行性分析的描述手段二、数据流图二、数据流图二、数据流图二、数据流图也可以用图来对系统进行描述。也可以用图来对系统进行描述。也可以

17、用图来对系统进行描述。也可以用图来对系统进行描述。图10.3可行性研究报告(参考格式)可行性研究报告(参考格式)可行性研究报告(参考格式)可行性研究报告(参考格式)一、引言一、引言 系统名称、目标、功能、开发组织单位,服务对象等。系统名称、目标、功能、开发组织单位,服务对象等。二、系统开发的背景,必要性和意义二、系统开发的背景,必要性和意义 1 1、现行系统的调查研究、现行系统的调查研究 组组织织机机构构、业业务务流流程程、工工作作负负荷荷、费费用用、人人员员、设设备备、计计算算机机应应用情况、存在问题等。用情况、存在问题等。2 2、需求调查和分析、需求调查和分析 用户提出的需求及考虑经济改革

18、和发展需要进行预测结果。用户提出的需求及考虑经济改革和发展需要进行预测结果。三、新系统的几种方案介绍三、新系统的几种方案介绍 1 1、拟建系统目标、拟建系统目标 2 2、系统规模及初步方案、系统规模及初步方案(粗略的逻辑模型粗略的逻辑模型)3 3、系统的实施方案、系统的实施方案(计划安排计划安排)4 4、投资方案、投资方案 5 5、人员培训及补充方案、人员培训及补充方案 6 6、其它可供选择的方案、其它可供选择的方案 10.2.3 10.2.3 可行性研究报告可行性研究报告10.2.3 10.2.3 可行性研究报告可行性研究报告10.2.2 10.2.2 可行性研究报告可行性研究报告(续续)可

19、行性研究报告(参考格式)可行性研究报告(参考格式)可行性研究报告(参考格式)可行性研究报告(参考格式)可行性研究报告(参考格式)四、可行性研究四、可行性研究1 1、技术上的可行性、技术上的可行性(按系统目标衡量按系统目标衡量)(1)(1)对现有技术的估价对现有技术的估价 (2)(2)使用现有技术进行系统开发的可使用现有技术进行系统开发的可 行性行性 (3)(3)对技术发展可能产生影响的预测对技术发展可能产生影响的预测 (4)(4)关关键键技技术术人人员员的的数数量量和和水水平平估估计计 2 2、经济上的可行性、经济上的可行性(估算成本估算成本/效益比效益比)(1)(1)现有的经济条件现有的经济

20、条件 (2)(2)开发、运行费用开发、运行费用 (3)(3)对系统效益的估计对系统效益的估计 (4)(4)投资回收期投资回收期 (5)(5)成本成本/效益比效益比3 3、系统运行的可行性、系统运行的可行性 (1)(1)对组织机构的影响对组织机构的影响 (2)(2)人员适应的可行性人员适应的可行性 (3)(3)环境条件的可行性环境条件的可行性五、几种方案的比较分析五、几种方案的比较分析六、结论六、结论 (可可按按某某方方案案立立即即执执行行,等等某某些些条件成熟后再执行或不可行等等条件成熟后再执行或不可行等等)可可行行性性分分析析报报告告经经审审批批后后,可可进行需求分析工作。进行需求分析工作。

21、10.3 成本估算技术10.3 10.3 成本估算技术成本估算技术成本估算是可行性分析的重要依据,也是软件管理的重要内容,直成本估算是可行性分析的重要依据,也是软件管理的重要内容,直接影响到软件开发的风险。接影响到软件开发的风险。软软件件开开发发成成本本主主要要是是指指软软件件开开发发过过程程中中所所花花费费的的工工作作量量及及相相应应的的代代价价,即即主主要要是是人人的的劳劳动动的的消消耗耗。因因此此,软软件件产产品品开开发发成成本本的的计计算算方方法法不不同于其它物理产品的成本的计算。同于其它物理产品的成本的计算。软件产品不存在重复制造过程,它的开发成本是以一次性开发过程软件产品不存在重复

22、制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。因此软件成本估算,应以软件计划、需求分析、所花费的代价来计算的。因此软件成本估算,应以软件计划、需求分析、设计、编码到测试的软件开发全过程所花费的代价为依据。设计、编码到测试的软件开发全过程所花费的代价为依据。另外,必须注意,对于一个大型项目,由于其项目的复杂度,成本另外,必须注意,对于一个大型项目,由于其项目的复杂度,成本估算并不是一件简单的事,必须建立相应的估算模型,按照一定的方法、估算并不是一件简单的事,必须建立相应的估算模型,按照一定的方法、技术来进行估算。技术来进行估算。10.3.1 10.3.1 影响成本估算的因素影响成

23、本估算的因素 为了正确进行成本估算,首先要了解影响成本估算的主要因素:为了正确进行成本估算,首先要了解影响成本估算的主要因素:1 1 1 1、软软软软件件件件人人人人员员员员的的的的业业业业务务务务水水水水平平平平软软件件人人员员的的素素质质、经经验验、掌掌握握知知识识的的不不同同,在在工作中表现出很大的差异。工作中表现出很大的差异。2 2 2 2、软件产品的规模及复杂度、软件产品的规模及复杂度、软件产品的规模及复杂度、软件产品的规模及复杂度规规规规 模模模模:按按 YOURDONYOURDON分分 类类 法法 将将 软软 件件 产产 品品 的的 规规 模模 分分 为为 超超 小小 型型,小小

24、 型型,中中 型型,大型,超大型,极大型。大型,超大型,极大型。复杂性:复杂性:复杂性:复杂性:应用程序,应用程序,实用程序,系统程序分别由低到高排列实用程序,系统程序分别由低到高排列。3 3 3 3、开发所需时间、开发所需时间、开发所需时间、开发所需时间显显然然,开开发发时时间间越越长长成成本本越越高高。对对确确定定规规模模、复复杂杂度度的的软软件件存存在在一一个个“最最佳佳开开发发时时间间”,即即是是完完成成项项目目的的最最短短时时间间,选选取取最最佳佳开开发发时时间间来来计计划划开开发发过程,可以取得最佳经济效益。过程,可以取得最佳经济效益。4 4 4 4、软件开发技术水平、软件开发技术

25、水平、软件开发技术水平、软件开发技术水平指开发方法、工具、语言等,技术水平越高,效率越高指开发方法、工具、语言等,技术水平越高,效率越高。5 5 5 5、软件可靠性要求、软件可靠性要求、软件可靠性要求、软件可靠性要求一般可靠性要求愈高,成本愈高。一般可靠性要求愈高,成本愈高。10.3.1 10.3.1 影响成本估算的因素影响成本估算的因素 类类 别别参加人数参加人数研制期限研制期限产品规模(源代码行)产品规模(源代码行)微微 型型11 4 周周0.5K小小 型型11 6 月月1K 2K中中 型型2-51 2 年年5 50 K大大 型型5-202 3 年年50 500 K甚大型甚大型100-10

26、004 5 年年1M极大型极大型2000-50005 10 年年1M 10 M微型微型微型微型 可不作严格的系统分析和设计,在开发过程中应用软件工程的方法。可不作严格的系统分析和设计,在开发过程中应用软件工程的方法。小型小型小型小型如数值计算或数据处理问题,程序往往是独立的,与其它程序无接口,如数值计算或数据处理问题,程序往往是独立的,与其它程序无接口,应按标准化技术开发。应按标准化技术开发。中型中型中型中型如应用程序及系统程序,存在软件人员之间,软件人员与用户之间的密如应用程序及系统程序,存在软件人员之间,软件人员与用户之间的密切联系、协调配合。应严格按照软件工程方法开发。切联系、协调配合。

27、应严格按照软件工程方法开发。大型大型大型大型编译程序、小型分时系统、应用软件包、实时控制系统等。必须采统一编译程序、小型分时系统、应用软件包、实时控制系统等。必须采统一标准,严格复审,但由于软件规模庞大,开发过程可能出现不可预知的问题。标准,严格复审,但由于软件规模庞大,开发过程可能出现不可预知的问题。甚大型甚大型甚大型甚大型如远程通信系统、多任务系统、大型操作系统、大型数据库管理系统、如远程通信系统、多任务系统、大型操作系统、大型数据库管理系统、军事指挥系统等。子项目间有复杂的接口,若无软件工程方法支持,开发工作不军事指挥系统等。子项目间有复杂的接口,若无软件工程方法支持,开发工作不可想象。

28、可想象。极大型极大型极大型极大型如大型军事指挥系统、弹道防御系统等,这类系统极少见,更加复杂。如大型军事指挥系统、弹道防御系统等,这类系统极少见,更加复杂。规模规模表10.110.3.2 10.3.2 成本估算模型成本估算模型二、二、二、二、成本估算模型成本估算模型软软件件成成本本估估算算模模型型可可分分为为两两大大类类:理理论论模模型型和和统统计计模模型型,具具体体介介绍绍以以下模型:下模型:1、Halstead 理论模型理论模型2、统计估算模型、统计估算模型3、构造性成本模型、构造性成本模型 10.3.2 10.3.2 成本估算模型成本估算模型一、软件成本估算量一、软件成本估算量一、软件成

29、本估算量一、软件成本估算量软件成本软件成本估算通常是对以下量进行估算:估算通常是对以下量进行估算:源代码行(源代码行(LOCLOC)是指机器指令行是指机器指令行/非机器语言的执行步非机器语言的执行步开发工作量开发工作量 常用的单位是:人常用的单位是:人-月(月(PM)人人-年(年(PY)人人-日(日(PD)软件生产率软件生产率 单位劳动量所能完成的软件数量:单位劳动量所能完成的软件数量:LOC/PM¥/LOC¥/PM软件开发时间软件开发时间10.3.3 10.3.3 Halstead Halstead 理论模型理论模型理论模型来源于软件度量学的研究,根据四个原始量进行估算:理论模型来源于软件度

30、量学的研究,根据四个原始量进行估算:n1n1:不同运算符个数不同运算符个数 n2n2:不同运算对象个数不同运算对象个数 N1N1:运算符总数运算符总数 N2N2:运算对象总数运算对象总数估算模型:估算模型:程序长度程序长度 n n1 1loglog2 2 n n1 1n n2 2 loglog2 2 n n2 2程序量程序量 V Vloglog2 2(n(n1 1n n2 2)程序级别的度量程序级别的度量()其中其中为无暇程序的程序量,对特定程序为无暇程序的程序量,对特定程序为常数。程序级别愈为常数。程序级别愈低,程序量愈大。低,程序量愈大。由于由于不易计算,可按照以下公式计算:不易计算,可按

31、照以下公式计算:所花费精力所花费精力程序开发时间程序开发时间10.3.3 10.3.3 Halstead Halstead 理论模型理论模型理论模型 n n1 1 该该模模型型经经过过实实际际检检验验,估估算算结结果果是是准准确确的的,但但由由于于四四个个原原始始量量在在可可行行性性分分析析阶阶段段根根本本无无法法获获得得,因因此此Halstead 理理论论模模型型往往往往并并不不用用于于实实际际成成本本估估算算,而是用于验证其它估算模型的准确性。而是用于验证其它估算模型的准确性。10.3.3 Halstead 理论模型a ai i 估计的最小行数估计的最小行数 b bi i 估计的最大行数估

32、计的最大行数 m mi i 最可能的行数最可能的行数10.3.4 10.3.4 专家估算模型专家估算模型 即即源代码行源代码行源代码行源代码行估算模型估算模型估算模型估算模型(Deiphi技术技术)由由RandRand公公式式提提出出的的Deiphi技技术术,又又称称为为专专家家估估算算模模型型,是是由由n n位位专专家家进进行行成成本本估估算算。每每位位专专家家根根据据系系统统规规格格说说明明书书,反反复复讨讨论论给给出出a ai i、b bi i及及 m mi i的值,并按照下式反复估算的值,并按照下式反复估算源代码源代码的的期望值期望值L Li i,期望中值期望中值L L。a ai i+

33、4+4m mi i+b+bi i 6 61 1n nL Li i=L=L=将将估估算算的的源源代代码码行行数数,乘乘以以根根据据经经验验推推算算的的每每行行源源代代码码所所需需成成本本,即即为该软件的成本。为该软件的成本。10.3.4 专家估算模型10.3.4 10.3.4 专家估算模型专家估算模型10.3.5 10.3.5 IBMIBM估算模型估算模型10.3.510.3.5 IBM IBM IBM IBM 估算模型估算模型估算模型估算模型(静态、单变量模型)静态、单变量模型)19771977年年由由Waiston Waiston 和和 Felix Felix 总总结结了了IBM联联合合系系

34、统统分分部部(FSDFSD)负负责责的个项目的数据,利用最小二乘法拟合,得到如下估算公式:的个项目的数据,利用最小二乘法拟合,得到如下估算公式:工工 作作 量:量:E=5.2*L E=5.2*L (PM)项目持续时间:项目持续时间:D=4.1*L D=4.1*L (月)月)人员需要量:人员需要量:S=0.54*E S=0.54*E (人)人)文文 档档 数:数:DOC=49*L DOC=49*L (页)页)其中:其中:L L 源代码行,以千行计。源代码行,以千行计。IBM估估算算模模型型是是一一种种静静态态单单变变量量模模型型,它它利利用用已已估估算算的的结结果果,如如源源代码行,来估算各种资

35、源的需求量代码行,来估算各种资源的需求量但但IBM 估估算算模模型型不不是是一一种种通通用用模模型型,因因此此应应用用中中应应根根据据具具体体实实际际情情况调整模型中的参数况调整模型中的参数10.3.5 IBM 估算模型10.3.6 10.3.6 Putnam Putnam 估算估算模型模型(动态、多变量模型)(动态、多变量模型)L LC Ck k t td d334 C Ck k K K t td dPutnam 估估算算模模型型是是一一种种动动态态多多变变量量模模型型,是是根根据据一一些些大大型型项项目目中中工工作作量的分布情况(图量的分布情况(图10.410.4)而推导出来的)而推导出来

36、的10.3.6 Putnam 估算模型其中:其中:L-源代码行,源代码行,K-所需人力(所需人力(PYPY),),td-开发时间开发时间 ,CK-技术水平常数,技术水平常数,CK值与开发环境有关。(差:值与开发环境有关。(差:2500-20002500-2000,正常:正常:10000-800010000-8000,好:,好:12500-1100012500-11000)10.3.2 10.3.2 成本估算模型成本估算模型图10.4 大型项目的工作量分布情况运行与维护运行与维护系统开发系统开发功能设计规格说明功能设计规格说明系统定义系统定义安装安装测试与确认测试与确认设计与编码设计与编码系统定

37、义系统定义功能设计功能设计规格说明规格说明时间时间10.3.7 10.3.7 COCOMOCOCOMO模型模型10.3.7 10.3.7 COCOMOCOCOMO模型模型 COCOMO模模型型(Constructive Cost Model)由由TRWTRW公公司司开开发发,是是由由Boehm提出的结构型成本估算模型,其特点是精确、易用。提出的结构型成本估算模型,其特点是精确、易用。是是一一种种层层次次模模型型,按按照照其其祥祥细细程程度度分分为为三三级级:即即基基本本的的COCOMO模模型型、中间的中间的COCOMO模型和详细的模型和详细的COCOMO模型。模型。该该模模型型主主要要对对工工

38、作作量量(单单位位:PM)和和进进度度TDEP(单单位位:月月)进进行估算。模型中考虑到估算量与开发环境有关,将开发项目分为三类:行估算。模型中考虑到估算量与开发环境有关,将开发项目分为三类:组织型组织型(OrganicOrganic)规规模模不不大大(5(5万万),较较简简单单,开开发发人人员员对对产产品品目目标标理理解解充充分分,经经验验丰丰富富,对软件开发环境熟悉。大多数应用软件及老的操作系统、编译系统属此类。对软件开发环境熟悉。大多数应用软件及老的操作系统、编译系统属此类。嵌入型嵌入型(EmbaddedEmbadded)软软件件、硬硬件件的的关关系系紧紧密密,操操作作有有限限制制条条件

39、件,对对接接口口、数数据据结结构构,算算法法要要求求较较高高。如如大大型型复复杂杂的的事事务务处处理理系系统统,大大型型、超超大大型型的的操操作作系系统统,军军事事指指挥系统,航天控制系统等。挥系统,航天控制系统等。半独立半独立型型(Semidetached)Semidetached)对对项项目目要要求求界界于于上上述述两两者者之之间间,规规模模复复杂杂度度中中等等。如如新新操操作作系系统统,大大型型数据库,生产控制等软件属此类。数据库,生产控制等软件属此类。10.3.7 COCOMO模型 基本的基本的COCOMO模型(静态单变量模型)模型(静态单变量模型)其中:其中:MM 工作量(工作量(P

40、M),),KLOC 估计的源代码行估计的源代码行 Cl 模型系数,模型系数,模型指数模型指数 Cl、取决于开发项目的模式为组织型、半独立型或嵌入型。取决于开发项目的模式为组织型、半独立型或嵌入型。10.3.7 10.3.7 COCOMOCOCOMO模型模型 基本的COCOMO模型下下表表是是根根据据6363个个项项目目的的数数据据统统计计结结果果,按按照照基基本本的的COCOMO模模型型估估算算的工作量和进度。的工作量和进度。总体类型总体类型工作量工作量进度进度组织型组织型MM=10.4(KLOG)1.05TDEV=10.5(MM)0.38半半独立型独立型MM=3.0(KLOG)1.12TDE

41、V=10.5(MM)0.35嵌入型嵌入型MM=3.6(KLOG)1.20TDEV=10.5(MM)0.32表10.2 其中:其中:fi fi 成本因素包括:成本因素包括:生产因素生产因素(可靠性,数据库规模,软件复杂度)(可靠性,数据库规模,软件复杂度)计算机因素计算机因素(时间约束,存储约束,环境变更率,计算机换向时间)(时间约束,存储约束,环境变更率,计算机换向时间)人人员员因因素素(系系统统分分析析员员能能力力、经经验验,程程序序员员能能力力,开开发发人人员员环环境境知知识,程序时间语言知识)识,程序时间语言知识)项目工程因素项目工程因素(设计技术,软件工具,进度限制约束)(设计技术,软

42、件工具,进度限制约束)详细的详细的COCOMO模型模型 在考虑成本因素在考虑成本因素fifi时,按照开发阶段分别给出更加详细的值。时,按照开发阶段分别给出更加详细的值。中间的中间的COCOMO模型模型进进一一步步考考虑虑了了1515种种影影响响软软件件工工作作量量的的因因素素,更更加加合合理理的的估估算算软软件件工工作量和进度。作量和进度。中间的COCOMO模型10.3.7 10.3.7 COCOMOCOCOMO模型模型10.3.8 10.3.8 成本估算方法成本估算方法1 1 1 1、自顶向下的估算方法、自顶向下的估算方法、自顶向下的估算方法、自顶向下的估算方法从从项项目目的的整整体体出出发

43、发,进进行行类类推推。即即据据以以前前完完成成的的同同类类项项目目的的总总成成本本,推推算当前项目的总成本,再将其分配到各开发任务中。算当前项目的总成本,再将其分配到各开发任务中。特点:简便、估算工作量小、误差大。特点:简便、估算工作量小、误差大。2 2 2 2、自底向上的估计法、自底向上的估计法、自底向上的估计法、自底向上的估计法把把待待开开发发的的软软件件细细分分,直直到到每每一一子子任任务务都都已已经经明明确确所所需需要要的的开开发发工工作作量量,然后把它们累加起来。然后把它们累加起来。特点:精确度高、但缺少子任务(模块)间的联系。特点:精确度高、但缺少子任务(模块)间的联系。3 3 3

44、 3、差别估计法、差别估计法、差别估计法、差别估计法综综合合上上述述两两种种方方法法而而得得,将将项项目目与与已已经经完完成成的的项项目目进进行行类类比比,相相同同部部分分按照已经完成的项目估算,不同部分另行估算。按照已经完成的项目估算,不同部分另行估算。特点:估算较精确、但区分类比较困难。特点:估算较精确、但区分类比较困难。10.3.8 10.3.8 成本估算方法成本估算方法对对于于大大型型软软件件项项目目来来说说,由由于于项项目目的的复复杂杂型型,成成本本估估算算并并不不单单纯纯是是一一个个计计算算过过程程,还还需需要要进进行行一一系系列列的的估估算算处处理理,处处理理手手段段主主要要是是

45、分分解解和和类类比比。一一般有以下方式:般有以下方式:注意:注意:注意:注意:在对实际项目进行估算时,通常使用综合方法。在对实际项目进行估算时,通常使用综合方法。10.3.9 10.3.9 成本成本/效益分析效益分析 成成本本效效益益分分析析的的第第一一步步是是估估算算成成本本和和运运行行费费用用(系系统统的的操操作作费费用用和和维维护护费费用用),系系统统的的经经济济效效益益则则等等于于因因使使用用新新系系统统而而增增加加的的收收入入,加加上上使使用用新新系统可以节省的运行费用。系统可以节省的运行费用。1 1 1 1、货币的时间价值、货币的时间价值、货币的时间价值、货币的时间价值通常以利率形

46、式表示。假设,年利率为通常以利率形式表示。假设,年利率为i i,P P元钱在元钱在n n年后的价值年后的价值F F为:为:2 2 2 2、投资回收期、投资回收期、投资回收期、投资回收期投资回收期即工程累计经济效益等于最初投资所需要的时间。投资回收期即工程累计经济效益等于最初投资所需要的时间。3 3 3 3、纯收入、纯收入、纯收入、纯收入在整个生存周期内新系统的累计经济效益与投资之差称为纯收入。在整个生存周期内新系统的累计经济效益与投资之差称为纯收入。4 4 4 4、投资回收率、投资回收率、投资回收率、投资回收率用用于于衡衡量量投投资资效效益益的的大大小小,并并且且可可以以用用它它和和年年利利率

47、率比比较较,。设设现现在在的的投投资额为:资额为:1 1/(1+1+j j)2 2/(1+1+j j)2 2 n n/(1+j1+j)n n其中:其中:i i是第是第i i年年底的效益(年年底的效益(i=1i=1,2 2,3 3,n n););n n是系统的使用寿命;是系统的使用寿命;j j是投资回收率。是投资回收率。10.3.9 10.3.9 成本成本/效益分析效益分析n nF F P P(1+i1+i)10.4 10.4 软件项目的组织与计划软件项目的组织与计划10.4 软件项目的组织与计划软软件件项项目目的的组组织织管管理理,需需要要多多方方面面的的综综合合知知识识,涉涉及及到到系系统统

48、工工程程、统统计计学学、心心理理学学、社社会会学学、经经济济学学、乃乃至至法法律律等等方方面面的的问问题题。尤尤其其涉涉及及到到社社会会因因素素、精精神神因因素素、人人的的因因素素,比比技技术术问问题题要要复杂得多。复杂得多。软件项目的管理,也不能完全照搬外国的经验,还必须结合软件项目的管理,也不能完全照搬外国的经验,还必须结合我国的实际情况,结合我们的工作条件、人员和社会环境等多种我国的实际情况,结合我们的工作条件、人员和社会环境等多种因素考虑。因素考虑。此外,实践是取得管理经验的重要途径。很显然,管理能够此外,实践是取得管理经验的重要途径。很显然,管理能够取得效率,能够赢得时间,是软件能够

49、开发成功的关键。取得效率,能够赢得时间,是软件能够开发成功的关键。10.4.1 10.4.1 软件项目管理的特点软件项目管理的特点 软软件件产产品品与与其其他他任任何何产产业业的的产产品品不不同同,它它是是非非物物质质性性的的产产品品,是是知知识识密密集集型型的的逻逻辑辑思思维维产产品品。由由于于软软件件的的这这种种独独特特性性,使使软软件件项项目目管管理理过过程更加复杂和难以控制。程更加复杂和难以控制。软件项目管理的主要特点是:软件项目管理的主要特点是:1 1、软软件件项项目目管管理理涉涉及及的的范范围围广广,涉涉及及到到软软件件开开发发进进度度计计划划、人人员员配配置与组织、项目跟踪与控制

50、等。置与组织、项目跟踪与控制等。2 2、应应用用到到多多方方面面的的综综合合知知识识,特特别别是是要要涉涉及及到到社社会会的的因因素素、精精神神的的因素、认知的因素,这比技术问题复杂得多。因素、认知的因素,这比技术问题复杂得多。3 3、人员配备情况复杂多变,组织管理难度大。、人员配备情况复杂多变,组织管理难度大。4 4、管理技术的基础是实践,为取得管理技术成果必须反复实践。、管理技术的基础是实践,为取得管理技术成果必须反复实践。10.4.1 10.4.1 软件项目管理的特点软件项目管理的特点10.4.2 10.4.2 软件开发进度计划软件开发进度计划10.4.2 10.4.2 软件开发进度计划

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁