软件开发度量考核方法

来源:互联网 发布:余弦相似算法 编辑:程序博客网 时间:2024/05/16 17:02

?

0 引言
本人觉得如果要提高软件开发人员的开发质量,必须有相应的考核制度,有了制度后才能推动开发人员想方设法改善自已的开发质量。虽然目前很多公司有这方面的绩效考核,但是大多数没有对软件开发的过程进行细粒度的度量,所以不能依据有效的度量数据来考核开发人员的工作绩效,大部份只是凭考核人主观意志来考核,不能形成对被考核人有效的说服力。以下文档是本人根据以前经验和相关的资料所编写的度量方法和考核方法,希望能对公司改善考核制度有用。由于时间有限,有不足之处,请各位仁兄多提意见,谢谢!
1
目的
对软件开发的过程所产生的软件项的质量和过程进行定量的评价,用评价的结果指导软件的开发过程,不断地提高软件开发质量水平,并依据度量记录来考核软件开发人员的工作绩效。
2
软件项包括
1
)技术文档:参照公司"软件工程产品集",所确定的配置项;主要包括:可行性分析报告、需求分析报告、软件功能规格说明、开发计划、质量计划、系统设计报告、测试文档、技术报告、用户手册、总结报告等;
2
)计算机程序。
3
度量数据的来源
1
)项目计划;
2
)评审报告;
3
)测试报告;
4
)问题报告;
5
)软件维护记录;
4
质量度量
4.1
度量指标
主要根据各类软件项检查表的检查指标来确定,例如,软件需求规格说明书检查表(见附录1),有10个检查指标,则根据具体项目检查侧重点不同,可从中选择相应的检查指标作为度量指标。
4.2
质量等级
1
)软件项的质量等级的确定根据度量综合指标进行。
2
)度量综合指标计算公式为: Total = ∑QiMi
3
)其中i=1,2,...n代表指标数量;
4
Q代表度量的指标;
5
M代表度量的指标Q在整个指标体系中所占的权重系数,对不同的开发项目可能不同,此系数根据开发的不同着重点给出。
度量指标权重系数表:
序号 指标 权重
1
指标1 权数1
2
指标2 权数2
3
指标3 权数3
4
指标4 权数4
5
指标5 权数5
加权平均分 1.0
6
)质量评价:一般地,根据度量综合指标值,有以下评分标准。
质量评价计分标准表
序号 得分 质量评价
1 9.0
10.0 优质
2 8.0
8.9 良好
3 6.0
7.9 合格
4
低于6.0 劣质
4.3
度量指标计算方法
1
)度量指标评分标准:根据软件项的各检查指标的缺陷率来确定,既为每项度量指标制定计分标准,缺陷率越高得分越低。
度量指标计分标准表
序号 得分 缺陷率范围
1 9
10 范围1
3 7
8 范围3
4 5
6 范围4
5
低于5 范围5
2
)缺陷率来源:主要是各软件项检查、评审、测试的过程所产生的缺陷跟踪表(见附录2),缺陷跟踪表中的缺陷类别对应检查表中的检查指标。
3
)缺陷率单位
<1>
结构化方法
需求文档:以功能点或文档页数为单位(缺陷数/功能点、缺陷数/页)。
设计文档:以模块或文档页数为单位(缺陷数/模块、缺陷数/页)。
软件代码:以模块或代码行数为单位(缺陷数/模块、缺陷数/LOC)。
<2>
面向对象方法
需求文档:以业务用例或文档页数为单位(缺陷数/BUC、缺陷数/页)。
设计文档:以用例或文档页数为单位(缺陷数/UC、缺陷数/页)。
软件代码:以用例或代码行数为单位(缺陷数/UC、缺陷数/LOC)。
4
)缺陷率计算方法:
<1>
首先根据缺陷跟踪表中的缺陷类别分别统计各类别的缺陷率,然后依据度量指标计分标准表来给每个度量指标打分。
<2>
缺陷率计算公式为: Total = ∑(Bi/U)Mi
<3>
其中i=1,2,...n代表缺陷级别,缺陷级别可分为:致命、严重、一般、轻微;
<4>B
代表每种缺陷级别的缺陷数;
<5>U
代表缺陷率单位数;
<6>M
代表每种缺陷级别的权重系数,通常权重系数以"一般" 缺陷级别作为基数(权数设为1),"轻微"缺陷级别可不用计算缺陷率(权数设为0)。
缺陷级别权重系数表:
序号 级别 权数
1
致命 3
2
严重 2
3
一般 1
4
轻微 0
5
过程度量
5.1
及时度
1
)以软件项目计划规定的的完成时间为基准,通过比较实际完成时间和计划完成时间的时间差,与软件项完成周期的比率来评价各软件项的及时度。
2
)时间差率=(实际完成时间-计划完成时间)/(计划开始时间-计划完成时间)
3
)评分标准如下:时间差率范围可根据具体项目而定。
及时度评分标准表
序号 得分 时间差率范围
1 9
10 范围115%以内)
3 7
8 范围315%35%
4
低于7 范围435%以上)
5.2
成熟度
以软件项检查、评审、测试的结果为评价基准,评分标准如下:
<1>9
10分:一次检查、评审、测试通过,无须调整;
<2>7
8分:一次检查、评审、测试通过,略有调整,或第二次检查、评审、测试通过无须调整;
<3>6
分以下:二次以上检查、评审、测试未通过。
5.3
改善效率
在检查、评审、测试的结果的基础上改善软件项结果,以改善的时间是否影响后续阶段的完成和计划的总体完成时间为评分依据,评分标准如下:
<1>9
10分:改善效率良好,软件项的修改无须增加工作量,不影响阶段的继续进行和项目计划的总体完成,或无须修改;
<2>7
8分:改善效率一般,软件项的修改或完善影响阶段的继续进行,增加工作量在原计划的20%(此阀值可根据具体项目而定)以内;
<3>6
分以下:改善效率较差,软件项的修改或完善过程使项目延期,或增加的工作量超过20%(此阀值可根据具体项目而定)。
5.4
综合评价
1
)过程度量的综合评分方法是:S=P*A1+M*A2+E*A3
2
S代表综合评分;
3
P代表及时度;
4
M代表成熟度;
5
E代表改善效率;
6
A代表过程指标(PME)在整个指标体系中所占的权重系数(可根据具体项目而定)。
过程指标权重系数表:
序号 指标 权重
1
及时度 权数10.3
2
成熟度 权数20.3
3
改善效率 权数30.4
加权平均分 1.0
7
)过程评价:一般地,根据过程综合评分,有以下评分标准。
过程评价计分标准表:
序号 得分 过程评价
1 9.0
10.0 优质
2 8.0
8.9 良好
3 6.0
7.9 合格
4
低于6.0 劣质
6
软件项综合评价
1
)软件项综合评分=质量评分*质量权数+过程评分*过程权数。
综合指标权重系数表:
序号 指标 权重
1
质量 权数10.5
2
过程 权数20.5
加权平均分 1.0
2
)软件项综合评价:一般地,根据软件项综合评分,有以下评分标准。
软件项综合评价计分标准表:
序号 得分 过程评价
1 9.0
10.0 优质
2 8.0
8.9 良好
3 6.0
7.9 合格
4
低于6.0 劣质
7
度量记录
项目经理或开发经理在软件项提交检查、评审、测试通过后,需要填写软件项度量表(见附录3),并提交给SQA部审核和软件事业部经理批准。如果一个软件项由多人完成,需要将软件项按(功能、模块)拆分,分别记录
各人的度量,SQA部在审计软件项时,根据软件项度量表填写软件项综合评价表(见附录4)。
8
绩效考核
8.1
开发人员考核
1
)软件项的平均得分值计算方法是:AV=(∑COi)/i*10
2
AV代表软件项的平均得分值;
3
CO代表软件项综合得分;
4
i=1,2,...n代表软件项数量。
5
)绩效考核标准:一般地,根据软件项的平均得分值,有以下评分标准。
绩效考核计分标准表
序号 得分 考核评价
1 90
100 优秀
2 80
89 良好
3 60
79 及格
4
低于60 很差
6
)软件部门根据软件项综合评价表每个月或季度统计各开发人员所负责的软件项的平均得分值,比较开发人员软件项的平均得分值与绩效考核标准范围,确定开发人员绩效考核评价。绩效考核为"良好"以上人员奖励相应金额,绩效考核为"很差"人员处罚相应金额。对于很差的开发人员需要通报批评,并要求在项目经理、开发经理帮助下写个人软件开发过程改进书。如果是连续三个月都是很差,则可能降级、降工资、甚至解雇;对于优秀的开发
人员通报表扬,并组织经验交流会介绍其优秀的软件开发过程控制方法,如果是连续三个月都是优秀,则可能升级、升工资。
8.2
项目经理、开发经理考核
1
)项目组的平均得分值计算方法是:AV=(∑COi)/i*10
2
AV代表项目组的平均得分值;
3
CO代表项目组成员绩效考核得分;
4
i=1,2,...n代表项目组成员数量。
5
)绩效考核标准:一般地,根据项目组的平均得分值,有以下评分标准。
绩效考核计分标准表
序号 得分 考核评价
1 90
100 优秀
2 80
89 良好
3 60
79 及格
4
低于60 很差
6
)软件部门每个月或季度确定了项目组成员绩效考核评价后,计算项目组的平均得分值,比较项目组的平均得分值与绩效考核标准范围,确定项目经理、开发经理绩效考核评价。绩效考核为"良好"以上项目经理、开发经理奖励相应金额,绩效考核为"很差" 项目经理、开发经理处罚相应金额。对于很差的项目经理、开发经理需要通报批评,并要求在部门经理帮助下作项目组软件开发过程改进书,如果是连续三个月都是很差,则可能降级、降工
资、甚至解雇;对于优秀的项目经理、开发经理通报表扬,并组织经验交流会介绍其优秀的项目组开发过程管理方法,如果是连续三个月都是优秀,则可能升级、升工资。
8.3
检查、测试人员考核
1
)在软件项检查、评审、测试过程中,项目经理或开发经理需要填写检查、测试人员的缺陷查找质量度量表(见附录5)作为月度考核或季度考核依据。
2
)缺陷查找率计算方法
<1>
缺陷查找率计算公式为: Total = ∑(Bi/U)Mi
<2>
其中i=1,2,...n代表缺陷级别,缺陷级别可分为:致命、严重、一般、轻微;
<3>B
代表每种缺陷级别的缺陷数;
<4>U
代表缺陷率单位数;
<5>M
代表每种缺陷级别的权重系数,通常权重系数以"一般" 缺陷级别作为基数(权数设为1),"轻微"缺陷级别可不用计算缺陷查找率(权数设为0)。
缺陷级别权重系数表:
序号 级别 权数
1
致命 3
2
严重 2
3
一般 1
4
轻微 0
3
)缺陷查找质量评价:为每个软件项制定相应的缺陷查找质量计分标准。
缺陷查找质量计分标准表:
序号 得分 缺陷查找率范围
1 9
10 范围1
3 7
8 范围3
4 5
6 范围4
5
低于5 范围5
4
)缺陷查找的平均得分值计算方法是:AV=(∑COi)/i*10
<1>AV
代表缺陷查找的平均得分值;
<2>CO
代表缺陷查找质量得分;
<3>i=1,2,...n
代表软件项数量。
5
)绩效考核标准
绩效考核计分标准表:
序号 得分 考核评价
1 90
100 优秀
2 76
89 良好
3 60
75 及格
4
低于60 很差
6
)软件部门根据软件项综合评价表每个月或季度统计各检查人员或测试人员缺陷查找的平均得分值,比较检查人员或测试人员缺陷查找的平均得分值与绩效考核标准范围,确定检查人员或测试人员绩效考核评价,绩效考核为"良好"以上人员奖励相应金额。对于优秀的人员通报表扬,并组织经验交流会介绍其优秀的检视和测试方法。
8.4
缺陷考核
1
)某阶段的软件项检查、评审、测试通过后,如果在后面阶段工作中发现此软件项的缺陷时,需定位缺陷级别,定位是"重大"以上级别缺陷时,每个缺陷罚款××元,作为项目组活动经费。
2
)在软件项检查、评审、测试过程前,需要制定软件项的最低缺陷查找率,通过缺陷查找质量度量表(见附录5),比较检查或测试人员的缺陷查找率少于最低缺陷查找率时,当软件项在以后阶段发现缺陷而被罚款时,款项由软件项负责人和检查、测试人21分摊。
9
附录
附录1:软件项检查表;(略)
附录2:缺陷跟踪表;(略)
附录3:软件项度量表;(略)
附录4:软件项综合评价表;(略)
附录5:缺陷查找质量度量表。(略)

原创粉丝点击