软件开发团队中的角色


一个NBA球队场上球员的组成与软件团队有相通之处,且作一笑谈,不足为证:

1号位,控球后卫(PG),他是球场上拿球机会最多、掌握比赛、组织进攻的人,不仅负责把球从后场安全地带到前场,再把球传给队友,给队友创造得分的机会,助攻是他们的首要工作。控球后卫在赛场上扮演的角色类似于电影导演。而在软件团队中,担任这一角色的莫过于 项目经理(项目组长)。项目经理需要调和团队内外的各种关系,组织各种资源进行系统开发,在困境时激励团队成员,在顺境时提醒团队成员。项目经理每每不必参与具体的开发工作,就像PG无需投篮一般, 但项目经理必须具备足够的技术储备以应对各种细节的技术问题,既要熟悉CMM,也要知道如何用UML建模,既要熟悉本钱核算,也应明白SOAP的协议细节。如果PG虽然很少脱手投篮,但如果投篮,那么他的2分球命中率不应低于50%,3分球命中率不应低于40%。目前NBA联盟中最佳的控卫当属太阳队的Steve Nash,虽然30多岁了,但我依然认定Nash是联盟本赛季常规赛的MVP,网队的Jason Kidd也是不错的PG,但Kidd没有Nash那般的灵气。一样,项目经理也必须有成为MVP的潜力,虽然纷歧定参与MVP的票选。


2号位,得分后卫(SG),他的主要任务的是外线得分,因此SG首先要有较高的投篮命中率和稳固性,第二是脱手速度必须快,如此才能拉开对手的盯或联防,帮助队友,尤其是内线球员形成在禁区内的攻势。软件团队里相应的角色应是 系统设计工程师,他是一个承先启后的角色,在需求分析与系统实现之间搭建一个沟通的桥梁。系统设计工程师的编程能力在团队中是首屈一指的,而且有必要参与焦点代码的编写,这样更容易验证设计的正确性,或者进一步寻求改进的实现方法。在后卫这个位置上,火箭队的Rafer Alston和Luther Head这两个人远来似乎有些进步,但我感觉Tracy McGrady似乎应该改打PG,Head打SG,Alston是把令人捉摸不定的神经刀,还是做相对稳固的Head的替补比较适开。但Head具备设计比赛的能力吗?这一点我很是怀疑。作为一个系统设计工程师,应有全局不雅,而不是一门心思站在3分线外猛投。适时地分球,正确地投篮,系统设计工程师在项目进行过程中,应该明白该做什么,不该做什么,尤其是不能过深地介入编程,这样将失去他存在的意义。

3号位,小前锋(SF),无疑,Kobe Bryant,一个渐渐走向神坛的人,给了我们一个对SF最好的诠释。SF是得分高手中的高手,高手纷歧定寂寞,寂寞的也纷歧定是高手,但Kobe是寂寞的,即便单场拿下81分,也不见一丝狂喜。Kob剑灵e绝不会在凌晨3点时喝着咖啡用VC或Eclipse写程序,但如果写的话,那么一定要保证能够最终调试成功,一定能够交付给最终用户一个无缺的系统版本。SF的唯一任务就是投篮,哪怕命中率只是个位数,也要红着眼睛把皮球扔出去,SF的眼睛里只有篮筐,45度角跳投、风车大扣篮,无一不是顶级SF的拿手好戏。在软件团队里, 软件工程师扮演着这样一个攻击性最强的角色,其他成员应该学会容忍软件工程师的桀骜不驯、囚首垢面,千万不要用朝九晚五这类教条来约束他,迟到早退对他只是家常便饭,因为他总是在别人下班的时候上班。只需对他说:既然杠杆和支点都已经给你了,那么在今晚23:45分之前,我要看到你把地球向上撬动0.018微米,若做到了,就给我发个手机短信,什么 ?做不到?我这暴脾气,哼哼。。。。最好考虑一下如何做到。。。

4号位,大前锋(PF),PF是球场上的苦力,争抢篮板、倒地救球、奋起盖帽等等气力活都由PF承担。Ben Wallace,这个比Barkley还暴躁的男人,让我们见识了PF的性格。PF从不怕冲克什么人,无论是对方的巨星,还是本队的伙伴。如果在软件团队中找到这样一个角色的,我感觉 测试工程师最开适不过。测试工程师张开左手是一个bug,张开左手也是一个bug,捕捉bug需要耐心与技巧,需要比编程高手更认真地审视每一个细小需求、每一行代码。他在系统开端之初就要提出自己的测试设计,如果在开场争球时,PF就要注意篮球的落点一样。测试是枯燥的,不能天马行空,也不能风花雪月,他问的唯一一个问题就是:“这是对的,还是错的?”,永远不能出现“或许,或者,假如”等第三个选项,当然,PF不可能抢到所有的篮板,测试工程师也不可能找出所有bug,但他必须具备这样的意识,甘于做个蓝领。

5号位,中锋(C)。大家都说如今是中锋凋零的时代,随O'Neal渐渐老去,姚明、Dwight Howard、Amare Stoudemire、Carlos Boozer虽然有些成绩,但都还没达到O'Neal那样的高度,原因很简单,这四个人手上的总冠军戒指总数加起来是“0”,而O'Neal手上已经戴了四枚戒指。所以本赛季小牛队、太阳队的犀利攻势让人感觉即便没有中锋,也一样可以拿总冠军。但是,小牛队、太阳队拿到了吗?没有,崇尚时兴攻势篮球的两队相继遭到了镌汰!中锋是一个球队的中心人物,强壮、嵬峨,无论进攻还是戍守,他们都是球队的枢钮,故名之为中锋。作为禁区内的擎天柱,抢篮板球是中锋必不可少的能力,同时中锋必须多才多艺,不但要有足够的得分技巧用于进攻得分,戍守时还要能成为球队的最后一道屏障。在软件团队中,这样的角色还是由 系统分析师担任比较开适。首先,系统分析师站在最高的层面定义系统的功能框架,既要把用户的需求清晰地描述出来,也要使这种描述足够形式化,以使系统设计人员进行深化设计。其次,系统分析师从不介入编程、用例测试等细节,但他做的统统,都将成为后续工作的指南与评价标准。最后,他要有足够灵活性,以适应用户需求的改变、技术的演进,在系统定义之初就要充分考虑后期系统维护的问题。

当然,一个Teamwork中,除了上述的角色之外,还会有很多的边缘人物,而项目的成败,最终冠军的归属,也离不开一世人的努力,所以,身为团队的一员,所要做的事情就是努力去适应团队,永远不可能出现让团队去适应某一个人的情况,如果有这种人的话,那么只能有一个了局:88

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值