根据生命周期要求,识别用例的状态及转移。
典型的如瀑布型,一般依次有如下状态:用例识别,用例确认,用例已设计,用例已编码,用例已测试。
采用测试驱动开发(TDD)的一个例子,依次状态:用例识别,已写测试用例,用例已编码,用例已集成,用例已测试。
最简化用例状态,依次状态:用例识别,用例已集成。
从以上例子可以看到,传统生命周期和敏捷方法都可以得到合适的状态转移图。
完成度以百分比表示,表示与工作量成正比的完成程度,0%表示刚开始,工作量投入为0,100%表示全部已经完成,工作量已经全部投入。
对以上三种状态举例如下。
表5 用例状态完成度例子
| 
 瀑布型  | 
 采用测试驱动开发(TDD)的一个例子  | 
 最简化用例状态  | 
|||
| 
 状态  | 
 完成度  | 
 状态  | 
 完成度  | 
 状态  | 
 完成度  | 
| 
 用例识别  | 
 20%  | 
 识别用例  | 
 30%  | 
 用例识别  | 
 30%  | 
| 
 用例确认  | 
 30%  | 
 已写测试用例  | 
 60%  | 
 用例已集成  | 
 100%  | 
| 
 用例已设计  | 
 45%  | 
 已编码  | 
 80%  | 
 
  | 
 
  | 
| 
 用例已编码  | 
 80%  | 
 已集成  | 
 90%  | 
 
  | 
 
  | 
| 
 用例已测试  | 
 100%  | 
 已测试  | 
 100%  | 
 
  | 
|
为对比进度,将过程中的用例完成情况以折算已完成用例点(FUCP - Finished Use Case Point)来表示,计算公式是 ∑各状态用例数量*用例权重*完成度。以此可计算挣值分析中的挣值。
折算未完成用例点数UFUCP = UCP – FUCP,以此可绘制Scrum中的燃尽图,UFUCP - Unfinished Use Case Point。
一个实际的例子,采用TDD,见表如下:
表6 FUCP例子
| 
 模块  | 
 用例 大小  | 
 各状态的用例数量  | 
 U C P  | 
 折算 已完 成用 例点  | 
 折算未 完成用 例点数  | 
||||
| 
 识别 用例  | 
 已写 测试 用例  | 
 已编 码  | 
 已集成  | 
 已测试  | 
|||||
| 
 录入  | 
 小  | 
 0  | 
 5  | 
 1  | 
 0  | 
 0  | 
 75  | 
 55.5  | 
 19.5  | 
| 
 中  | 
 0  | 
 1  | 
 1  | 
 1  | 
 0  | 
||||
| 
 大  | 
 0  | 
 0  | 
 0  | 
 1  | 
 0  | 
||||
| 
 查询  | 
 小  | 
 5  | 
 8  | 
 2  | 
 0  | 
 0  | 
 250  | 
 146.5  | 
 103.5  | 
| 
 中  | 
 3  | 
 6  | 
 1  | 
 0  | 
 0  | 
||||
| 
 大  | 
 0  | 
 2  | 
 3  | 
 0  | 
 0  | 
||||
| 
 总计  | 
 325  | 
 202  | 
 123  | 
||||||
根据3.3,定期计算UFUCP,可以得到用例点燃尽图,进而直观的管理进度。如图1所示。
图1 用例点燃尽图示例
以上可以看出对于处于过程中、未完成的用例,可以反映其进展,避免了要等到用例实现后才能判断进度,提高了进度管理的准确性和及时性。
原文地址:http://blog.csdn.net/gwblue/article/details/24593113