CMM、PSP、TSP综述.doc

上传人:天*** 文档编号:1341153 上传时间:2019-02-09 格式:DOC 页数:8 大小:347KB
下载 相关 举报
CMM、PSP、TSP综述.doc_第1页
第1页 / 共8页
CMM、PSP、TSP综述.doc_第2页
第2页 / 共8页
CMM、PSP、TSP综述.doc_第3页
第3页 / 共8页
CMM、PSP、TSP综述.doc_第4页
第4页 / 共8页
CMM、PSP、TSP综述.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、第 1 页第十三讲 CMM、TSP、PSP 综述一、前言1984 年,美国国防部出资在卡内基梅隆大学设立软件工程研究所( Software Engineering Institute, 简称 SEI) 。SEI 于 1986 年开始研究软件过程能力成熟度模型(Capability Maturity Model, CMM),1991 年正式推出了 CMM10 版,1993 年推出CMM11 版。此后, SEI 还完成了能力成熟度模型集成(Capability Maturity Model Integration,简称 CMMI) 。目前,CMM20 版已经推出。CMM 自问世以来备受关注,在一些

2、发达国家和地区得到了广泛应用,近年来,在我国也逐步得到了应用,成为衡量软件公司软件开发管理水平的重要参考因素,并成为软件过程改进的事实标准。CMM 源于工业界的最佳实践,经过 SEI 的总结、提炼和抽象形成了一个系统地指导软件机构改进软件过程能力的完整框架,它在一定程度上是抽象的模型,它为一般的软件机构提供了指导。换句话说,它给出了软件机构过程能力改进的一个目标,但在实际操作中,机构应该采取哪些合适的步骤,才能达到这一目标,CMM 并未清楚详细地提及,而且关键实践所描述的活动并不一定适合不同背景的所有机构。针对这种情况,SEI 于 1995 年后提出了 TSP(Team Software Pr

3、ocess)和 PSP(Personal Software Process),用以改善机构中小组过程能力和个体软件过程能力。二、CMM 简介由 SEI 提出的 CMM 描述了有效的软件过程单元的框架,它强调软件机构能一致地、可预测地生产出高质量的软件产品的能力,认为软件产品质量的好坏主要取决于开发和维护该产品所使用的软件过程的质量。一个有效的软件过程在于能将训练有素的人员、先进的技术、工具和方法有机地结合起来。CMM 将机构的软件过程能力分为 5 个成熟度级别,分别是初始级、可重复级、已定义级、已管理级和优化级。这 5 个级别是机构过程能力的 5 个不同层次的状态,从第一级到高一级的跃迁分别实

4、现 4 个过程:有纪律的过程、标准一致的过程、可预测的过程、持续改进的过程。如图 1 所示:第 2 页图 1 软件过程成熟度的 5 个级别CMM 具有恰当的抽象级别,它并没有过分地限制一个机构如何实现一个软件过程。CMM 描述了软件的一般过程,而没有涉及如何使用这些步骤。CMM 使用关键过程域来描述机构的成熟级别,为了达到一个成熟度级别,该级别(以及较低级别)的所有关键过程域必须得到满足,并且过程必须事先制度化。其级别跃迁如图 2 所示:图 2 能力成熟度级别中的关键过程域简单地说,一定的成熟度级别表明了该机构的软件过程能力,每个级别内包含了关键过程域,同时机构可以从过程域中划分出具有共同特性

5、的关键过程域,将这些共同特征制度化,并形成一定的机构文化。另外共同特征中包含了关键实践,用以描述机构所要实施的活动所需建设的基础设施,具体关系见图 3。第 3 页CMM 各级中所包含的关键过程域、目标及实践的数量如表一所示。表 1 CMM 各级结构级别 关键过程域 目标 实践2 级 6 22 1213 级 7 17 1084 级 2 9 405 级 3 6 47总计 18 54 316三、 TSP 过程元素在机构中,软件开发的主体是开发小组,因此提高机构的软件开发能力实际上就是提高小组的软件开发能力。TSP 提供了在开发过程、产品和小组协同工作之间平衡的重点,并且在规划和管理软件工程中利用了广

6、泛的工业经验基础。为了更好地实现 CMM 中的级别跃迁, TSP 实际上是实现 CMM 框架的活动指南,它提供了一系列为特定目标而设计的活动和步骤。换句话说,CMM 是战略目标,关注组织级,而 TSP 是战术策略,关注项目级。针对不同背景的机构,TSP 有一套完整的规范和程序去设计和实施,它提供一个在PSP 基础上的框架,并主要进行以下几项活动: 把产品开发划分为数个周期; 建立标准的质量和效益评估机制; 为小组和成员提供明确的评估标准; 进行角色和小组评估; 建立必要的开发纪律; 提供协同工作的指导。图 4 表示了 TSP 怎样通过多个开发周期来完成最终产品。第 4 页图 4 TSP 结构和

7、流程TSP 包含了 70 余种过程元素,用以指导 TSP 团队。过程脚本定义了由项目计划过程到项目后置处理的全过程,表格用于各类过程和流程数据的收集和分析。检查列表、说明书以及标准用于支持项目过程和流程。如季度项目同行检查列表用于检查管理项目状态报告的执行情况。3、1 TSP 脚本表 2:TSP 脚本脚本缩写 脚本名称DEV 总体开发和进展过程MAINT 总体维护和进展过程ANA 影响分析HLD 高级设计IMP 实现IMP6 单元测试和测试开发(实现的第 6 步)INS 检查过程LAU 团对建立LAU1 建立会议 1总体及联络LAU2 建立会议 2角色和目标LAU3 建立会议 3策略、过程、支

8、持LAU4 建立会议 4总体团队计划LAU5 建立会议 5质量计划LAU6 建立会议 6详细的下阶段计划LAU7 建立会议 7风险评估LAU8 建立会议 8管理会议准备LAU9 管理总结LAUPM 后置会议后置处理MTG 通用会议过程PM 项目后置处理REL 团队再建REL1 再建会议 1状态管理更新第 5 页REQ 需求STATUS 管理及客户状态会议TEST 版本测试TEST1 产品生成(TEST 的步骤 1)TEST2 集成(TEST 的步骤 2)TEST3 系统测试(TEST 的步骤 3)TESTD 测试缺陷处理WEEK 周小组会议3、2 TSP 表格所有 TSP 表格及说明,以下按字

9、母顺序排列。表 3: TSP 表格表格缩写 表格及说明名称DEFECT 缺陷报告表GOAL 小组目标INS 检查表INV 过程目录ITL 问题/风险跟踪日志LOGD 缺陷记录日志LOGT 时间记录日志MTG 会议报告表PIP 过程改进建议ROLE 小组角色ROLEMX 角色责任矩阵SCHED 进度计划模板STRAT 策略计划表SUMDI 引如缺陷总结SUMDR 排除缺陷总结SUMP 计划总结表SUMQ 质量总结表SUMS 程序大小总结SUMT 开发时间总结表SUMTASK 任务计划总结表TASK 任务计划模板TESTLOG 测试日志WEEK 周状态报告3、3 TSP 角色说明角色说明为每一角色

10、提供指导,并列出每一角色的主要职责和责任。表 4: TSP 角色说明角色 描述小组成员 小组成员的一般责任客户接口管理员 负责客户接口管理第 6 页设计管理员 负责设计管理实现管理员 负责实现管理计划管理员 负责计划管理过程管理员 负责过程管理质量管理员 负责质量管理支持管理员 负责支持管理测试管理员 负责测试管理会议 会议角色和责任检查 检查角色小组组长 小组组长责任3、4 TSP 检查列表、说明书及标准TSP 检查列表、说明书及标准,以下按字母顺序排列。表 5:TSP 检查列表、说明书及标准 条目缩写 检查列表、说明书及标准NOTEBOOK 项目笔记本的规格说明PLAN 计划标准标准的计划

11、因素PLANCL 计划执行的评审和检查列表PREPL 小组建立准备检查列表PREPR 小组再建检查列表QUAL 质量标准标准的质量计划因素REVCL 季度项目评审检查列表STATDS 管理状态报告说明书SUMMARY 项目总结报告说明书四、 PSP 演进机构最终能力的提高取决于小组过程能力和个体过程能力的共同提高。PSP 就是为改善个体过程能力而设计的。个体过程能力的改善是提高机构过程能力的基础。具体来所,PSP 的任务就是培养软件工程师按时高效地生产出高质量的软件产品并可对其质量进行预测的能力。PSP 是帮助工程师测量和改进工作方式的框架,它有两个目标:一个是软件工程师开发程序;另一个是告诉

12、软件工程师如何来改善工作方式。图 5 是 PSP 的过程流程。第 7 页图 5 中涉及过程脚本、各种日志以及项目计划总结表。这些都可以对个体的过程能力进行评估同时也是 TSP 实施的基础。 PSP 也有类似于 TSP 的过程框架如图 6 所示。另外,SEI 还定义了 PSP 级别,如图 7 所示。在图 2 中带*号的 CMM 关键过程域均与PSP 有关。第 8 页五、总结欲成为高性能的软件组织,必须具有高性能的软件团队以及高性能的软件工程师,CMM 关注组织所应该做的,它指明组织应达到的目标; PSP 为软件工程师个体持续改进个人的性能提供指导;TSP 为受训的 PSP 工程师提供作为团队成员

13、如何在高性能团队有效工作的具体指导。三者结合在一起,使软件组织如期生产高质量的软件产品。图 8 使用 PSP、TSP 构建组织能力参考文献:1、 Watts S. Humphrey, “ Winning with Software: An Executive Strategy”, Addison Wesley, 2002.2、 Watts S. Humphrey, “Managing the Software Process”, Addison Wesley, 1989.3、 Watts S. Humphrey, “A Discipline for Software Engineering”,

14、 Addison Wesley, 1995.4、 Noopur Davis, Jim MaHale, “Relating the Team Software Process to the Capability Maturity Model for Software” CMU/SEI 2002-TR-008.5、 “Building High Performance Teams Using Team Software Process and Personal Software Process”, http:/www.sei.cmu.edu/tsp/tsp.html.6、 何新贵等, “软件能力成熟度模型” ,清华大学出版社,2000。7、 韩丹、袁昱译, “小组软件开发过程” ,人民邮电出版社,2000。8、 吴超英、车向东译, “个体软件开发过程” ,人民邮电出版社,2001。

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

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。