软件开发过程管理规范文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]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 权数12 指标2 权数23 指标3 权数34 指标4 权数45 指标5 权数5加权平均分 1.06)质量评价:一般地,根据度量综合指标值,有以下评分标准。
质量评价计分标准表序号得分质量评价1 9.0~10.0 优质2 8.0~8.9 良好3 6.0~7.9 合格4 低于6.0 劣质4.3 度量指标计算方法1)度量指标评分标准:根据软件项的各检查指标的缺陷率来确定,既为每项度量指标制定计分标准,缺陷率越高得分越低。
度量指标计分标准表序号得分缺陷率范围1 9~10 范围13 7~8 范围34 5~6 范围45 低于5 范围52)缺陷率来源:主要是各软件项检查、评审、测试的过程所产生的缺陷跟踪表(见附录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 致命 32 严重 23 一般 14 轻微 05 过程度量5.1 及时度1)以软件项目计划规定的的完成时间为基准,通过比较实际完成时间和计划完成时间的时间差,与软件项完成周期的比率来评价各软件项的及时度。
2)时间差率=(实际完成时间-计划完成时间)/(计划开始时间-计划完成时间) 3)评分标准如下:时间差率范围可根据具体项目而定。
及时度评分标准表序号得分时间差率范围1 9~10 范围1(15%以内)3 7~8 范围3(15%~35%)4 低于7 范围4(35%以上)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代表过程指标(P、M、E)在整个指标体系中所占的权重系数(可根据具体项目而定)。
过程指标权重系数表:序号指标权重1 及时度权数1(0.3)2 成熟度权数2(0.3)3 改善效率权数3(0.4)加权平均分 1.07)过程评价:一般地,根据过程综合评分,有以下评分标准。
过程评价计分标准表:序号得分过程评价1 9.0~10.0 优质2 8.0~8.9 良好3 6.0~7.9 合格4 低于6.0 劣质6 软件项综合评价1)软件项综合评分=质量评分*质量权数+过程评分*过程权数。
综合指标权重系数表:序号指标权重1 质量权数1(0.5)2 过程权数2(0.5)加权平均分 1.02)软件项综合评价:一般地,根据软件项综合评分,有以下评分标准。
软件项综合评价计分标准表:序号得分过程评价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 致命 32 严重 23 一般 14 轻微 03)缺陷查找质量评价:为每个软件项制定相应的缺陷查找质量计分标准。
缺陷查找质量计分标准表:序号得分缺陷查找率范围1 9~10 范围13 7~8 范围34 5~6 范围45 低于5 范围54)缺陷查找的平均得分值计算方法是: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)软件部门根据软件项综合评价表每个月或季度统计各检查人员或测试人员缺陷查找的平均得分值,比较检查人员或测试人员缺陷查找的平均得分值与绩效考核标准范围,确定检查人员或测试人员绩效考核评价,绩效考核为"良好"以上人员奖励相应金额。