基于用例点来度量软件规模并管理进度 之二
用例点表达进度
识别用例的状态
依据生命周期要求,识别用例的状态及转移。
典型的如瀑布型,一般依次有例如以下状态:用例识别,用例确认。用例已设计。用例已编码,用例已測试。
採用測试驱动开发(TDD)的一个样例。依次状态:用例识别,已写測试用例。用例已编码,用例已集成。用例已測试。
最简化用例状态,依次状态:用例识别。用例已集成。
从以上样例能够看到,传统生命周期和敏捷方法都能够得到合适的状态转移图。
设定用例状态的完毕度
完毕度以百分比表示。表示与工作量成正比的完毕程度,0%表示刚開始。工作量投入为0。100%表示所有已经完毕。工作量已经所有投入。
对以上三种状态举比例如以下。
表5 用例状态完毕度样例
瀑布型 |
採用測试驱动开发(TDD)的一个样例 |
最简化用例状态 |
|||
状态 |
完毕度 |
状态 |
完毕度 |
状态 |
完毕度 |
用例识别 |
20% |
识别用例 |
30% |
用例识别 |
30% |
用例确认 |
30% |
已写測试用例 |
60% |
用例已集成 |
100% |
用例已设计 |
45% |
已编码 |
80% |
|
|
用例已编码 |
80% |
已集成 |
90% |
|
|
用例已測试 |
100% |
已測试 |
100% |
|
计算折算未完毕用例点数UFUCP
为对照进度,将过程中的用例完毕情况以折算已完毕用例点(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 |
利用折算未完毕用例点数UFUCP绘制燃尽图
依据3.3,定期计算UFUCP,能够得到用例点燃尽图,进而直观的管理进度。
如图1所看到的。
图1 用例点燃尽图演示样例
以上能够看出对于处于过程中、未完毕的用例,能够反映其进展,避免了要等到用例实现后才干推断进度。提高了进度管理的准确性和及时性。