11.什么是发布计划?
一般来说Scrum都是有节奏的进行发布。
那么为什么还需要发布计划?
因为Scrum是为了“敏捷”的应对,所以每次Demo或者Plan Meeting需求可能会有增加、修改、取消,那么你的发布计划也需要随之更新。
发布计划的目的是:为特定功能和整个项目何时能够完成提供答案。
- 沟通和交流,并且要频繁
- 每个Sprint后都更新发布计划
- 努力做优先级最高的条目
- 更新对大条目的估计
- 每个Sprint都交付可工作的软件
12.何时进行故事分解?
我有时候会被问及,这个故事足够小了吧,是否还需要拆得更小?要拆到多小才合适?
要知道任何事情都有一个度,不能过度拆分,这样会造成不必要的浪费。
搞清楚一个故事或任务太大还是太小,可以下面的问题帮助确定分解的级别:
- 团队能够用故事点来评估产品列表吗?
- 产品列表中的故事是否清楚定义了?
- 故事是否精确?
- 我是否对这个故事有足够的了解?
13.Scrum的缺陷管理方式是怎样的?
首先和其他框架一样,我们需要为缺陷区别等级:
- P0灾难:主功能无法使用且没有可行的变通方案
- P1高:主功能不可用,但有变通方案
- P2中:系统的使用性受损
- P3低:影响较小,无关紧要或不便利,可以等到下次产品发布时解决
如果是P0或者P1级别,那发现者及其搭档有一个小时来完成以下任务:
- 停止手上当前任务
- 确定该缺陷的根本原因
- 修复
- 更新所有测试
- 生成或重新构建验证测试
- 保证所有测试都能通过
- 提交代码
- 向前逼近一步,至少到集成环境中验验证
如果能一个小时完成则无需记录,如果不能完成:
- 在一个小时结束时停止
- 在缺陷管理系统中记录
- 继续修复
- 完成并关闭缺陷
- 更新Sprint列表及小时数
14.如何处理遗留系统的维护工作?
很多时候,我们在进行新功能开发的同时,还需要兼顾遗留系统的维护工作。
这一部分如果不妥善安排,不仅会打乱团队的Sprint节奏,还会影响整体计划。
有两种方案可以解决这个问题:
专用时间
从现在进行的Sprint中划出专用时间来处理遗留或现有系统维护。
比如每个Sprint20个小时。专职团队
划分出专职人员进行维护工作,而且这个团队的Sprint要相对的使用更短的周期。
15.为何要组织demo会?
在每个Sprint的最后一天,Scrum Master需要组织Demo会议。
其目的是:让团队给客户和项目干系人演示他们在这个Sprint中完成的任务。
在这个过程中,最重要的不是演示是否顺利,而是客户和干系人的意见反馈,这样才能敏捷的调整。
16.为何要组织回顾会?
我不止一次的听人抱怨,回顾会就是浪费时间的检讨大会。
但是我们需要正视回顾会的重要性。
回顾会是团队检视调整周期中的关键部分。
团队趁此机会学习如何提高,如何更有效工作,如何以更高的速率与优良的品质交付价值。
这个环节必不可少,如果你的Sprint是一周,那么可以抽15~30分钟回顾一下,但是不可自行取消。
并且在结束会议前可以尝试用1-5分来评估“你觉得这个Sprint如何?”
17.为何要组织每日站会?
同样的一个问题,很多人说每日站会太浪费时间,而且站着开很累。
每日站会的目的就是要同步团队状态,并暴露任何可能影响工作的障碍。
站着不要坐着,这样能使团队更专心,更专注,更有效率。
毕竟可以有效的缩短会议时间,时间一长大家都站不住了。
18.每日站会上的第四个问题是什么?
我们都知道每日站会上需要问三个问题:
我昨天做了什么?
我今天要做什么?
我有什么障碍?
其实还有第四个问题是:
对于团队完成Sprint目标,如果以1~10来度量,你的信心有多少?
第四个问题可以避免团队成员在不愿意面对冲突的情况下表达自己的意见。
19.结对编程有哪些玩法?
结对编程能够在相对较短的时间内产生高质量的软件。
一般的情况是一个人“驾驶”,一个人“导航”。
这样其实可以做及时的Code Review。
但是一般来说“驾驶”的人会更专注,“导航”不自觉得就会走神了。
所以我们可以尝试以下两种玩法:
- 无序结对编程
大家交换结对
-
微结对
图片发自简书App
图片发自简书App
20.如何让新人快速融入团队?
第一步,选对人。
这点非常重要。
这也是为什么一般来说我面试的时候会问:你平时有什么业余活动?
如果团队本身的成员都比较open,而比较闷的人可能会比较难融入。
更复杂的情况是,对Scrum的排斥,会让新人更难融入。
第二步,帮助新成员学习而制定测试。
比如定期让新成员回答以下问题:
- 描述系统架构
- 为何结对和TDD很重要?
- 谁拥有代码所有权?
小婧是一名行走在产品路上的资深业务分析师(BA),如果