提到敏捷开发,很多人都会想到每日站会,图中浮现出一幅画面,在每天固定的时间、固定的地点、固定的一群人围在一块大屏幕或白板前面,挨个发言,回答三个经典问题:
我昨天完成了什么任务?
我今天打算做什么任务?
我遇到了哪些障碍或困难?
每日站会(图片摘自网络)这个会议由ScrumMaster来掌控,提醒每个人发言时间控制在1分钟左右,防止大家跑题、走神,或进入更多的细节讨论,因此会议时间一般被限制在15分钟之内。
熟知敏捷实践的人,已经了解站会的流程及知道如何回答经典三问,而我们想讨论的问题是,我们在回答这三个问题之前,有没有思考过如何能更好的回答这三个问题?
下面结合个人之前的一些敏捷实践,谈谈我们对这三个问题的理解,希望能够抛砖引玉,引发大家的一些思考,提升我们的站会效率。
我昨天完成了什么任务?对于这个问题,其实很多团队成员都能侃侃而谈,我昨天做了什么什么,blabla讲了一大堆,貌似昨天的工作很饱满,开展了很多工作,但是如果细究下去,你昨天究竟“完成”了哪些工作(可能一项也没有)?而不是你做了哪些工作,我们要把重点放在完成的工作上,你对本轮迭代交付增量产品的贡献价值是什么?而不是你看都做了些什么,做的有可能都是无价值或者低价值、对团队没有贡献的工作。所以我们把重点聚焦在完成的价值增量上,而不是一堆低价值的其他事情。我们有理由相信,对于有责任心的团队成员,一定会去反思我每天应该“完成”的增量产品,而不是我做了哪些事情。
我今天打算做什么?结合上一句的分析,我们认为对于这句话更合适的表达是“我今天打算完成什么?”把工作的重心放到我们应该完成的有价值的工作上,而不是可以做的事情,要分清主次、优先级,确保当日的高优先级工作首先完成,当然我们不是说不去关注其他事情,或者说对于其他成员求助不予理睬,而是应该在确保自己当前的工作能够完成的情况,再去协助他人。尤其当日工作会对其他团队或者其他人的任务产生依赖的时候,不要因为自己的主次颠倒导致相关的工作延误。
对于最后一个问题,我遇到了哪些困难和障碍?相信在迭代初期的时候,大家都是一句话,没有什么困难,一切进展正常,但随着迭代的逐渐深入,各种问题就接踵而来:环境不可用、接口有依赖、集成出现问题、测试工具不给力等等各种情况都有可能出现。而我们想要表达的是,出现问题不可怕,可怕的是我们不知道解决问题的思路。通常情况下,我们会借鉴如下步骤:识别问题-定义问题-分析问题-方案设计-实施解决-检查反馈,相关细节我们不在此多讲。这里我们要关注的是在每日站会前,我们首先应该能够识别出问题,找到自己需要的求助对象,如果不知道求助谁,那么就可以在站会时借助团队帮我们找到求助对象或者提供初步的分析思路,接下来在站会之后,再有针对性的做下一步的讨论,而不应该在例会上占用大家的时间。
结合以上的初步分析,由ScrumMaster去引导团队适当的做一些改变,慢慢我们可以发现,站会的效率会得到进一步的提升,哪怕是进步一点点,也只值得庆祝的,敏捷本身就是要持续改进,有些事情不是能够一步到位的。我们要相信自己、相信团队,方法总比困难多,套用网友的一句话:骏马面前无沟壑,怂人面前全是坎!与大家共勉。
网友评论