基于用例点来度量软件规模并管理进度 之三
复用后的规模估算
需求复用
在需求可复用的情况下,识别可复用的用例所占的完毕度。求和可得初始折算已完毕用例点数。规模数据为所实用例点数减去初始折算已完毕用例点数,以折算已完毕用例点数来跟踪进度时,注意起点不为0;假设是绘制燃尽图。起点也不是所实用例点数。
比如:某小版本号的任务是开发实现100个用例点。用例分析已经由还有一个异地团队完毕了,依据两个团队的历史数据和
协定。用例分析所占完毕度为30%。那么初始折算已完毕用例点数为30,这个小版本号的规模是70个用例点。
对于设计复用,也可採用同需求复用类例如法,不再赘述。
代码行复用
在初步需求分析后,识别部分功能能够由复制现有代码来实现。仍然统计所实用例点,并不扣除这部分功能的用例点数,由于作为代码级复用。不能排除改动这部分代码。在考虑TCF时,參考此复用的因素。
构件复用
将构件复用分成二类:
一是引用,指终于用户直接使用构件的界面;
二是调用,指调用构件开发项目本身的界面,终于用户不会用到构件本身的界面。
构件引用不计到项目规模中。
构件调用是须要进行用例分析的。并要计入项目规模中。
假设不能明白有构件,则进行用例分析。计入规模中。
用例规模的调整
针对升级维护项目,大量出现局部改动用例的情况,这时依据用例改动幅度来判别用例的大小。假设出现大范围的用例小幅改动,改动用例的权重为3,6,9。或其他合适的权重,所用调整方法參照了用户故事的相对照较调整方法,由团队全体共同协商决定[參考文献3]。
实践结果
将此方法应用于一个组织的软件开发中,积累了2008年到2009年底的8个项目61个小版本号数据。进度控制能力是平均工3.43%。6标准差范围是[-17.77%。24.63%],其用例点生产率平均是30.7个/人月,6标准差范围是[13.6,47.8],符合正态分布。例如以下图2。
图2 用例点生产率分布图
能够看出此方法是有效并且是高效的。
小结
综上,本文介绍的方法基于成熟的用例分析方法。规则简单易用,计算方便。软件规模度量在不同项目组之间是可比的,因而以此为基础,能够得到生产率、缺陷密度等等经常使用指标,能够用于评估不同项目组的能力;而折算已完毕用例点的定期跟踪能够定量客观的显示项目进度,能够保证工期。
參 考 文 献
[1] Roy K. Clemmons。Project Estimation With Use Case Points, CROSSTALK The Journal of Defense Software Engineering, February 2006
[2] Ivar Jacobson. Object - Oriented Software Engineering : A Use Case Driven Approach [ M] . New York : Addison – Wesley Publishing Company , 1992.
[3] Ken Schwaber,《Agile Software Development with SCRUM》, Prentice Hall, ISBN:0130676349, 2001-10
[4] Karner, Gustav. “Resource Estimation for Objectory Projects.” Objective Systems SF AB, 1993.
[5] Ribu, Kirsten. Estimating Object-Oriented Software Projects with Use Cases. Master of Science Thesis, University of Oslo, Department of Informatics. 2001.