首页 / 软件开发效率评估方法

软件开发效率评估方法无效专利 发明

技术领域

[0001] 本发明涉及软件领域,具体涉及一种软件开发效率评估方法。

相关背景技术

[0002] 软件研发员工度量是业界面临的管理难题,每位软件研发员工提交的代码行数,每位软件研发员工的新功能数量等,但针对这些算法都存在诸多的因子,会影响度量的效果,或者导致度量驱动的行为走错方向。比如,人均代码行数的提高或者降低不能反映以下的情况:
[0003] 1)统计时间窗口的差异不同导致代码行数高或者低;
[0004] 2)代码复用导致代码行数统计的高或低;
[0005] 3)无从反映代码质量有问题导致的后期重复工作;
[0006] 4)代码行数高/低是否是员工工时增长;
[0007] 5)代码行数的高或低是否是团队的特性;
[0008] 6)有无统一的指标展现不同的维度;
[0009] 等等。

具体实施方式

[0038] 下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0039] 首先,结合图1说明根据本发明实施例的软件开发效率评估方法。
[0040] 如图1所示,本发明实施例的软件开发效率评估方法,基于评估人员有效性、工作产出率、以及产出质量确定所述软件开发效率。
[0041] 也就是说,根据人员有效性、工作产出率、以及产出质量三个考核指标评估软件开发效率。
[0042] 其中,软件开发效率评估可以评估团队也可以评估员工,考虑到团队里面每个成员的分工不同,可以直接评估团队,也可以在评估出某一团队出现问题的情况,进一步评估员工,也可以直接评估员工。
[0043] 以下分别从评估团队和评估员工两种情况说明本发明软件开发效率评估方法。
[0044] 首先,评估有效性,有效性通过下述式(1)进行评估:
[0045] A=Hr/Hp      (1)
[0046] 其中,A表示人员有效性。
[0047] 当评估团队:Hr表示统计月份的实际有效工作时长,Hp表示统计月份的计划工作时长,Hp=统计月份的团队实有员工数*当月法定工作时长。
[0048] 当评估员工:Hr表示统计月份的员工实际有效工作时长,Hp=当月法定工作时长。
[0049] 由此,可以较好的评估出每月团队/员工软件开发的人员有效性。
[0050] 接着,评估工作产出率,工作产出率通过下述式(2)进行评估:
[0051] P=Wr/Wp    (2)
[0052] 其中,P表示工作产出率,Wr表示统计当月产出的结果的总和,Wp表示统计月份应该产出的结果的总和的数学期望,所述产出包括代码或功能点。
[0053] 其中,P表示工作产出率,
[0054] 当评估团队,Wr表示统计团队当月产出的结果的总和,Wp表示统计团队月份应该产出的结果的总和的数学期望。
[0055] 当评估员工,Wr表示统计当月员工产出的结果的总和,Wp表示统计员工月份应该产出的结果的总和的数学期望。
[0056] 由此,可以较好的评估出每月团队/员工软件开发的工作产出率。
[0057] 进一步地,统计当月产出的结果的总和Wr有两种方式:
[0058] 1)统计当月产出的结果的总和Wr包括新的产出结果,和修改的产出结果。
[0059] Wr=Wnew+Wmod
[0060] 其中,Wnew表示新产出的结果,Wmod表示修改的产出结果。
[0061] 2)统计当月产出的结果的总和Wr包括新的产出结果、修改的产出结果及删除的产出结果,
[0062] Wr=Wnew+Wdel+Wmod
[0063] 其中,Wnew表示新产出的结果,Wdel表示删除的产出结果,Wmod表示修改的产出结果。
[0064] 以上两种方式可以根据实际情况进行选择。
[0065] 进一步地,统计月份应该产出的结果的总和的数学期望如下述式(3)所示,[0066]
[0067] 当评估团队,k=12*团队规模,x2是k个独立变量Wr的卡方分布 的数学期望值。
[0068] 当评估员工,k=12,x2是k个独立变量Wr的卡方分布 的数学期望值。
[0069] 由此,利用历史的大数据分析方法(卡方分布检验),对软件开发的工作产出率做出预测,从而计算出管理层期待的工作产出率,作为重要的输入参数,计算出团队/员工的工作产出率成效。
[0070] 可选地,数学期望值计算可以是该团队预定月份(例如连续4个月等)产出的结果的总和与所有团队预定月份实际当月产出的结果的总和的乘积除以当月所有团队当月产出的结果的总和。
[0071] 例如,如表1所示统计4个月(预订月份)实际产出数据,团队A和团队B计算出期望值如下:
[0072] 表1
[0073]
[0074] 比如,1月份团队A期望值=1667*1831/942=857.63。
[0075] 接着,统计产出质量,产出质量通过下述式(4)进行评估:
[0076] Q=1-(Wf/Wr)                (4)
[0077] 其中,Q表示产出质量,Wf表示统计月份产生的与修复代码缺陷相关的非注释行代码或功能点。
[0078] 当评估团队,Wf表示统计团队月份产生的与修复代码缺陷相关的非注释行代码或功能点。
[0079] 当评估员工,Wf表示统计员工月份产生的与修复代码缺陷相关的非注释行代码或功能点。
[0080] 由此,可以较好的评估出每月团队/员工软件开发的产出质量。
[0081] 最后,进行软件效率评估,软件开发效率通过下述式(5)进行评估:
[0082] SWTEImonth=α*A*P*Q                 (5)
[0083] 即SWTEImonth=α*(Hr/Hp)*(Wr/Wp)*(1-(Wf/Wr))
[0084] 其中,SWTEImonth表示统计月份的软件开发效率,α为调整因子。
[0085] 当评估团队,优选地,α为每个团队根据实际情况调整的非开发人员的比例,α=0.9。
[0086] 当评估员工,优选地,α为1。
[0087] 需要注意的是,以上只是可选地示例,有效性(A)、工作产出率(P)、产出质量(Q)还可以根据每个参数的重要性分别设置不同的权重。
[0088] SWTEImonth=α*(δA)*(εP)*(ζQ)
[0089] 其中,δ为A的权重,ε为P的权重,ζ为Q的权重。
[0090] 由此,可以能够较好的评估团队/员工软件开发效率,及时发现异常团队,对团队的人员和数据进行调配。
[0091] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页 第1页 第2页 第3页
相关技术
效率评估相关技术
评估方法相关技术
宋涛发明人的其他相关专利技术