软件开发度量及考核方法
精品文档 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 良好 。1欢迎下载 精品文档 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)缺陷率单位 结构化方法 需求文档:以功能点或文档页数为单位(缺陷数/功能点、缺陷数/页) 。 设计文档:以模块或文档页数为单位(缺陷数/模块、缺陷数/页) 。 软件代码:以模块或代码行数为单位(缺陷数/模块、缺陷数/LOC) 。 面向对象方法 需求文档:以业务用例或文档页数为单位(缺陷数/BUC、缺陷数/页) 。 设计文档:以用例或文档页数为单位(缺陷数/UC、缺陷数/页) 。 软件代码:以用例或代码行数为单位(缺陷数/UC、缺陷数/LOC) 。 4)缺陷率计算方法: 首先根据缺陷跟踪表中的缺陷类别分别统计各类别的缺陷率, 然后依据度量指标计分标准表来给每个度 量指标打分。 缺陷率计算公式为: Total = ∑ (Bi/U)Mi。 其中 i=1,2,.n 代表缺陷级别,缺陷级别可分为:致命、严重、一般、轻微; B 代表每种缺陷级别的缺陷数; U 代表缺陷率单位数; M 代表每种缺陷级别的权重系数,通常权重系数以“一般“ 缺陷级别作为基数(权数设为 1) ,“轻微“缺 陷级别可不用计算缺陷率(权数设为 0) 。 缺陷级别权重系数表: 序号 级别 权数 1 致命 3 2 严重 2 3 一般 1 4 轻微 0 5 过程度量 5.1 及时度 1)以软件项目计划规定的的完成时间为基准,通过比较实际完成时间和计划完成时间的时间差, 与软件项 完成周期的比率来评价各软件项的及时度。 2)时间差率=(实际完成时间-计划完成时间)/(计划开始时间-计划完成时间) 3)评分标准如下:时间差率范围可根据具体项目而定。 及时度评分标准表 。2欢迎下载 精品文档 序号 得分 时间差率范围 1 9~10 范围 1(15%以内) 3 7~8 范围 3(15%~35%) 4 低于 7 范围 4(35%以上) 5.2 成熟度 以软件项检查、评审、测试的结果为评价基准,评分标准如下: 9~10 分:一次检查、评审、测试通过,无须调整; 7~8 分:一次检查、评审、测试通过,略有调整,或第二次检查、评审、测试通过无须调整; 6 分以下:二次以上检查、评审、测试未通过。 5.3 改善效率 在检查、评审、测试的结果的基础上改善软件项结果,以改善的时间是否影响后续阶段的完成和计划的总 体完成时间为评分依据,评分标准如下: 9~10 分:改善效率良好,软件项的修改无须增加工作量,不影响阶段的继续进行和项目计划的总体完 成,或无须修改; 7~8 分:改善效率一般,软件项的修改或完善影响阶段的继续进行,增加工作量在原计划的20%(此阀 值可根据具体项目而定)以内; 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.0 7)过程评价:一般地,根据过程综合评分,有以下评分标准。 过程评价计分标准表: 序号 得分 过程评价 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) 。3欢迎下载 精品文档 加权平均分 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 部在审计软件项时,根据软