基本公式:贡献度 = 工作量 × 工作的影响力 × 工作的不可替代性 + 对项目有重大意义的idea
工作的不可替代性指标:工作的难度,这个难度包括问题本身的难度和预计所需要的时间。由于我们的工作分配主要是以ISSUE的形式,所以我们会在ISSUE中标注这个工作的难度指标,具体的难度指标如何标记我们将会在每日例会和线上交流中确定。具体来说,我们会使用如下的分制来进行评判
难度评分:
难度等级 描述 分值
A 流程性任务(跑通demo,配置环境,简单调研) +1
B 基础性任务(完成某个具体小功能的实现,根据讨论内容整合文档,bug修复) +2
C 设计性任务(设计接口和数据结构,并完成框架代码) +3
D 探索性任务(探索某个功能,需要阅读大量源代码,并给出具体实现任务) +4
如果某项任务需要花费较多的时间(10小时以上),则难度分再加0.5,如果需要花费非常多的时间(20小时以上),则难度分再加1.0
工作量评价指标:具体完成任务所用的时间,需要完成人在ISSUE处提供comment和commit记录,经PM确认后方可生效。
工作的影响力指标:影响力的基础分为3分,如果做出正面的影响力,则会在基础分上加分,如果是负面的,则会在基础分上减分,减到0为止。影响力需要考虑完成时间和截止日期的关系,以及具体的完成情况,具体细则如下:
- 提前完成1天(+1),提前完成3天(+2),延迟完成x天(-x)
- 完成效果优秀,未出现任何大的问题(+2),完成效果较好,但接口交互和代码可读性较差(-1),完成效果较差(根据code review结果来扣分,根据测试组的测试结果来扣分)
如果有提出对项目有重大意义的idea,在全组商讨同意后,在ISSUE中进行记录,并给予5-10的加分
其他:
- bug修复将会作为一个新的单独的ISSUE重新进行分配和贡献分计算
- 在实际用户使用中发现的优点和bug将会根据情况给予额外的贡献分加分和扣分
- 最终将这个得分映射到50*N(N=6)的总分空间内,作为最终贡献分