怎样衡量一个组员在团队中的Performance
My Attitude:
我认为评价一个团队的成员要看贡献,一切的Personal Ability, Attitude都要以这个为前提。
Principal:
公平的原则+推动团队的发展
二者在大部分情况是相辅相成的,因为只有“多劳多得”,才能激发队员的热情。
但在学生的软件工程任务的情况下,有些组员可能因为能力不足,就放弃毫无希望的努力(比如俺),为了避免一人挑大梁,其余人打酱油的情况,我认为还要考虑积极程度和投入精力的分数(就是所谓的“辛苦分”喽,当然占一小部分)。
Formula:
分数=工作量*工作质量+投入精力or积极程度
下面浅谈一下我对这几个参数的理解:
工作量:查资料的时候看到,以前衡量一个程序员的productivity的时候,用的是LOC(lines of code)和FP(function points)。(真是简单粗暴掉节操的方法.......)
个人认为,工作量=工作1的重要程度+工作2的重要程度+...工作n的重要程度
如何衡量一项工作的重要程度呢,我认为类似RPG游戏,要分角色考虑。通常来说,一项任务需要Designer, Developer和Tester。这三种角色的总体比重应该视任务情况而定,比如说有的时候任务的需求分析比较难或者比较重要,那么Designer的重要程度就大一些;相反如果一个软件有很高的技术要求,那么Developer就更重要;同理如果开发的是一款需要及时更新不断测试的软件,Tester就是关键人物了。
而这三类角色下工作关键程度的评判,就相对来说好分一些了吧......
工作质量:对于Designer来说:准确快速地分析用户需求,提出功能架构;
对于Developer来说: 作为一只程序猿,命根就是时间+代码质量
包括运行速度,存储空间,可维护性,可读性......
对于Tester来说:检验代码错误,即时收集用户信息并反馈。
积极程度or投入精力:感觉这部分是给能力较差但是有一颗积极向上的心的那些同学。
对于那些性格很外向,可以带动团队气氛的同学,考虑积极程度。
对于那些只是闷头干一声不吭的人来说,只好考虑投入精力了。
然后再谈一谈为什么要评价个人能力,个人理解是为了提高团队的工作效率。严肃一点说,当有态度及其不端正的组员时,可以将其T出并邀请更有能力的同学;通融一点说,就是奖励top performers, 并且训练bottom performers来提高团队的整体实力。