作者:RickTroy
电子邮件:[email protected]
个人主页: http://www.cyworld.com.cn/RickTroy
第一章 PSP简介
主题:
改变所需要的
PSP和TSP原则和目标
什么是TSP?
管理支持所需要的
什么是PSP, 它能提供什么帮助?
课程结果
软件, 改变的世界:
软件控制着多数的商业、政府和军事系统。
l 工厂操作由软件控制
l 大多数高级产品的生产由软件控制
l 金融、管理和商业操作的运营都需要软件
软件的消费、规划和质量现在是一个内部商业概念。
软件产品的需求率和生产率越来越高。
大型软件项目经常失败:
随着规模的增大,项目就越陷入困境。
这是一个伸缩性问题:现在的软件实践不能拉伸。
项目为什么失败:
大型和小型软件项目的失败原因主要有四个:
项目的提交经常是不现实的。
l 项目越大,冲突越少。
l 如果我们没有什么说的,就没有人会听到什么。
大型项目不好掌控。
l 今天,很少的程序员有个人计划。
l 没有计划,你不了解工作状态。
l 你不知道你到了哪里,你就不了解工作状态。
l 如果管理人员不了解工作状态,他们就无法管理项目。
质量问题会随着项目的增大而变差。
l 在软件系统,如果哪部分有质量问题那么软件本身就有质量问题。
l 如果开发者不管理质量,那么他们的团队就无法管理质量。
l 不管理,质量绝对是糟糕的。
为了效率,团队需要领导和合作。
l 领导创建团队动力和集体讨论决策的能力。
l 指导帮助团队有团体增加内聚力。
l 有指导,有动力的团队会有很好的表现。
改变所需要的:
许多个人和商业现在依赖于软件。
我们现在需要更加复杂,安全的软件系统在预期内交付。
没有各种各样的开发经验,这是不可能实现的。
TSP提出了这样的需要。
PSP提供给开发者在使用TSP团队中所需要的知识和技能。
管理支持:
TSP的初始目标就是增加管理的信心使团队可以自导向。
一个自导向的团队是:
l 设置自己的目标
l 计划特有的角色
l 决定自己的开发策略
l 定义自己的过程
l 发展自己的计划
l 测量、管理和控制自己的工作
自导向团队会工作的很好。
管理人员会支持你,主要你:
l 满足他们的需要
l 提供你工作情况的正规报告
l 增加他们对你计划的信心
l 做有质量的工作
l 响应变化的需求
l 当需要帮助的时候向他们寻求帮助
自导向团队是一个大脑。
当管理人员相信你工作不错的时候会同意你自行管理自己的工作。
为了增加他们这方面的信心,你必须:
l 维护和计算计划
l 测量和跟踪你的工作
l 按时向管理人员交付工作成果
PSP告诉你如何解决这些问题。
PSP原则:
一个软件系统的质量决定于它最差组件的质量。
软件组件的质量取决于开发它的个人。
软件组件的质量取决于开发它所使用的过程。
质量的关键是个人开发者的技能、交付能力和个人过程的掌握。
一个软件专家必须清楚你的个人过程。
你应该测量、跟踪和分析你的工作。
你应该从你的性能变化量中学习。
你应该经历不同的个人实践。
PSP提供什么?
一个稳定成熟的PSP允许你:
l 计算和计划你的工作
l 满足你的提交需要
l 组织无原因的提交
你也会
l 明白你现在的性能
l 更好地准备提高你的能力
PSP提供:
l 给定的开发和使用工业强化个人过程的基础
l 展现如何提高你的个人过程
l 持续提高你工作的产量、质量和预言性的数据
PSP是什么?
PSP是个人过程用来从事软件开发和做任何已定义的活动。
l 已定义的步骤
l 表单
l 标准
它提供了测量和分析框架来明确和管理你的个人工作。
它也是一个已定义的过程,可以帮助你提高个人性能。
PSP过程流:
需求à构想(1)à设计(2)à编码(3)à编译(4)à测试(5)à项目管理(6)à完成的产品
步骤1-6需要”脚本”来指导。
步骤Design,Compile和PM生成”日志”。
构想和日志能够生成项目总结。
个人软件过程:
PSP被设计用来提供给个人使用。
基于向下伸展的工业软件实践。
PSP课程演示了使用已定义和可测量的过程的价值。
帮助你和你的组织解决高质量和时间要求的软件所带来的不断增长的风险。
学习PSP:
PSP可以简单想象成可向上扩展的六个步骤。
每步你需要写一个或多个模块尺寸的程序。
在你的工作聚合和分析数据。
使用结果提高你个人的性能。
PSP0:
当前过程
时间记录
缺陷记录
缺陷类型标准
PSP0.1:
编码标准
规格测量
过程改进计划(PIP)
PSP1:
规格预算
测试报告
PSP1.1:
任务构想
安排构想
PSP2:
代码回顾
设计回顾
PSP2.1:
设计模板
TSP:
团队开发
PSP0: 发布一个可测量的性能基线。
PSP1: 你制作规格,资源和安排的计划。
PSP2: 练习缺陷和产量管理。
课程结论:
你将需要练习工业强化软件过程的重要元素。
你将会理解让你更有效率的方法。
你会工作的更好。
你将会有一个长期的改进目标。
课程结果:
我们现在有基于3000使用PSP书写的程序的数据。
下图表示使用PSP的进步:
l 规格和效果预算
l 编译和测试时间
l 产量
PSP预算计算:
PSP0多数基于预算。
PSP1平衡超出预算和非预算的内容。
PSP2 更紧密的平衡在0周围。
编译和测试时间:
结果是降低了编译和测试的时间。
规格和LOC/小时:
规格变大的同时产量稳定。
记住的信息:
PSP是已定义的帮助你更好工作的过程。
当你完成课程的时候你将明白如何使用PSP来满足你的开发需要。
你将会获得在一个使用TSP的团队所需要的知识和技能。
使用PSP0,目标是完成和计算工作上的数据。