越来越多的组织拥抱精益及敏捷,要求更多的软件研发人员跟随组织转型。在转型过程中,许多人被赋予了新的岗位和使命,这其中就包含了Scrum Master(以下简称SM)、Business Analyst、QA、Tech Leader、SA等敏捷项目中的关键角色,无论是主动要求亦或被动授予,履新的人都应了解这些角色的含义、职责。在这些角色中,SM是个不太起眼但至关重要的存在,因为它是组织中数量庞大的基层团队主心骨,对于任何一个重视“群众路线”的组织来说,提升SM的能力即是保证现有组织“基座”稳定同时又能储备未来潜能的不二选择。本文提供一种思路,即尝试度量SM技能并建立SM能力基线,从而帮助SM实现能力提升的跟踪与改进。
职责与技能
要度量SM的技能首先要了解SM肩负的职责以及在此基础上应具备的技能,以下这些通常是SM日常工作的关注重点:
- 负责精益和敏捷(含Scrum)价值观及其过程的落地实施
- 引导团队持续改进
- 保护团队不受外来无端打扰,清除各种障碍
- 助力团队与外部各个团队以及各个角色之间高效协同合作
- 负责打造高绩效、高士气、敏捷文化为导向的自组织团队
基于上述认知并结合《Scrum Master自我成长小工具》中提出的多象限能力评估,通过提炼和简化建立SM技能5大维度的度量模型,包括精益&敏捷思维、敏捷项目管理、交付管理、团队建设、通用能力。
精益&敏捷思维
精益&敏捷思维关注于价值观,强调对理论知识的融汇贯通和灵活运用。这是SM手中最有力的武器,也是衡量一切行动价值的依据,只要是符合敏捷&精益价值观的行动就应大胆地实践,因此SM必须准确地理解敏捷价值观(6句话、12句箴言)以及精益思想(5大原则、两大支柱、14项产品开发原则、10种浪费、自动化等)。
借助一些理论知识的书籍,精益&敏捷思维能够很快地入门,但更深入的学习依靠实践和思考,可供参考的书目如下:
- 入门:《敏捷软件开发宣言》、《硝烟中的Scrum和XP》
- 进阶:《敏捷软件开发:原则、模式与实践》、《敏捷教练》、《敏捷软件测试》
- 高级:《敏捷软件开发的艺术》
敏捷项目管理
团队承诺项目的管理是SM的日常,进度、问题、风险一个都不能少,因而SM需要掌握敏捷项目管理技能,熟悉主要的几种敏捷开发模型(Scrum、XP、Kanban、精益等),学会运用可视化的方式展示、快速反馈和确认项目状态,建立完备的风险管理体系。在这个领域,不少经典的书籍可以作为开展项目管理的理论指导与实践指南,推荐书目如下:
- 入门:《Scrum敏捷软件开发》、《用户故事与敏捷方法》
- 进阶:《精益软件度量》、《创造价值的质量管理》、《精益和敏捷开发大型应用实战》
- 高级:《人月神话》、《高效程序员的45个习惯》
交付管理
团队承接的是需求最终交付的是价值,价值的体现在于功能和质量,无论哪一个都依赖团队对于价值的认可以及认可后的实施,这些都是SM需要掌控的。SM不仅要关注需求的价值传递,更要尝试采取技术手段解决管理问题,通过质量内建的方式不断提升交付物的质量标准。
近年来较为流行的需求实例化以及MFQ就是交付管理领域的优秀实践,由于交付管理是一项长期的、艰苦的工作,因此相关书籍无论哪个阶段都是经历过反复锤炼的经验总结及教训反思,绝对开卷有益。推荐书目如下:
- 入门:《看板方法》、《用户故事地图》
- 进阶:《需求实例化》、《海盗派MFQ测试方法》
- 高级:《人人都是产品经理》、《精益和敏捷开发大型应用指南》
团队建设
SM作为团队的主心骨同时又为团队提供支持和服务,团队建设是SM的基本功。合格的SM能够团结成员、协调资源,让团队能够在一个稳定的环境工作;优秀的SM则着眼打造学习型组织,赋能以激励团队,提升团队士气和效率。两者之间的差异就在于对团队建设的理解深度和执行力度上,想在这个维度上提升就需要打开眼界去学习外部的方法,吸收外部的成功经验,因此推荐书目如下:
- 入门:《重新定义团队》
- 进阶:行动教练、《个人与交付:敏捷实践》
- 高级:《管理3.0》、《欣赏式探寻》、《重塑组织》
通用能力
通用技能,通常包括交流沟通能力、系统思考的能力、引导力(领导力、教练能力),这些能力看似与SM关系不大,但实际上是SM能够施展上述4个维度技能的前提。当SM缺乏交流、思考和领导时,谈何传递敏捷思想,引导团队改进以及提升交付质量,恐怕只能是一句笑谈。此外也不能忽视软件开发的技能,这是SM能够在研发团队立身的根本。
通用能力涉及的面非常广,内容包罗万象,但还是有一些得到实践考验的“金玉良言”值得推荐,推荐书目如下:
- 入门:《金字塔原理》、《CleanCode》
- 进阶:《高效能人士的七个习惯》、思维导图、《重构:改善既有代码的设计》
- 高级:《系统思考》、九型人格、《领域驱动设计》、《设计模式》