开发团队之殇
一家美国公司的主营业务是客户关系管理系统,它拥有20年的历史。它拥有众多包括世界500强在内的巨型跨国公司客户,产品在Gartner的排名中位于业界领先水平。这家公司于2010年在北京成立了研发中心。该研发中心拥有包括新特性开发、产品维护、技术支持和数据中心方向的多个团队。这其中包括一个新技术开发团队,该团队与办公地点位于其他城市和国家的公司团队共同负责为公司的大型客户关系管理系统开发新功能。按照以往的发布频率,该团队每年发布一个新功能版本。
这一年,团队按照以往的流程(计划→需求分析→设计→编码→测试→发布)开始准备开发新功能“文档审批系统”并计划在年底发布。在完成计划、需求分析和设计以后,开始编码工作。但是,当项目推进到第5个月的时候(编码工作阶段),大家开始意识到有更多的需求和相关工作需要在发布之前做完,于是团队开始通过简化设计来赶工。当项目执行到第7个月的时候,产品经理提出了越来越多的需求变更,为了能够按时发布,团队开始加班,但即便如此按时完工的希望也很渺茫。为此团队牺牲了测试和修改产品缺陷的时间,欠下更多的技术债。
即使整个团队努力地工作,产品还是没能按时发布,比计划晚了整整三周的时间,而且产品质量问题严重,也没有完成所有计划的功能开发。团队成员在经历漫长的加班以后,家庭生活和个人健康都受到了影响。
更令人沮丧的是,在项目的总结会议上,北京研发中心的经理说:“项目团队无法拿到今年的奖金,因为产品延期,质量不过关,给公司带来了巨大的损失……”团队成员都感觉很委屈,他们为了这个项目牺牲了健康、家庭,夜以继日地加班赶工,最后却得到这样的结果……
在新的一年到来的时候,研发中心经理老王找到该团队的项目经理小李,与其讨论新一年的团队工作。
老王:“你们团队需要做出改变,否则很难再拿到预算。如果今年还像去年那样,那么我们的新功能有可能被拿到马来西亚去做。”
小李:“去年项目上的所有同事都很辛苦,尤其在最后的两个月里,产品经理、程序员、测试工程师,所有人都疯狂加班,可是最后还是出了这么多的问题。”
老王:“团队辛勤工作但最后却收不到好的结果。你们有没有分析过到底是怎么回事?”
小李:“我们在努力分析,希望可以找到原因。但是,到目前为止一筹莫展。所有人都没有错,但结果就是不好。”
老王:“看来找个外部专家来帮忙调查和解决问题很有必要。我们不能再这样下去了。”
小李:“是的,不能再这样下去了……一定要有所变化……”
老王:“美国总部的一些新功能研发团队在尝试敏捷的开发框架,据说效果不错。我会为你们邀请一位敏捷专家来和团队一起工作,看看他能不能帮助我们解决问题,带来改变。”
小李:“好的。”
老王:“按照公司计划,你们团队今年需要实现‘Scrum任务板’功能,这个功能将以支持终端用户使用Scrum的方式来管理他们的市场项目。终端用户都要使用Scrum来管理项目了,我们的研发团队也要使用Scrum来管理才跟得上节奏。”
小李:“Scrum?敏捷?这些我们以前都没有接触过。我对新的技术还是很好奇、很欢迎的。我会努力和外部专家一起工作,希望可以给我们的项目团队带来改变。”