12软件项目度量管理

上传人:飞*** 文档编号:56950663 上传时间:2018-10-17 格式:PPT 页数:81 大小:6.84MB
返回 下载 相关 举报
12软件项目度量管理_第1页
第1页 / 共81页
12软件项目度量管理_第2页
第2页 / 共81页
12软件项目度量管理_第3页
第3页 / 共81页
12软件项目度量管理_第4页
第4页 / 共81页
12软件项目度量管理_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《12软件项目度量管理》由会员分享,可在线阅读,更多相关《12软件项目度量管理(81页珍藏版)》请在金锄头文库上搜索。

1、软件项目管理案例教程 第12章 软件项目度量管理,北方民族大学 计算机科学与工程学院 陶铮 2007年9月,1,来自国外软件专家的声音: 即使是最好的软件工程师也会犯许多错误,而且有些错误还很难发现。 在编写非常小的程序时,工作效率可以很高。但是在开发较大程序时,工作效率却会大幅度降低。 为什么?,2,大学生开始编程时,他们很快就能够开发小规模程序。但是这样的小规模程序有着天生的局限性其开发方法和技巧不足以解决大规模的多人项目问题。,Watts.S.Humphrey,“正是那些不可测量的事物,才使测量得以诞生”。 今天的数据是明天的历史 成熟的软件企业已经认识到,掌控软件过程必须依靠软件度量,

2、这是最廉价的保单; 无法度量则无从管理,这是许多软件度量方案的内在驱动。,3,什么是软件项目度量管理?(简称软件度量) 主要是针对项目要素进行跟踪度量,通过分析度量数字发现项目进展中存在的问题,从而有针对性地制定解决方案。,4,软件工程的初衷采用“工程方法”开发软件 每个活动都是得到了充分的理解和控制,以致于在对软件进行详细说明、设计、构建和维护时,很少会有意外发生。 理想的推断:软件工程应该是以一种可控制的、科学的方式来实现软件。,5,基于工业工程方法的项目控制原理,但是,这种纯粹的制造业的观点并非灵丹妙药! 软件开发和传统的制造业不一样。 软件度量观点的应用范围是十分有限的。 为什么? 软

3、件过程的本质是设计过程而非制造过程。,6,(美)福克斯Christopher Fox,软件工程设计导论过程、原理与模式,清华大学出版社 ,2007-10,国际知名软件工程专家Christopher Fox教授告诉我们: 如何理解软件问题并指定解决问题的设计方案软件工程的主要活动是围绕着“理解”和“设计”进行的。 什么是“理解”?理解的本质是“抽象”。 软件工程的抽象,就是“多对一”的映射过程。 这就是程序开发原理的精髓。,7,程序设计中的三种抽象: 过程抽象 数据抽象 迭代抽象 过程抽象能够引入新的操作; 例如:函数、方法,甚至虚拟机; 数据抽象能够引入新的数据对象类型; 例如:变量(类型)、

4、结构体、对象、表单、数据库 迭代抽象能够自动遍历集合中的元素 例如,在循环的控制流中排除了不相关的项。,8,它们内部再运用参数化抽象和规格化抽象,抽象过程进入工程,意味着伴随抽象过程所进行的结果(即规格)描述和对开发目标实现的设计描述 设计是运用抽象方法的推演和归纳 结论: 软件工程的中心工作是“理解”与“设计”,二者不可分割。 理解就是抽象,是一个过程,贯穿于软件过程的始终; 设计是抽象后的分解,是对理解的具体描述,包括规格与方案描述。 见下图。,9,10,软件产品开发,首先是软件设计,然后是实现、测试和部署。软件设计活动分为软件产品设计和软件工程设计两部分。 我们学习软件度量知识的目的 认

5、识“软件工程方法” 加深对软件项目管理的理解 既然如此,我们学习“软件项目度量”,就应该把眼光对准“软件的设计度量”。,11,12.1 软件度量概述,12.1.1 度量定义 12.1.2 度量的类型 12.1.3 度量的作用 12.1.4 度量的成本,12,度量的本质也是抽象,参考书: (英)Norman E.Fenton (美)Shari Laawrence Pfleeger,软件度量(原书第二版),机械工业出版社,2004年9月,13,12.1.1 度量定义,软件度量(software measurement) 对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程 软件

6、度量的目的,在于对软件过程加以理解、预测、评估、控制和改善。 项目度量,是实现量化管理的关键,没有度量,项目管理永远是主观的管理。 我们已经开始度量了 基于体系结构分解的工期估算、人力资源估算、费用估算,14,15,度量管理的过程,16,项目文档,数据量化,数据采集,整理分析,管理决策,软件度量的过程(含量化元素),软件度量,是通过各种不同的量度对软件生存期中的各个元素进行测量。目的是: 定量了解项目进度、工作量、产品规模、项目状态以及质量性能等 进而评估项目情况、跟踪进展、评价效率等。 见下页示例,17,以代码质量为焦点的度量故障率,18,只有经过度量才能知道:项目缺陷10%来自需求阶段,4

7、0%来自设计阶段,50%来自实现阶段。,代码缺陷度量以缺陷数/千代码行(KLOC)为单位,19,图12-3缺陷与成本关系度量结果,经过度量才能知道: 缺陷的发现有3%通过需求评审实现,5%通过设计评审实现,7%通过代码评审实现,25%通过功能测试实现,50%通过系统测试实现,还有10%的缺陷留给后来用户发现或者投诉,由上例可知 测量(measurement),是一个行为或者过程为所选实体的属性赋予数字或者符号的过程。 实体,可以是物理对象,或者可以是发生在现实世界中的事件或者过程。 通过测量过程,我们可以把现实世界中的实体映射到形式化的数学领域。,20,12.1.2 度量的类型,软件度量的三种

8、类型 过程度量、项目度量、技术度量。 这是本章节的重点。 对于项目管理者,感兴趣的是项目度量和过程度量。,21,过程度量 对软件开发的环境或过程的特征进行量化 通过过程度量来更细致地管理软件开发的战略规划,促进过程的改进。 项目度量 对软件项目特征进行量化,辅助项目估算、质量控制、生产率评估、项目控制,以达到项目的战术性目的。 技术度量 对软件技术和产品进行量化,以评估技术工作产品的质量,辅助项目决策如:软件结构的复杂性,耦合性等。,22,关于CMMI,即Capability Maturity Model Integration能力成熟度模型集成 这是国际通行的软件企业项目管理标准,是衡量一个

9、软件企业的项目能力的规范。 CMMI的五个台阶 一级,完成级 二级,管理级 三级,定义级 四级,量化管理级 五级,优化级,23,CMMI一级,完成级。 企业对项目的目标与要做的努力很清晰,项目的目标得以实现。但是由于任务的完成带有很大的偶然性,企业无法保证在实施同类项目的时候仍然能够完成任务。 CMMI二级,管理级。 企业在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对相关的项目实施人员有相应的培训,对整个流程有监测与控制体现了对项目的一系列的管理程序排除了企业在一级时完成任务的随机性,保证了企业的所有项目实施都会得到成功。,24,CMMI三级,定义级。 企业不仅能够对项目的实施

10、有一整套的管理措施,并保障项目的完成;而且,企业能够根据自身的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化不仅能够在同类的项目上得到成功的实施,在不同类的项目上一样能够得到成功的实施 CMMI四级,量化管理级。 在量化管理级水平上,企业的项目管理不仅形成了一种制度,而且要实现数字化的管理。对管理流程要做到量化与数字化 实现流程的稳定性,实现管理的精度,降低项目实施在质量上的波动。,25,CMMI五级,优化级。 企业的项目管理达到了最高的境界不仅能够通过信息手段与数字化手段来实现对项目的管理,而且能够充分利用信息资料,对企业在项目实施的过程中可能出现的次品予以预防,26,一条新闻,

11、27,我市CMMI认证企业数突破15家,全年任务提前完成 【来源】 无锡市信息化办公室 2007-10-24 14:29 【大 中 小】 【浏览次数】14 【打印】【关闭】【收藏】 为进一步提高软件企业的软件能力成熟度,提升企业核心竞争力,推动我市信息外包迅速发展,去年开始,我市实施CMM/CMMI认证补贴政策,全市共有5家企业通过了CMM/CMMI认证。今年以来,政府进一步加大了支持力度,将原来的事后补贴改为预付政府奖励资金,并通过政策指导、捆绑打包、过程跟踪、监督实施等一系列措施,使我市的CMM/CMMI认证工作得到了快速发展,今年年初,全市共有12家企业进入认证程序(其中1家开展CMMI

12、5级认证的企业,由于5级认证的要求高、周期较长,计划在2008年完成)。 今年6-8月,5家进行CMMI3级认证的企业已经先后完成了认证程序,并取得认证证书,其余6家将在9月进行最后评估,完成认证程序。这样,到9月底,全市通过CMM/CMMI认证的企业达到16家,提前一个季度超额完成全年计划。,12.1.3 度量的作用,能够为项目管理者提供有关项目的各种重要信息,为开展评估项目活动创造基础条件。 为项目估算、计划提供基础数据,也提供了控制项目的量化信息。 为质量管理提供指示,推动企业的过程改进。,28,12.1.4 度量的成本,度量管理更多依赖于项目负责人的判断和综合企业文化。 如果收集和推进

13、某类度量的成本是无法承受的,或者某些度量不能提供改善的信息,就不要进行这些度量。 所以,应从满足最低要求开始,然后逐步增加那些能以最低成本和最低工作量提供最高潜在利益的度量信息。,29,12.2 度量体系,软件度量工作的基础选择合适的度量指标。 软件度量指标(Software Mctric Indicator),是进行软件度量时所选择的属性集合. 属性是一个实体(例如项目产品、过程等)的特征或者性质。 度量指标是人制定的,反过来又作用于人 将度量体系融入现有过程。 将度量体系纳入企业文化。 恰当地交流度量方案。 取得高层经理的支持。 选择合适的人员实施度量,并开展事前培训。 采用明确的方式进行

14、度量,不进行个人度量。,30,何为企业文化 ?,12.3 度量技术,12.3.1 GQM技术 12.3.2 PSM技术,31,GQMGoal目标-Question问题-Metric度量 PSMPractical Software Measurement实用软件度量 两种重要的度量方法或者技术,12.3.1 GQM技术,GQM(Goal目标-Question问题-Metric度量)方法 此方法用于循序渐进第开展软件度量 要点在于选择适当的度量项目来满足需求。 选择度量指标的基本步骤 选择几个项目目标或者几个企业目标是可以量化、可以测量的目标。 对每个目标,提出若干必须回答的问题找到支持测量目标选

15、择的观点和理由。 确定上述观点实施所必需的度量指标。 最后,制定并确认软件度量体系。,32,GOM方法图示,33,图12-5 GQM技术,示例:某软件公司确定的目标是: 1)一年内降低50%维护成本; 2)将进度估计的准确性提高到10%以内; 3)将系统测试时间减少15%。(说明:这是一个软件运维项目) 对于第一个目标:一年内降低50%维护成本,意味着这些问题: 1)每个月的维护费用是多少? 2)支持每个应用软件的维护成本是多少? 3)用于调整(调整以适应变更的环境)、完善(增加、提高)和修正(纠正缺陷)的费用各是多少?这是最后的决策思考,所以,要尽量量化! 分解出每类维护活动的时间。 进而分

16、解出每类维护活动时间内各自的成本,并计算总维护成本。,34,回顾我们的思维与创造“三角形”,35,回顾我们的作业-2,介绍一套项目估算表格 表1:基本信息表 表2:产品规模估计,36,表3: 工作量估计,37,表4:成本估算,38,12.3.2 PSM技术,PSM(实用软件度量)是一个全面的度量过程,是基于风险和问题驱动的。 PSM力图反映每个项目的技术和管理特点 PSM包括三个基本的度量活动: 裁剪选择一组有效、平衡的度量方法 应用收集、加工、分析定义的度量数据 实施根据具体的企业和项目,建立一个有效的度量实现过程。,39,PSM(即实用软件度量)采用的是模型分析方法 建立度量信息模型定义特定项目度量及项目决策信息结构。如图12-6。 建立度量过程模型描述度量活动和任务。如图12-7。 采用PSM方法,有了项目实践中的信息作为决策的依据,项目经理就可以对项目的进度、成本、质量等做出综合的决策。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号