目前进行工作量测算的方法一般都采用按功能点进行测算,而这种方法都需前期进行大量的需求和设计工作,对一般的开发公司来说,这一块恰恰是软肋。要完成详细的功能点测算,对于设计和分析人员的要求也很高,不但需要软件架构方面丰富的知识和经验,且对于信息系统所应用的行业也必须要有丰富的经验,一般的开发公司都很难达到这一点。一般都是拿到一个项目后进行前期的需求分析后即划分出模块,完成数据库的设计,然后进行任务的分配,而在进行任务的分配的时候完全是根据项目经理以往项目的经验来进行,很难给出一个相对准确的时间进度表,且很难对开发人员的工作效率和工作量进行考核。
根据以上分析提出对模块进行分级管理,不同级别的模块根据经验进行工作量的测算,最后把系统的模块归类到此级别中来,再分析模块归类后的级别进行工作量的测算和考核。
根据模块的难易程度、业务逻辑的难易程度及多少、界面UI的难易程度和所涉及的数据表的多少可以分以下几个级别
级别 | 合计 | 开发时间 | 需求理解时间 | 集成时间 | 测试时间 | 划分原则 |
一级 | 1-1.5 | 0.5-1 | 0.2 | 0.1 | 0.2 | 1. 对数据库简单的增删查改; 2. 涉及的数据库表一般不超过两个; 3. 前台界面的相对比较简单; 4. 前台及后台实现不存在技术难题; 5. 无复杂或多的业务逻辑 |
二级 | 3.2-4.2 | 2-3 | 0.5 | 0.2 | 0.5 | 1. 牵涉到二张或以上的数据库表; 2. 有一到二个中等复杂的业务逻辑; 3. 有一个复杂的业务逻辑; 4. 对前台界面有很严格的要求,且实现有一定的难度 |
三级 | 8-10 | 4-6 | 1 | 1 | 2 | 1. 模块中存在技术难题; 2. 有一个或以上复杂的业务逻辑; 3. 迁涉到复杂的业务流程; 4. 有业务流程变化而导致模块重做的风险; |
以上的测算都是基于开发人员能熟练应用开发中所用到的技术,有一个良好的基础框架;且前期进行了初步的需求分析。