软件工程软件过程改进.ppt

上传人:牧羊曲112 文档编号:6434256 上传时间:2023-10-30 格式:PPT 页数:23 大小:789.82KB
返回 下载 相关 举报
软件工程软件过程改进.ppt_第1页
第1页 / 共23页
软件工程软件过程改进.ppt_第2页
第2页 / 共23页
软件工程软件过程改进.ppt_第3页
第3页 / 共23页
软件工程软件过程改进.ppt_第4页
第4页 / 共23页
软件工程软件过程改进.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《软件工程软件过程改进.ppt》由会员分享,可在线阅读,更多相关《软件工程软件过程改进.ppt(23页珍藏版)》请在三一办公上搜索。

1、第11章 软件过程改进,掌握:软件过程及其改进的概念、CMM、RUP、PSP、TSP。,11.1 软件过程改进概论,11.1.1 软件过程及其改进的概念,软件过程是指软件生存周期所涉及的一系列相关过程,例如制订开发计划、实施软件测试等软件过程改进的目的就是尽量使软件开发的过程标准化、可重复化,实现软件生产过程的自动有序前进,从而提高软件开发组织的生产能力。,11.1.2 软件过程管理的发展,1结构化生产时代2以过程改进为中心的时代3软件工业化生产时代,11.2 软件过程能力成熟度模型CMM,11.2.1 CMM的产生,软件过程能力成熟度模型CMM的产生可以追溯到20世纪80年代,当时,美国软件

2、工程研究所SEI根据美国国防部的要求,研究如何通过一系列技术管理方法来提高软件工程水平,以保证美国防部能够通过对成本、进度和质量的预估和改进,获得精准的软件系统。研究的结果于1991年发表,并被命名为CMM模型。1993年,SEI又公布了软件能力成熟度模型的1.1版,它被广泛用于衡量软件企业的开发管理水平。软件过程能力成熟度模型既可作为软件发包方评估承包方执行能力的参考标准,也可以被软件企业用作软件过程改进工作的参考模型。,11.2.2 CMM的内容简介,1初始级 在初始级,企业一般不具备稳定的软件开发与维护环境,常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。处于这一等级的企业,

3、成功与否在很大程度上决定于是否有杰出的项目经理与经验丰富的开发团队。因此,能否雇请到有能力的员工成了关键问题,项目成功与否非常不确定。虽然产品一般来说是可用的,但是往往有超出经费与不能按期完成的问题。,2可重复级 在这一级,企业建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施,基于过往的项目的经验来计划与管理新的项目。企业实行了基本的控制管理,并根据以往项目及新项目的具体情况来制定计划。项目经理负责监视成本、进度和产品功能,及时发现并解决问题,以便实现所做的各项承诺。,3定义级 在这一级,有关软件工程与管理工程的一个特定的、面向整个企业的软件开发与维护过程的文件将被制订出来,同时,这些

4、过程集成为一个协调的整体,这就称为企业的标准化软件过程。这些标准的过程有利于帮助管理人员与一般成员工作得更有效率。在实践中,也可根据需要对这些标准进行进一步的优化。在这个把过程标准化的努力当中,企业开发出有效的软件工程的各种实践活动。,4管理级 在这一级,企业为产品与过程建立起定量的质量目标,同时在过程中加入规定得很清楚的连续的度量。企业的度量方案,要对所有项目的重要的过程活动进行质量控制,一个企业范围的数据库被用于收集与分析来自各项目的过程的数据。这些度量建立起了一个评价项目过程与产品的定量的依据。项目小组可以通过缩小他们的效能表现的偏差,使之处于可接受的定量界限之内,从而达到对过程与产品进

5、行控制的目的。因为过程是稳定的和经过度量的,所以在有意外情况发生时,企业能够很快辨明意外情况发生的原因,并加以处理。,5优化级 在这个等级,企业将重点放在对过程进行不断地优化上。企业采取主动去找出过程的弱点与长处,以达到预防缺陷的目标。同时,分析有关过程的有效资料,对新技术的成本与收益做出分析,以及提出修改过程的建议。整个企业都致力于探索最佳软件工程实践的创新。,表11-1 CMM的5个级别,11.2.3 CMM应用,目前,CMM不管是在学术界还是在软件企业都受到了越来越多的关注。学术界方面,中国生产力促进协会、北航SEI、中科院研究SEI等科研机构先后举办过多次报告会和研讨会,开展了软件过程

6、方面的研究与开发工作,并发表了多篇研究成果和学术论文。软件企业界方面,包括东软、用友、惠普中国软件研发中心、华为技术有限公司上海研究所在内的多家企业都应用CMM。目前国内通过CMM5级评估的企业已有数家。,11.3 统一软件过程RUP,11.3.1 RUP概要,RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论,最初由Rational公司提出。根据Rational的说法,RUP好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针、模版以及事例支持。RUP和类似的产品(如面向对象的软件过程(OOSP)及

7、OPEN Process)都是理解性的软件工程工具,即把开发中面向过程的方面(如定义的阶段、技术和实践)和其他开发的组件(如文档、模型、手册以及代码等)整合在一个统一的框架内。,11.3.2 RUP的软件生存期,1初始阶段 初始阶段有时也称先启阶段。初始阶段的目标是为系统建立商业案例,并确定项目的边界。2细化阶段 细化阶段的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中风险最高的元素。3构造阶段 在构建阶段,所有剩余的构件和应用程序功能都被开发并集成为产品,所有的功能都被详细测试。4交付阶段 交付阶段的重点是确保软件对最终用户是可用的。,11.3.3 RUP的核心工作流,

8、1商业建模(Business Modeling)2需求(Requirements)3分析和设计(Analysis&Design)4实现(Implementation)5测试(Test)6部署(Deployment)7配置和变更管理(Configuration and Change Management)8项目管理(Project Management)9环境(Environment),11.3.4 RUP的应用,(1)确定本项目需要哪些工作流。(2)确定每个工作流需要哪些制品。(3)确定4个阶段之间如何演进。(4)确定每个阶段内的迭代计划,规划RUP的4个阶段中每次迭代开发的内容。(5)规划工

9、作流内部结构。,11.4 个体软件过程PSP及团体软件过程TSP,11.4.1 个体软件过程PSP,个体软件过程PSP是由美国卡内基梅隆大学软件工程研究所(CMU/SEl)的Watts S.Humphrey领导开发并于1995年推出的在软件设计阶段,PSP的着眼于软件缺陷的预防,其具体办法是强化设计约束规则,而不是设计方法的选择。PSP的作用如下:(1)使用自底向上的方法来改进过程,向每个软件工程师表明过程改进的原则,使他们能够明白如何有效地生产出高质量的软件。(2)为基于个体和小型群组软件过程的优化提供了具体而有效的途径,其研究与实践填补了CMM的空白。(3)帮助软件工程师在个人的基础上运用

10、过程的原则,借助于PSP提供的一些度量和分析工具,了解自己的技能水平,控制和管理自己的工作方式,使自己对日常工作的评估、计划和预测更加准确、有效,进而改进个人的工作表现,提高个人的工作质量和产量,积极而有效地参与高级管理人员和过程人员推动的软件工程过程改进。,11.4.2 团体软件过程TSP,团队软件过程TSP是为开发软件产品的开发团队提供指导。TSP的早期实践侧重于帮助开发团队改善其质量和生产率,以使其更好地满足成本及进度的目标。TSP被设计为满足220人规模的开发团队,大型的多团队过程的TSP被设计为大约最多为150人左右的规模。,11.4.3 CMM、PSP、TSP之间的关系,CMM 是过程改善的第一步,它提供了评价组织能力、识别优先改善需求和追踪改善进展的管理方式。PSP 能够指导软件工程师如何保证自己的工作质量,估计和规划自身的工作,度量和追踪个人的表现,管理自身的软件过程和产品质量。TSP注重团队的高效工作和产品交付能力,结合PSP的工程技能,告诉软件工程师如何将个体过程结合进小组软件过程,告诉管理层如何支持和授权项目小组,坚持高质量的工作,并且依据数据进行项目管理,展示了如何去生产高质量的产品。,第11章 结束,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号