1 建立估算模型
参考历史数据、结合估算模型计算。
估算模型结构如下:
输入:成本(主要由工作量决定),质量。
输出:进度,包括资源(即人员数量和质量,即能力)和时间。
输入参数中,核心为工作量估算,下面分别对项目开发过程中的几个重要过程的工作估算进行说明:
1.1 需求分析
输入:功能点数目、复杂度(包括业务逻辑复杂性)、用户成熟度、人员经验、复用比例(历史经验)。
输出:人月数(或其他人时数)。
1.2 系统设计(包括数据库设计、概要设计和详细设计)
输入:功能点数目(可以转化为LOC)、复杂度(包括开发语言、是否需要自己实现算法、是否考虑未来扩展或复用)、复用比例(组件、类库、代码等)、人员经验。
输出:人月数(或其他人时数)。
1.3 编码(包括单元测试)
输入:功能点数目(可以转化为LOC)、复杂度(包括开发语言、是否需要自己实现算法、是否考虑未来扩展或复用)、复用比例(组件、类库、代码等)、人员经验。
输出:人月数(或其他人时数)。
1.4 测试(不包括单元测试)
输入:功能点数目、复杂度(包括业务逻辑复杂度、UI复杂度)、人员经验。
输出:人月数(或其他人时数)。
1.5 质量保证
质量保证对上面各个过程的工作产品都要进行检验,其工作量估算与该过程工作量的趋势一致。
2 度量
3 检验,改善估算模型
附录:
LOC(Line of Code)