问题

如何有效的在一个研发团队中推行Scrum?

回答
破局与共生:让 Scrum 在你的研发团队扎根开花

作为一个研发管理者,你可能正面临着这样的挑战:项目进展缓慢,沟通效率低下,团队成员士气不高,或者客户的需求总是在不断变更,让开发过程疲于奔命。你听说过 Scrum,它似乎能解决这些痛点,但如何才能让这个“敏捷”的方法在你的团队里真正落地生根,而不是流于表面,甚至成为新的负担?

推行 Scrum,本质上是一场关于文化、流程和协作的深刻变革。它不仅仅是引入几个会议和一些术语,更重要的是要让团队成员理解并拥抱其核心理念。这需要耐心、策略,以及对人性的洞察。下面,我将分享一些经过实践检验的、更为接地气的推行 Scrum 的方法,希望能帮助你带领团队走出困境,走向高效。

第一步:理解 Scrum,但更要理解你的团队(前期准备)

在你高喊“我们要用 Scrum 了!”之前,请先做一些“侦察”工作。

摸清家底:团队的“痛点”是什么?
问问你的团队成员,他们觉得目前项目开发中最让你头疼的是什么?是需求不明确?还是开发出来的东西总是达不到客户期望?是彼此之间沟通不畅?还是大家都在做重复性的工作,感觉看不到价值?
观察团队的日常协作方式,他们的工作流程是怎样的?有没有一些隐藏的瓶颈?
了解团队成员的经验和技术栈,他们的学习能力和对新事物的接受程度如何?
了解团队的“土壤”——公司的文化是怎样的?是否支持试错和持续改进?管理层是否愿意给予一定的自主权?

为什么是 Scrum?找到切入点
Scrum 不是万能药,但它擅长处理复杂性、不确定性和快速变化的需求。如果你的团队正是被这些问题困扰,那么 Scrum 就是一个值得尝试的解决方案。
不要为了“敏捷”而敏捷,要明确推行 Scrum 希望解决的具体问题。是提升交付速度?提高产品质量?增强团队协作?还是让客户更满意?清晰的目标会让你在推行过程中更有方向。

准备好你的“工具箱”,但不要过度依赖
Scrum 的核心是三个角色(产品负责人、Scrum 主持人、开发团队)、五个事件(Sprint 计划会议、每日站会、Sprint评审会议、Sprint回顾会议)和三个工件(产品待办列表、Sprint 待办列表、增量)。了解这些是基础。
你可以考虑使用一些敏捷项目管理工具(如 Jira, Trello, Asana 等),它们能帮助可视化工作流程,但请记住,工具只是辅助,真正重要的是流程本身和团队的理解。

第二步:循序渐进,小步快跑(试点与迭代)

不要试图一步到位地将 Scrum 的所有方面强加给团队,这很可能适得其反。

选择一个合适的“试验田”
项目选择: 选择一个相对独立的、复杂度适中的项目作为试点。最好是新项目,这样可以避免对现有流程的巨大冲击。如果必须在现有项目中试点,则要与相关方(如客户、其他团队)做好沟通,争取理解和支持。
团队选择: 如果你管理的团队较大,可以先选择一个更愿意尝试新事物、对变革持开放态度的子团队进行试点。

引入 Scrum 的核心实践,并逐步完善
产品待办列表 (Product Backlog): 和产品负责人一起,开始梳理和管理产品待办列表。强调“用户故事”的写法,让需求更加以用户为中心。重要的是要让团队理解列表的价值在于“价值排序”,而不是简单的任务罗列。
Sprint 规划会议 (Sprint Planning): 这是一个关键的会议。
产品负责人要清晰地介绍“本 Sprint 要做什么”以及“为什么要做”。 “什么”是用户故事,“为什么”是业务价值。
开发团队要通过讨论,理解需求,并估计工作量。 强调团队的自我组织能力,让他们自己决定如何完成工作,而不是被分配任务。
目标是产出一个可交付的、有价值的“增量”。
每日站会 (Daily Scrum): 每天固定的时间,团队成员简要同步:昨天做了什么?今天计划做什么?遇到了什么阻碍?
记住,这是“站”会,不是“站”着开会。 强调的是高效的信息同步和问题暴露,而不是冗长的汇报。
重点是“阻碍”,而不是“我完成了多少”。 Scrum 主持人要积极帮助团队解决遇到的问题。
Sprint 评审会议 (Sprint Review): 在 Sprint 结束时,团队向利益相关者(客户、经理、其他团队等)演示他们在这个 Sprint 中完成的“可工作的软件”。
这不是一个简单的演示,而是一个反馈收集的机会。 鼓励利益相关者提问,给出建议,甚至修改需求。
目标是获得关于产品进展的反馈,以便调整产品待办列表。
Sprint 回顾会议 (Sprint Retrospective): 这是 Scrum 的灵魂所在。
团队聚在一起,反思在过去一个 Sprint 中,哪些做得好?哪些可以改进?
关键是创造一个安全的环境,让大家敢于说真话,敢于暴露问题。 不要指责,而是聚焦于流程和协作的改进。
目标是识别出至少一到两个具体的改进项,并在下一个 Sprint 中尝试落地。

角色定位的清晰与支持
产品负责人 (Product Owner): 确保团队清楚谁是产品方向的决策者,以及产品待办列表的优先级。产品负责人需要有足够的权力和时间来履行职责。
Scrum 主持人 (Scrum Master): 你的角色至关重要。你不是项目经理,不是技术领导者,而是一个“服务型领导者”,是团队的保护者、教练和流程引导者。
你需要保护团队免受外部干扰。
你需要引导团队学习和实践 Scrum 原则。
你需要帮助团队识别和解决阻碍。
你需要教练团队进行持续改进。
开发团队 (Development Team): 强调他们的“自组织”和“跨职能”属性。他们共同对完成 Sprint 目标负责,而不是个人对任务负责。

第三步:持续的教练、反馈与调整(优化与推广)

Scrum 的生命在于持续改进,推行 Scrum 也一样。

成为团队的“Scrum 教练”
耐心与观察: 不要指望团队成员能立即完全理解 Scrum 的所有细微之处。你需要不断观察,及时发现他们遇到的困惑,并通过一对一沟通、团队讨论等方式进行解释和指导。
提供支持,而非命令: 当团队遇到阻碍时,你要积极帮助他们解决,但不是直接给出解决方案,而是引导他们自己找到解决方案,培养他们的独立解决问题的能力。
鼓励学习: 推荐相关的书籍、文章、视频,组织内部的学习分享会,让团队成员能够主动学习和成长。

重视反馈,不断调整
Sprint 回顾会议是关键: 确保回顾会议是有效的,并且团队能从中识别出可执行的改进项。
定期检查 Scrum 的实践: 是否每天的站会都高效?评审会议的反馈是否被有效利用?产品待办列表是否清晰可见并有优先级?
关注团队的感受: 通过非正式的交流,了解团队成员对 Scrum 的看法。他们是否感到压力过大?是否觉得某些流程是多余的?及时收集反馈并进行调整。

逐步扩大范围,形成正向循环
一旦试点项目取得成效,就开始与更多的团队分享经验。
建立内部知识共享平台: 让成功的团队分享他们的实践经验和遇到的挑战,帮助其他团队少走弯路。
寻求管理层的持续支持: Scrum 的推行需要管理层的理解和支持,例如对团队自主性的授权,对试错文化的容忍。

第四步:警惕陷阱,保持敏捷的心态

推行 Scrum 的过程中,很容易会陷入一些误区,需要时刻警惕。

不要“Scrumbut”: “我们用 Scrum,但是...”——这种“但是”往往是阻碍真正敏捷化的原因。要坚守 Scrum 的核心原则,如果觉得某些地方需要调整,也要基于对原则的理解进行有意识的调整,而不是随意删除。
避免“形式主义”: 不要为了开会而开会,为了写文档而写文档。每个事件、每个工件都应该有其存在的价值和目的。
别忘了“人”的因素: Scrum 的核心是人与协作。要关注团队成员的成长、士气和幸福感。一个疲惫、不快乐的团队,是无法实现敏捷的。
应对外部压力: 在推行 Scrum 的过程中,可能会遇到来自客户、管理层或其他部门的不理解或阻力。要做好沟通,解释 Scrum 的价值,争取他们的支持。

总结一下,在一个研发团队中有效的推行 Scrum,是一个持续优化、关注人的过程。它需要:

1. 深入理解团队与项目,找到切入点。
2. 选择合适的试点,循序渐进引入核心实践。
3. 明确角色职责,特别是 Scrum 主持人的教练和支持作用。
4. 重视 Sprint 回顾,驱动持续改进。
5. 成为团队的教练,提供持续的指导和支持。
6. 警惕形式主义和误区,保持敏捷的心态。
7. 逐步扩大推广,让敏捷成为团队的文化。

这并非易事,它需要你付出大量的精力、耐心和智慧。但当你的团队能够高效协作,能够快速响应变化,能够持续交付有价值的产品时,你所做的这一切都会是值得的。祝你成功!

网友意见

user avatar

题主你好~
要了解Scrum以及如何实施,首先要从敏捷开发入手。「敏捷」是指一种应对快速变化的需求的软件开发模式,核心是快速迭代,包括Scrum、Kanban、Lean、XP等等一系列的方法。在Scrum Alliance发表的《2018 Scrum行业调查报告》中可以详细了解到,94%的受访者在敏捷实践中采用Scrum,可见Scrum是实践敏捷的主流方式。那么Scrum到底是什么?
Scrum是什么?
Scrum是基于敏捷开发思想的开发框架,用于迭代式增量软件开发过程。 它适用于需求变化频繁、内外部环境变化快、需要快速交付和验证的场景。

实际上,Scrum这个英文字母来源于橄榄球运动的一个专业术语,表示“争球”的动作。在橄榄球比赛的每次冲刺前,都将有一个计划安排的过程,但冲刺开始后则由队员在原计划的基础上随机应变。可以想象,当开发团队在用Scrum这种开发方法开发项目时,大家像打橄榄球一样迅速、富有战斗激情、且灵活而高效地完成工作,因此受到非常多开发部门的推崇。
那么,灵活高效的Scrum是怎样的流程呢?
Scrum开发流程和「343」原则


Scrum流程可以分为以下阶段:
① 由PO(产品负责人)负责,确定一个Product Backlog(产品需求池);
② Scrum Team(敏捷团队)根据Product Backlog,做工作量的预估和安排;
③ 有了Product Backlog,我们需要通过Sprint Planning Meeting(迭代计划会议)来从中挑选一些Product Backlog加入Sprint(迭代),形成Sprint Backlog(迭代需求池)。这个目标的时间周期是1~4个星期;
④ Sprint Backlog是由Scrum Team去完成的,每个成员根据Sprint Backlog再细化成更小的任务(细到每个任务的工作量在2天内能完成);
⑤ 在Scrum Team完成计划会议上选出的Sprint Backlog过程中,需要进行Daily Scrum Meeting(每日站立会议),每次会议控制在15分钟内。Daily Scrum Meeting根据看板的内容,每个人进行发言,并且向所有成员当面汇报昨天完成了什么、今天要完成什么,如果遇到不能解决的问题也可以提出。每个人回答完成后,都要更新Burn Down Chart(燃尽图);
⑥ 当Sprint Backlog已完成,也就表示一次Sprint完成。这时,我们要进行Srpint Review Meeting(迭代评审会议),PO和客户都要参加。每一个Scrum Team的成员都要向他们演示自己完成的软件产品(这个会议非常重要,一定不能取消);
⑦ 最后就是Sprint Retrospective Meeting(迭代回顾会议),该会议以轮流发言方式进行,每个人都要发言,总结并讨论改进的地方,放入下一轮Sprint的产品需求中。
在Scrum开发流程当中,应当严格遵循“343”原则,即Scrum框架中的3个产出物、4个仪式、3种角色。

3个产出物

  • Product Backlog(产品需求池):是产品待办事项的集合。其中,事务有优先级判断,先处理优先级高的事项。
  • Sprint Backlog(迭代需求池):在迭代计划会议期间,团队选择一些产品待办事项,并且确认完成每个用户故事所需完成的任务。
  • Burn Down Chart(燃尽图):燃尽图是在项目完成之前,对需要完成的工作的一种可视化表示。燃尽图有一个Y轴(工作)和X轴(时间)。理想情况下,该图表是一个向下的曲线,随着剩余工作的完成,“烧尽”至零。


4个仪式

  • Sprint Planning Meeting(迭代计划会议):迭代计划会议在每个迭代周期开始之前召开,目的是为了制定当前迭代周期的开发目标以及需要完成的工作。
  • Daily Scrum Meeting(每日站立会议):日常站立会议是每天早上举行的短期会议,用时一般严格控制在十五分钟内,会议的目的是更新团队的状态。站立会欢迎所有人参加,但只有团队成员(开发、测试、产品经理等核心角色)可以发言。
  • Srpint Review Meeting(迭代评审会议):Sprint评审会议在Sprint结束时举行,用以检视所交付的产品增量并按需调整产品待办事项列表。评审会议的会议时长限时为 4 小时。
  • Sprint Retrospective Meeting(迭代回顾会议):在每个Sprint结束后,Scrum团队会聚在一起开Sprint回顾会议,目的是回顾一下团队在流程、人际关系以及工具使用方面哪些做得好,哪些做得不好,并找出潜在的改进事项,为将来的改进制定计划。


3种角色

  • PO(产品负责人):PO 在敏捷Scrum开发的过程中起着至关重要的作用。PO 代表客户的意愿,从业务角度上保证Scrum团队做正确的事;同时代表项目的全体利益干系人,负责Product Backlog,排出优先级,编写条目化的需求(也叫“Story”,指用户故事),从而使项目价值最大化的人。
  • Scrum Master(Scrum教练):Scrum教练的主要工作是去除那些影响团队交付冲刺目标的障碍,并负责屏蔽外界对开发团队的干扰。Scrum教练是规则的执行者,确保Scrum过程按照Scrum流程来执行。
  • Scrum Team(团队成员):Scrum团队负责交付产品的团队。


其他名词解析

  • Sprint(迭代):原义是短距离赛跑的意思,这里指的是一次迭代。一次迭代的周期一般是1-4周,也就是我们要把一次迭代的开发内容以最快的速度完成它,这个过程我们称它为Sprint。
  • Kanban(看板):是指敏捷看板。“看板”一词出自日语“看板”(读音かんばん,kanban),源于日本丰田生产的精益生产实践,敏捷开发将其背后的可视化管理理念借鉴过来。看板可以把研发的过程进行管理,记录下用户故事研发过程中的细节和历程。

为什么要用Scrum?
敏捷大师和Scrum发明人 Jeff Sutherland:Scrum是一门让研发管理事半功倍的艺术。
① Scrum能够快速响应变化,以轻量级的Story(用户故事)作为需求进行迭代式开发,保证最重要的事情优先做,更高效产出交付物。
② 可以持续向用户交付有价值的软件产品,以及短的软件交付周期:这是现在的互联网开发的基本要求,就是不停的通过每次迭代和升级,进行产品的优化和提升。
③ Scrum过程要求大家做更多例行的沟通,包括每日演示、设计讨论、提出问题和找到帮助者、定期总结,团队所有成员都可以完全了解当前的项目进展和问题,从而促进大家的沟通、快速的解决问题。
④ Scrum开发可以让产品快速试错,试错成本低;以较低的成本,和高效的模式进行产品的迭代,回报率也高。
如何利用工具帮助Scrum落地?
Scrum流程如何落地?ONES研发管理工具能提供什么帮助?
1. 团队管理
ONES通过「项目角色」对参与项目的成员进行分组和权限管理

在敏捷项目中,系统管理员可建立PO、Scrum Master、Scrum Team三种角色,应用到实际项目团队中,配置不同角色不同的管理和查看项目、工作项类型等权限。项目成员亦可拥有多个角色,便于跨职能协同与管理。
2. Product backlog
在ONES中,可使用「需求」这一任务类型及其组件来管理Product Backlog。

  • 产品负责人在需求池中录入需求单、设置优先级。可以通过自定义需求状态、补充各类属性字段,编写完整描述,上传相关产品文档、高保真原型等方式,形成完整的故事结构,便于进行评审及后续研发过程的流转。
  • 根据实际场景,自定义需求工作流,实现从提出反馈、转化为用户故事、安排迭代到功能上线的全生命周期历程。
  • 功能复杂的故事,可以利用「子工作项」进行细化和拆解,拆分为颗粒度较小的需求。
  • 需求也可与用户反馈、研发任务、测试结果等工作项相关联,便于其它成员查找引用、追溯来源。

3. 迭代规划与评审
ONES通过「迭代」组件对开发过程进行管理,项目团队可通过这一组件创建和规划迭代。

  • 产品负责人先将需求按确定的优先级顺序,从Product Backlog规划至对应迭代。产品负责人可创建新的迭代,并设置迭代周期和迭代阶段,可自定义多种属性字段,丰富迭代信息。
  • 在Sprint Planning Meeting上,产品负责人按优先级一一讲解用户故事、补充故事描述或调整优先级,和团队一起估算故事规模。如果需求评审不通过,可以规划至后续的迭代或移回需求池。
  • 确定好当前迭代要完成哪些需求之后,即可对其分解、登记预估工时,拆分成各类子任务和关联任务,指派给相关团队成员。

4. 跟踪迭代进度
ONES系统提供燃尽图、敏捷看板、仪表盘、甘特图等工具技术,直观反映各成员工作状况、当前迭代进度的健康程度。

每日站立会议可通过ONES敏捷看板轻松实践。敏捷看板可基于实际工作场景,把各项工作项状态放进不同泳道。成员在每日站会上可以直观的查看不同任务的进度,并支持直接在敏捷看板上拖动任务来更新状态。ONES也支持显示普通任务看板,以任务卡片和状态分布的形式跟踪项目进度。

  • 燃尽图是敏捷项目追踪的有效工具,是迭代完成之前,对剩余工作量的可视化表示。每个成员回答完成后,都要更新燃尽图,预测预计结束时间、判断迭代能否如期完成。
  • 迭代基础统计与燃尽图可被添加至仪表盘中快速浏览。也能通过甘特图快速获取多个迭代的进度、通过工时消耗情况了解整体项目情况。

5. 迭代回顾
每个迭代结束后,Scrum 团队会一起开迭代回顾会议,把整个开发阶段流程拎出来进行分析,回顾一下团队在流程、人际关系以及在工具方面上使用得如何,总结哪些事情做得好、找出潜在的改进事项,为将来改进制定计划。

  • ONES系统中可根据研发场景需要,生成相应的质量报告。使用报表统计迭代范围内的缺陷分布,任务滞留时间等。
  • 迭代分析、总结结果可以用ONES Wiki进行记录,将相应的经验以文档的方式沉淀下来,精准至附件级别的全局搜索,便于团队快速定位、获取有用的信息。

以上就是Scrum实践的完整流程。希望能对你有所帮助~
也推荐题主可以试一试ONES研发管理工具,让工作更加高效。

类似的话题

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有