敏捷开发:如何成为合格的Scrum Master?

敏捷开发:如何成为合格的Scrum Master?

(英文原文)

Scrum 敏捷开发有三个主要角色

3 Scrum角色

3 Scrum角色

其中,Scrum Master是其重要角色之一。所以今天我们将讨论如何成为一名合格的Scrum Master。

什么是Scrum Master?

Scrum Master被认为是许多项目开发中的项目经理,这实际上是一种误解。与此同时,我经常看到那些主张Scrum Master和项目经理完全区别的人。我不同意这一点。在我看来,尽管Scrum Master不是项目经理,但它仍然有许多项目经理职能。那么Scrum Master的责任是什么?我们可以做些什么来成为一名合格的Scrum Master?

什么是Scrum Master

什么是Scrum Master

列出以下六个方面供您参考:

管理Scrum流程

这是Scrum Master的核心职责,Scrum Master的主要职责是将其与项目经理区分开来:Scrum Master需要维护每个sprint的流程,并确保团队遵守价值观和最佳实践,这样项目就可以成功实施和完成。

首先,Scrum Master负责在Sprint期间主持每次会议,包括sprint计划会议每日Scrum会议sprint审查会议sprint回顾会议

此外,Scrum Master需要帮助产品负责人建立产品积压sprint积压,并通过正在进行的积压修饰会议确定每个故事的优先级。

最后,Scrum Master还需要帮助Scrum团队清除开发过程中遇到的障碍。Scrum Master应该有一个阻止列表来记录团队在开发过程中遇到的问题障碍,即阻碍日志。它由Scrum Master本身管理,最终列表中的每个问题都得到及时处理。

保护团队

Scrum Master应尽最大可能保护团队,以确保团队不受外界干扰,尤其是产品负责人。那么Scrum Master如何保护团队?Scrum团队在什么情况下需要保护?

Scrum主人保护团队

Scrum主人保护团队

  • 避免过度承诺

在每个sprint开始时,Scrum Master应根据团队的能力和过去的经验合理地承诺工作量。不要盲目和乐观地向产品负责人承诺过多的工作。一些Scrum Masters可能无法估计团队的能力,或者希望通过过度投入太多工作来获得老板的良好印象,导致团队持续加班以达到冲刺的目标。团队的效率严重降低。与此同时,由于时间紧迫和急于交付,项目的质量非常低,最终形成了恶性循环。

  • 平衡的工作量

一个好的Scrum Master应该知道如何与产品负责人“摇摆”,以便在此时获得合理的工作量。这里的“摇摆”不是被动闲置工作,也不是故意减少团队的工作量,而是安排合理的工作量,使团队能够实现最高效率,同时不损害团队的主动性。这是一个良性循环。

  • 避免外部干扰

我们都知道需求的变化对每个开发人员来说都是噩梦,敏捷出现的一个重要原因是解决这个问题并让开发人员接受变化。但是,您经常会遇到跨越Scrum Master的产品负责人,直接找到团队并给他们订单。此时,Scrum Master应该保护团队,以避免分散团队目前正在进行的工作。要求的变化是好的,但它不应该干扰冲刺过程中的团队。可以在每日Scrum会议或sprint计划会议上提出协商解决方案。我认为Scrum Master在任何时候都应该为团队保持“小腿防守”的精神。

有效的沟通

很多时候,Scrum Master是利益相关者(老板,产品负责人)和开发团队之间的桥梁。很容易让人觉得Scrum Master正试图在裂缝中生存,并且很容易不打扰。因此,传播艺术的重要性是不言而喻的。如何说服产品负责人,让老板满意,让开发团队满意,这是获得这种技能的学习过程。

有效的Scrum团队沟通

有效的Scrum团队沟通

为此,可以使用以下几点作为参考:

  • 与老板沟通:

应定期及时通知项目的现状和进展。不要等老板亲自要求它。它可以通过表格通过电子邮件发送。主要报告进度状态,避免过于详细的内容; 如果遇到问题,应及时报告,以便问题在出现时能够得到认真对待,并及时得到解决。如果你等到发布坏消息的截止日期,那么就让你的老板有机会对你的团队进行微观管理。

  • 与团队协调:

最重要的是以身作则,正确的态度; 充分了解团队每个成员防止工作量盲目承诺的能力; 通过每日Scrum会议,团队中的每个人都可以清楚地了解最新的进展和情况; 如果你遇到关注这个问题的问题,而不是个人。

检查质量

质量决定了产品的命运。那么如何检查质量。在敏捷实践中,以下经验可供参考:

  1. 我们不应过分强调速度,而应注重合理的发展速度。这将确保产品质量的质量。Scrum流程应该在每个sprint中稳定完成,使团队养成习惯并最终实现良好的开发节奏。
  2. 开发编码风格并坚持代码审查。代码的规范非常重要,良好的代码可以提高整个团队开发和沟通的效率。好的代码会说 – 代码审查可以成对完成,只有在审核通过后才能提交代码。您可以通过创建拉取请求来查看代码,然后将其合并到代码库中。
  3. 编写单元测试 – 单元测试的重要性我认为每个人都理解,但很多人觉得它很痛苦,很麻烦,占用了开发时间。通过单元测试,您的代码是可测试的代码。
  4. 自动化测试。不用说,它的好处是谁使用谁知道。
  5. 早期集成以获得频繁的反馈 – 这样做的好处是我们可以及时获得用户的反馈,然后可以及早纠正错误。
  6. 最后,我想强调一句话:不加班,不加班,不加班。

Scrum质量检查

Scrum质量检查

跟踪进度

进度管理是另一项项目经理的职责,也是Scrum Master的要求。我们有很多用于监控scrum进度的工具,它非常有效,例如,燃尽图,任务管理器,excel待办事项列表,scrum板等等。但是,大多数这些工具是针对不同供应商单独提供的。这是最强大的scrum解决方案之一,可让您管理整个Scrum项目 – 在一个画布中,称为Scrum Process Canvas:
Canvas:

Scrum Process Canvas

Scrum Process Canvas

Visual Paradigm的Scrum Process Canvas允许您的团队在一个设计精美的scrum流程画布中无缝地导航整个Scrum流程。快速,轻松,无缝地执行Scrum活动。让整个团队充分参与。我们的敏捷软件使敏捷项目变得简单而有效。

团队建设

团队建设是项目开发中绝对不可或缺的一部分。团队凝聚力直接影响整个团队的战斗力。因此,建立一支优秀的团队是每位Scrum Master的重要使命。

Scrum团队建设

Scrum团队建设

那么如何有效地建立团队呢?

  1. 敏捷开发的一个重要特征是团队的自组织。团队自组织的优势在于,通过分散团队,让他们独立思考,设计和开发,而不是干预,以便团队中的每个人都有成就感,从而提高整个团队的积极主动性。
  2. 创建一个学习团队。一种方法是通过在团队内定期分享知识来分享团队内部的知识,以便每个人都可以学习新知识并逐步发展团队。
    例如,每周五下午4点,您可以用一小时的时间向团队成员进行知识讲座。这样,每个人的热情都会变得非常高涨。只要您感兴趣,可以同意分享的内容不一定是技术性的,也可以是娱乐性的。这种方法的优点在于它不仅提高了团队的技术能力,而且使团队更容易相互沟通,从而提高团队的凝聚力和战斗力。
  3. 最后,改善团队的最有效方法之一是用一句话:“吃”这是赢得美食家的好时机。当然,这需要资金,但总会有方法,你知道?