PSP介绍:
psp是为了得到 编程可控; 改善你的能力; 对自己评估; 错误和解决
参考网址:www.sei.cmu.edu/tsp/psp
为了更好地学习PSP,我们需要测试方法和激励手段,如下: the Psp 课程的学习; RUP的资料; psp支持工具; psp论坛
一旦学好了PSP,就可以在团队中采用TSP进一步提高自己
The baseline personal process
定义自己的process,从而进行精确的自我改进
psp0 提供一个PSP程序的框架和收集各阶段的数据 ,各组成如下:
scripts:对流程指导,在开始结束检查是否有遗漏,包括 purpose, entry 标准,步骤,退出标准;
log:记录数据; plan记录和发布结果的方法;product是产品、数据和计划。
好处是:1. 提供小任务的通用框架;2. 一个测量的框架;3. 使用数据进一步改进
The PSP process elements:
plan:产生一个计划
design,code,test
postmortem:将产品与计划比较,产生报告
本书中将修正编译错误作为编译时间; 将编译和修正测试错误作为测试时间
PSP measure
使用 psp support tools
1. time recording: 记录每个阶段所花的时间, 在记录中要有interrupttime,否则无法精确,每次中断在comment中记录,若忘记记录估计一个值。 在时间记录中确定项目的开始和结束时间比较麻烦,编译指从程序输入完成到解决编译期错误为止;针对某个problem的设计,实现应放在text中和该问题相关的部分
2. defect recording: 记录compile和test中的每一个错误,使用stop watch 记录修正时间。 对于multiple-defect program,即修改一个错误引入了另一个错误,分开记录时间,即A的time=总时间-B的fix时间,A和B 有fix ref关系。 在description中记录细节帮助预防相关错误并对该错误定位,当修复错误时记下时间。
3. psp project plan summary: 填入中提时间,在以后的项目中估计各阶段时间
4. 编译阶段: 对不需要编译的环境则跳过,有的一定要收集
完成 34页 2.15的练习
Measure software size
1. 建立代码评估
定义计算策略 P41 作者策略和编码标准 P50
2. 计算大小
对add base delete modify ,重用的代码进行统计,个人觉得可使用SVN 基于版本进行统计
3. size 的作用
plan: 使用历史数据估计产品的额size和effort,若是开发型项目以add和modify为主,如果是维护性项目以delete 和modify为主
质量管理:使用defect density 估计 testing, 系统费用
分析过程: 跟踪在reused deletedmodified 在每个阶段的数量
4. 具体的统计策略
测量 class或procedure的长度
测试line of code
统计 deletions 和modification的内容
Planning
对于管理者不合理的进度要求,一个好办法是提供一个detailedplan,计划应包含什么考虑计划的使用者,psp plan 有两个用户,你和顾客,则你的计划有四个方面
1. job sizing
2. job structure
3. job status
4. assessment