《PSPTSP在软件项目管理方面的作用分析.doc》由会员分享,可在线阅读,更多相关《PSPTSP在软件项目管理方面的作用分析.doc(2页珍藏版)》请在三一办公上搜索。
1、摘要: 个体软件过程( Personal Software Process: PSP)和团队软件过程( Team Software Process: TSP) 在国外许多著名软件企业得到了广泛应用, 并由此带来了令人瞩目的成效, 但他们在我国的实际应用还刚刚起步。作者根据在实际应用中的结果, 对 PSP 和 TSP 的优缺点 以及与 CMMI 的关系进行了系统地分析, 对他们在我国软件项目管理方面的应用前景进行了展望。关键词: PSP; TSP; CMMI; 软件过程; 项目管理中图分类号: TP 311文献标识码: A文章编号: 1009- 3044(2007)06- 11774- 02A
2、S umma ry on P S P a nd TS P in S oftwa re P roje ct Ma na ge me ntDUAN Yan- ge1, ZHAN G Jiu- quan2(1.Luoyang Institute of Technology Luoyang,471003,China;2.Cyber Keji,Beijing,100080,China)Abs tra ct:Personal software process (PSP) and Team Software Process (TSP) have been widely used in many top so
3、ftware development en- terprises, which have created great benefit for these enterprises. However, few IT companies in China have adapted these two processes. Based on our implementation results, we summarized the advantage and drawback when used these two processes in Chinese IT project management,
4、 and suggested their possible adaptation prosperity in Chinese IT project management.Ke y words :PSP; TSP; CMMI; software process;project management1 引言Watts Humphrey 作为 8000 个工程师的编码主管, 在 IBM 长降低? 图 3 是 SEI 对 886 个开发人员的统计结果, 质量目标指定为每千行缺陷数低于 5,在此前提条件下,程序员未受 PSP 训练时, 编写 357 个程序的平均速度是 28.66 行/h, 接受 PSP
5、 标准训练后, 编写 1272 个程序的平均速度是 30.33 行/h。这主要是由于采 用 PSP 后 , 工 程 师 做 开 发 时 逻 辑 思 路 更 清 晰 , 计 划 、设 计 等 更 完 善, 生产率反而得到了提高。达 27 年的工作期间,亲身经历过无数次软件项目开发的成功与失败, 总结出一系列宝贵经验, 并于 1986 年开始研究并于 1991年提出能力成熟度模型 CMM, 为软件过程改进制定了基本框架。 之 后 , 他 意 识 到 CMM 只 告 诉 企 业 应 该 做 什 么 , 而 没 有 告 诉 企业 , 特 别 是 每 一 个 开 发 人 员 应 该 怎 样 做 。 针
6、对 这 一 欠 缺 ,Humphrey 在 1994 年推出了 PSP 和 TSP。虽然 PSP/TSP 在国外许 多大中型软件企业得到了广泛应用, 并取得了令人瞩目的成效,但在我国刚刚起步。本文用具体实例说明了 PSP/TSP 能给企业带 来的效益, 对项目小组的作用及其与 CMMI 的关系。2 P S P 在软件开发和项目管理中的作用2.1 PSP 能使您成为一名更好的专业软件工程师在当今社会 , 要在规定的期限内开发出高质量的产品, 对 于 一个开发人员只有高速的编码技术远远不够。通过 PSP 培训可让他们掌握软件过程管理和项目管理方面最先进的技能和最佳的实践1。具体为: 精确地估算软件
7、规模大小; 合理安排自己的项目 开发时间; 以时间和规模为根据合理地规划项目, 准确地预计工 期; 减少产品缺陷; 使用挣值法跟踪进度; 收集数据来持续地提高 自己的生产率、软件质量、以及工期预测能力等。PSP 不仅可以帮 助开发人员提高编码水准, 还可指导他们更好地进行需求或过程 定义、评审、测试、文档编写等。Humphrey 认为如果开发人员遵从 PSP 的所有规范, 实际上已经在按 CMMI5 级的要求进行软件开发 了 2。我们对北京某公司 37 名开发人员培训的部分结果如图 1 和 2 所示。每人按 PSP 要求, 编写 10 个小程序, 进行规模和开发 时间估算等。从图中看出, 每个
8、人在做了 6 个程序后, 他们的估算 误差都已低于 10%。2.2 PSP 能提高工作效率与编码速度在引入一个新过程时, 开发人员需要处理一些与过程有关的 事情, 如记录自己的开发时间和缺陷数等。公司领导最关心的事情之一是这些会不会影响工程师的工作效率, 如编码速度会不会图 1 PSP 开发时间估算误差图 2 PSP 程序规模估算误差图 3 使用与不使用 PSP 时工程师编码速度对比3 TDP 在软件开发和项目管理中的作用3.1 TSP 使领导对交货日期和开发成本了如指掌TSP 不仅提供了一套完整的过程改进方案,而且还提供了相应的项目管理工具,再结合 PSP 中的规模估算等技术, 开发人员能非
9、常准确地估算和预测项目开发所需的总时数。因而计算产品交货日期和开发成本就变得易如反掌 ,增加了与客户谈判的砝码4。图 4 是 AIS 公司使用 CMM 和 TSP 后进度预测准确度变化情况。在引入 CMM 或 TSP 之前, 产品交付日期预测与实际平均相差 一倍多。引入 TSP 后, 对项目进度采用挣值法(EV)管理, 每天对开 发人员的开发进度自动更新, 项目组每周进行汇总。项目经理和收稿日期: 2007- 02- 27作者简介: 段艳鸽( 1981- ) , 女, 河南洛阳人, 研究方向: 软件工程, MIS。1774电脑知识与技术措施, 保证了按期交付。情况, 其它级别的过程域覆盖情况类
10、似。图 6 TSP 实践对 CMMI 二级过程域的覆盖如果在 CMMI 项目正式实施之前进行 TSP 项目, CMMI 的效图 4 预测进度与实际进度的偏离/ 天3.2 TSP 使产品交付时每万行代码的缺陷数小于 1果会更好,而且晋级时间大大缩短。根据 SEI 对所有实施 CMMITSP 特别重视质量管理,其基本策略是在每一个开发阶段采项目的统计, 从三级到四级的平均时间为 36 个月。NAVAIR 公司实施 CMMI 时, 与 PSP/TSP 相结合, 从一级到四级仅仅用了 34 个 月时间( 图 7) 。用自我评审, 在重要的阶段进行同行审查。力争在项目开发的早期彻底的将缺陷消灭, 这样可
11、以大大节约开发、测试、以及维护成 本。采用 TSP 后, 许多公司在交付产品时, 已经能够将缺陷率控制 在每万行低于一个缺陷以内4。图 5 列举了波音公司的数据, 在进行第 9 个发布时, 虽然软件规模增加了 2.36 倍,TSP, 总缺陷数反而降低了 75%。由于采用了图 7 PSP/ TSP 加速 CMMI 晋级4 结束语就国内十几家企业推广的情况来看, PSP/TSP 所取得的效果 基本上与国外情况一致, 有些方面甚至更好, 如 CMMI 晋级, 投入 产出比等。在投入方面, 公司不用聘请国外的专家和评估师, 国内的咨询师完全能满足要求; 做项目启动时, 只需聘请一次有资质 的教练做启动
12、, 以后公司可以自己做启动, 大大降低了成本。一般图 5大大降低产品缺陷率3.3 TSP 能大大缩短系统测试时间在通常情况下, 测试时间要占系统总开发时间的 45% 或 更 多, 主要依赖于客户对产品质量的要求。根据经验, 采用 TSP 后, 进行测试时缺陷数已非常低, 曾遇到验收测试时仅仅发现一个缺陷的情况。这样就大大节省了测试和随后的维护时间, 总的生产 率一般能提高 1 倍以上。微软为了保证产品质量, 曾投入了大量 的人力和时间来进行测试, 几乎一半时间用于测试和缺陷排除。 他们采用 TSP 后, 验收测试时所发现的缺陷数较以往低得多, 将 测试时间缩短到总开发时间的 11.5%, 使项
13、目节省成本 35%, 产 品交付时间大大提前5。3.4 PSP/TSP/CMMI 三位一体, 使 CMMI 晋级时间大大缩短CMM/CMMI 和 PSP/TSP 的 创 始 人 都 是 Humphrey, CMM/CM- MI 用于建立管理框架, 设立过程改进的先后顺序, 定义改进的内 容等; PSP/TSP 指导工程师如何才能完成高质量的工作, 如何才能 形成一个配合默契的团队, 如何去实现 CMMI 所定义的目标等。 他们相辅相成, 互相补充, 构成一个有机的整体。根据 SEI 在今年4 月发布的最新研究, PSP/TSP 对 CMMI 的 25 个过程域覆盖率达能在半年之内将投入全部收回
14、,而公司所得到的回报却是 长 期的。由于 CMMI 实施起来较为复杂, 投入较大, 对 咨 询 师 的 要 求高, 如 果 先 用 容 易 实 施 的 PSP/TSP 打 好 基 础 , 再 实 施 CMMI 将 取 得事半功倍的效果。参考文献:1PSP(sm):A Self- Improvement Process for Software Engineers. Reading,MA: Addison- Wesley,2005.2Humphrey W.S.A Discipline for Software Engineering.Read- ing,MA:Addison- Wesley,19
15、95.3Humphrey W.S.Winning with Software:An Executive strategy. Boston:Addison- Wesley.2002.4Humphrey W.S.Managing the Software Process.Reading,MA: Addison- Wesley,1989.5Davis N,Mullaney J.2003,Team Software Process (TSP) inPractice. SEI Technical Report CMU/SEI- 2003- TR- 014, 2003.(上接第 1771 页)随着教育教学
16、现代化进程, 校园网、教育网、Internet 网等教育 手段的现代化, 将有利地促进教育思想和教学内容的改革, 推动教学方法的更新, 实现学习的多元化、主体化和社会化。由于教育 领域的这场变革, 人类大脑接受和处理信息的能力将得到极大的提高, 人类的创造能力亦将随之空前提高, 真正意义上的知识经济时代才会来临。目前这场教育革命的实践者教师, 应该使 自己成为知识经济时代的揭幕人。参考文献:1刘名卓, 张琴珠. 信息技术与个性化教学模 式 探 讨J. 现 代教育技术. 2004,(2).2徐红彩, 冯秀琪.网络环境下研究性学习模式初探J.北京:中国电化教育.2002,(7).3刘名卓.基于在线学习倾向的网络教学环境要素设计J.北 京: 中国电化教育. 2003,(4).4高蓉蓉.基于网络协作学习方式的探讨E,2003.5纪平. 现代教育技术的系统模式、建模方法及关键技术的 新发展J.西安: 电化教育研究. 2001,( 5) .1775