敏捷开发:如何高效开每日站会(Daily Stand-up Meeting)
介绍
在敏捷开发框架 Scrum 中,每日站会(Daily Stand-up Meeting,又叫 Daily Scrum)是 Sprint 迭代开发中,一个很重要的流程,一个重要的例会。在有限的时间内,大家一起沟通,成员之间相互通报各自完成任务进展的情况、遇到了哪些困难,并寻求帮助以解决遇到的问题。
它是为了提高沟通、协作效率,同步工作进度的一个工具。

为什么要站着开会?
是为了在简短的会议中,大家集中注意力开会沟通,尽快解决问题,尽早结束会议。
每日站会的目的
从上面的介绍中,就可以窥见一二,每日站会的目的。
检视开发任务进度
在一个 Sprint 开发周期中,任务的分配、任务的完成进度时间都已经计划好了。
那怎么知道每日开发进度?怎么监督任务进度情况呢?
每日站会就可以每天同步任务完成的进度情况。
还可以了解彼此的任务进度,便于相互配合,大家也了解项目的整体状况。
比如开发人员已经开发完了哪些功能,测试人员就可以及时安排测试。
尽早暴漏问题和解决问题
尽早暴漏开发过程中遇到的问题,然后大家一起帮助解决问题,让项目能顺利向前推进。
比如技术问题、需求变更、资源不足等各种问题,团队成员可以在站会上共同讨论解决方案,避免问题积累和拖延。
协调团队工作
通过了解彼此的工作进度,团队成员可以更好的协调工作顺序和依赖关系。
比如前后端的接口开发,前端开发和后端开发可以根据对方的进度完成情况,安排自己的接口对接开发工作。
也可以审视目前任务分配情况,重新分配任务。审视开发时间估算情况。
比如 Tom 开发任务完成情况提前,而 Jimmy 的任务预估开发时没有考虑一些特殊情况,导致开发任务进度落后,那么 Jimmy 的其它开发任务可以交给 Tom 来开发并更新自己的任务估算时间。
最终目的:尽快完成开发任务,交付 Sprint。
每日站会经典三问
每日站会经典三问:

1、我昨天完成了什么任务?
汇报昨天完成的工作内容,任务进展情况。
2、我今天计划完成什么任务?
说明今天的工作目标和任务。
3、目前是否遇到了困难、问题?
在开发过程中,我是否遇到了困难和问题。
这其实是团队成员之间做出完成任务进度的承诺。
注意点:
只说关键点和任务,不去讨论细节。如果需要深入讨论某个问题,会后再去单独讨论,不要在站会上讨论细节,浪费过多的时间。
不要让每日站会,变成了向产品负责人或 Scrum Master 汇报工作的会议。
参会人员、时长、开会步骤
参会人员:
包括开发的相关人员,产品负责人,Scrum负责人等,还可以有与本次会议相关的外部人员。外部人员可以聆听,但一般不允许发言,避免会议时长过长。
会议时长:
开会的时间一般是在安排在早上,比如早上 10 点钟。
整个会议时长控制在 15 分钟内,保持会议简洁高效。
会议主持人:
一般是产品负责人或 Scrum Master。如果想让会议开得更加高效有意义,可以让团队人员轮流担任会议主持人,这样团队成员的参与感更强,也锻炼团队成员的沟通协调能力。
会议的纪律:
会议主持人需要维护会议的纪律,比如成员发言时间过长、无关发言,不允许无故玩手机不听发言等等,都需要及时制止。
开会步骤:
1、集合人员:在固定的地点和时间集合参会人员,全体人员站立开发,保持会议的简短和高效。
2、轮流发言:按照一定的顺序发言。比如按照站立的顺序或任务流程顺序。每个发言人员回答上面的经典三问。
3、讨论遇到的问题:如果成员提出了问题,团队成员可以简短的讨论解决方案,注意控制讨论的深度和时间,避免会议过长。如果问题比较复杂,应该在站会后另行安排会议讨论。
4、总结(可选):如果需要总结的话,可以由Scrum Master或主持人进行简短总结,强调下重点问题或下一步行动等。会议主持人记录在会议过程中待解决的问题或困难,便于会后相关人员单独沟通。
开会工具
开会时,一般会用到白板或kanban,电子的或物理的。
大家都站在 kanban 面前开会,及时更新任务板进度情况。
常见问题分析
变成工作汇报会
每日站会是团队成员之间交流沟通,获取任务进度最新情况的会议,同步与他人有关的任务进程,适时做出任务调整。
如果只是按照三个问题简单的汇报工作和任务进度,而没有讨论和互动,那么就变成了工作汇报会。这会打击团队成员开会的积极性,也破坏了敏捷团队自组织文化建设,没有达到每日站会的 3 个目的。
会议超时
团队成员的发言过长,他深入讨论了某一个技术问题,这都是会议主持人需要关注并制止的行为。需要提醒团队成员站会只专注于任务更新和同步,详细技术讨论的问题可以会后再单独讨论。
不敢暴漏问题 - 团队氛围
暴漏了问题后,团队成员害怕领导或产品负责人怀疑自己的能力,或提出问题被委派新的任务。这就是一个团队氛围不好,让团队成员感觉没有安全感,感到了压抑感。
所以要营造开放友好的沟通环境。我们来开会是为了解决问题,不是来指责人能力的,要传达出这种信号。打造 “胜则举杯相庆,败则拼死相救” 的团队文化,有问题时大家想到的是一起来 “救” 你。
要让团队成员明白 “人在一起叫聚会,心在一起叫团队”。
流于形式
有的团队开会前以文字形式提交三个问题的报告,这就是一种例行公事,没有多大意义。它没有互动和讨论。
会议结束后没有问题的进一步讨论,也没有困难的进一步解决。
[完]
敏捷开发:如何高效开每日站会(Daily Stand-up Meeting)的更多相关文章
- 敏捷开发系列之旅 第二站(走近XP极限编程)
http://blog.csdn.net/happylee6688/article/details/21551065 上篇文章,我们探讨了什么是敏捷开发,以及敏捷开发的方法学.在这篇文章中,我们将继续 ...
- 《Python 测试开发技术栈—巴哥职场进化记》—每日站会的意义
上文<Python测试开发技术栈-巴哥职场进化记>-一道作业题我们讲到华哥给巴哥出了一道作业题,让巴哥用Python实现记录日志的功能,巴哥历经"千辛万苦",终于做出了 ...
- 高效程序员的45个习惯·敏捷开发修炼之道(Practices of an Agile Developer)读书笔记
首先,这本书值得再看一遍——这次的阅读,有很多东西都是知其“形”,不知其“神”的,这导致了我对其中某些建议持怀疑态度,接受了的建议也有待商榷. 总之,先记录本书的一些信息: Practices of ...
- 【转】敏捷开发 Scrum 总结
转:http://www.open-open.com/lib/view/open1330413325514.html 最近把之前学习 Scrum 的资料整理为一篇文档,在接下来的团队和项目开发中,根据 ...
- 敏捷开发-Scrum 真实
近期研究前 Scrum 数据编译的文件,在接下来的团队和项目开发.项目根据该引入 Scrum 一些练习,提高团队成员和项目之间的交付质量的合作. 参考资料: <轻松Scrum之旅-敏捷开发故事& ...
- Scrum 敏捷开发
使用敏捷开发一个月的事件,基本的开发模式跟我遇到的这个文章介绍的基本类似,暂时简单Copy到了这里...... http://www.scrumcn.com/agile/scrum-knowledge ...
- 【第二周】【作业五】Scrum 每日站会
1.首先来看一下什么是Scrum: Scrum是一种敏捷软件开发的方法学,用于迭代式增量软件开发过程.Scrum在英语是橄榄球运动中争球的意思. 虽然Scrum是为管理软件开发项目而开发的,它同样可以 ...
- 微服务与敏捷开发(Scrum/Kanban)的核心思想之我见
微服务与敏捷开发(Scrum/Kanban)的核心思想之我见 关于"微服务"和"敏捷开发"的文章网络上有很多,所以这里不再重复叙述这些概念的解释和特点,而是 ...
- 瀑布式开发、迭代开发、敏捷开发、XP与SCRUM的区别
瀑布式开发.迭代开发,区别[都属于,生命周期模型] 两者都是一种开发模式,就像设计模式一样,考虑的角度不一样,个人感觉谈不到取代一说. 传统的瀑布式开发,也就是从需求到 ...
- Agile Software Development ——敏捷开发
敏捷? 过去几年中,软件行业中出现了一个新词汇——agile:与此同时,一个关于新的软件开发方式的变革正悄然兴起. 在老师的引导下,我阅读了Agile Guide网站上的几篇文章,并查阅了相关资料.不 ...
随机推荐
- 新思路,基于Diffusion的初始化权重生成策略 | ECCV'24
良好的权重初始化可以有效降低深度神经网络(DNN)模型的训练成本.如何初始化参数的选择是一个具有挑战性的任务,可能需要手动调整,这可能既耗时又容易出错.为了解决这些限制,论文迈出了建立权重生成器以合成 ...
- 什么是 Nodejs
这集来聊什么是 Nodejs ,看看 Node.js 是为了解决什么样的痛点而生的,为啥说它是一个 JS 的运行环境,以及 npm 是什么,为何能引发了 Web 开发的革命. Node.js 的诞生 ...
- linux开启快捷键,牛逼的狠~
vim env_show #!/bin/bash echo '-----------A------------- XXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX ...
- 一文彻底弄懂JUC工具包的Semaphore
Semaphore 是 Java 并发包 (java.util.concurrent) 中的重要工具,主要用于控制多线程对共享资源的并发访问量.它可以设置"许可证"(permit) ...
- PC大屏自适应
通常来说PC端的页面并不像移动端页面那样对屏幕大小和分别率有那么强的依赖.一般的页面都是取屏幕中间的一块宽度(1280px), 两边留白, 高度随着内容的长度滚动.这样无论窗口怎么变化,页面都是可用的 ...
- K8s之运行时containerd安装和使用
一.containerd 1. 前生今世 很久以前,Docker 强势崛起,以"镜像"这个大招席卷全球,对其他容器技术进行致命的降维打击,使其毫无招架之力,就连 Google 也不 ...
- AT cf17 final J Tree MST
AT cf17 final J Tree MST 考场上想出的黑题,然而写挂了-- 思路 考场推出 boruvka 算法,会的直接跳过就好. 结论:一个点向另外一个点连出的最小边,一定在最小生成树上. ...
- 开源IDS/IPS Suricata的部署与使用
目录 前言 在Linux上部署Suricata Suricata的基本配置 配置文件 Suricata的规则 Suricata的使用 Suricata检测SQL注入 前言 Suricata 是一个高性 ...
- Think in Java之构造器的真正调用顺序
构造器是OOP的重要组成部分,很多人认为它很容易.只不过是new了一个对象而已.而think in java的作者却告诉我们,其实这并不容易.先看下面这个例子.在你没看结果之前,你觉得你的答案是对的么 ...
- python模块之sqlite3
在Python中操作sqlite3 1)基本使用 import sqlite3 conn = sqlite3.connect('example.db') cursor = conn.cursor() ...