2.2 组建一个健康的团队
构建软件产品仍然是个体之间高度互动的活动。我们可以通过增加干系人和团队之间的高质量互动来降低一些意外产生的难度。不幸的是,你不可能控制干系人。他们仅仅是他们自己。然而,你可以组织团队来弥补这个遗憾。你可以很容易地影响团队的规模、结构和合作模式。获得坚实基础的最简单的方法就是有个运作良好的团队。
团队是因为一个共同目标而聚集在一起,并拥有互补技能的一群人。如果你实施Scrum框架,你应该已经意识到一个健康团队所拥有的属性:自主性、跨职能,以及拥有不超过10个同辈成员的自组织团队。
对团队来说最重要的元素是存在一个全心致力于软件需求说明的人。这个人为产品需求说明负责。在Scrum框架中,这个人叫做产品负责人。
第二个重要的元素是团队拥有一些技能和专业知识互补的开发人员。在一个健康的团队里,开发人员可以通过个体的责任感共同承担一些角色,如程序员、测试员、分析师、系统集成员或者架构师,发挥协同作用。这就可以让每一个开发人员最大限度地发挥其所长,同时也能最大限度地降低其弱项造成的影响。
第三个重要元素是产品负责人要确保开发团队最终能够交付产品。一个开发团队不需要不愿意分享知识技能的个人主义英雄。团队通过避免成员之间的松散关系,以及经过多次要求不同成员之间共享合作和集体拥有的迭代得以繁荣发展。在一个健康的团队中,需求说明是一个共有并且共享的资产。即使产品负责人是那个为需求说明背书的人,团队中的每一个人也都必须参与到围绕需求的讨论中来。
组建一个健康团队的第四个(也是最后一)个重要元素是团队成员之间利用事先设定好的事件不断检查和调整。Scrum框架为团队检查和调整设定了四个正式的机会。
sprint计划会议
每日Scrum
sprint评审
sprint回顾
每个事件都为Scrum团队正在进行中的工作提供了检查和调整的可能性。最重要的是认真执行这些循环发生的事件。这就是为什么会有一个专门的ScrumMaster来确保这些事件被理解且被执行了。