从翻硬币游戏看敏捷开发
摘要: 敏捷开发还能这么玩?
本文分享自华为云社区《从翻硬币游戏看敏捷开发》,作者:敏捷的小智。
为了推广敏捷开发的理念,很多敏捷教练都会带领团队做一些敏捷小游戏,今天咱们就来聊聊“翻硬币游戏”。
翻硬币游戏怎么玩
首先分成N个小组,每组6-10人。同时为每组准备20枚硬币。选定计时员为每组进行计时。
计时的内容分别是:
1、 第一个人翻完全部硬币的时间
2、 最后一个人接到第一枚硬币的时间
3、 最后一个人翻完全部硬币的时间
这个游戏将会做3轮,每轮每人都只能用左手翻硬币,而且一次只能翻一枚硬币。
第一轮:
一个人翻完全部硬币后,才能把硬币传递给下一个人。
第二轮:
一个人翻完5枚硬币后,才能把硬币传递给下一个人。
第三轮:
一个人翻完1枚硬币后,就能把硬币传递给下一个人。
游戏结果及意义
游戏结束以后我们就得到了每组翻硬币游戏所用时间的数据。
可以看出,无论我们采用何种方式翻硬币,第一个人翻完全部硬币的时间(Time1)始终都很接近。
随着翻硬币方式改变,变化差异巨大的时间,是Time2和Time3,即“最后一个人接到第一枚硬币的时间”与“最后一个人翻完全部硬币的时间”。这两个时间在我们的软件开发过程当中,相当于是我们给客户初次交付产品的时间及最终交付产品的时间。
在敏捷、Scrum当中,我们提倡迭代、小步快跑,目的就是为了尽早让产品交付到客户手中。通过一个简单的翻硬币游戏我们也可以看出,当我们将所有需求特性全部完成后再进行交付,所用的时间要比迭代的方式漫长得多。
在游戏当中,我们先做一个假定,那就是提出的需求不会被误解、交付的功能都会通过验收。在这种情况下:
我们可以将第一个翻硬币的人视作产品经理提出需求,第二个人视作开发人员进行开发,第三个人视作测试人员进行测试……最终交付产品到客户手中。
在这种十分完美的情况下,我们已经感受到了“迭代、小快跑”带给我们的福利,更遑论在实际开发过程中,需求经常会被误解、开发的功能总会出现bug甚至返工的情况。如果我们把整个产品全部做完再给客户交付,岂不是到时候差距会更大?可能又要有人说:我们的需求都是按照需求说明书来的……不行就按合同办吧…….等等,对此,笔者想重提一下敏捷宣言中的一句话:客户合作胜于合同谈判。
那么最后,今天交给大家的敏捷小游戏“翻硬币游戏”,大家学会了么?

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
电子表格实战锦囊:巧用稀疏数组是关键!
前文中我们详细介绍过稀疏数组的那些事儿,以及在实际项目中,稀疏数组如何在前端电子表格中发挥出它最大的效果。而这次,我们将从实战应用出发,为大家介绍稀疏数组在前端中的具体应用。 我们都知道在Javascript中是通过Array()构造函数构件稀疏矩阵,或者通过数组,设定数组的索引长度大于当前数组长度的方式来创建稀疏矩阵。 var arr = new Array(100) //arr没有元素,但arr.length是100 var a = []; //创建一个空数组,length为0 a[50] = 50; //赋值添加一个元素,length为 51 稀疏数组中,没有元素的结点为empty,获取这些结点将返回结果undefined。通过使用index in array可以判断一个结点是否有元素。例如下面代码中,a[0]和a[1]的返回都为undefined,但是a[1]其实为空。 JS中已经支持稀疏数组的存储,但在实际情况中,我们保存稀疏数组的保存并不是直接进行,而是会根据实际情况构建其他存储方式保存稀疏数组。想了解为什么要多此一举,这里就需要大家了解一个概念——数据持久化。 我们在前端...
- 下一篇
AI实战分享 | 基于CANN的辅助驾驶应用案例
摘要:什么是辅助驾驶?简而言之,就是借助汽车对周围环境的自动感知和分析,让驾驶员预先察觉可能发生的危险,有效增加汽车驾驶的舒适性和安全性。 导读:基于昇腾AI异构计算架构CANN的辅助驾驶AI应用实战开发案例,不仅可以实时检测路面车辆,还能计算出车距,辅助驾驶员进行决策。此项目源码全部开源,传送门已开启,小伙伴们快来体验吧! 引言 科幻片中光怪陆离的飞行器,寄托着人类对未来出行的无限遐想。随着科技的进步,能够自动驾驶的汽车,已经离我们越来越近。 自动驾驶带给人类的惊喜不止是酷炫的自动超车变道,还有它在缓解交通阻塞、减少空气污染、提高道路安全性方面的种种可能性。因此也引得无数汽车企业、科技企业竞相加入这条行业赛道,力求不断突破。 然而,自动驾驶并不是一蹴而就的,由于技术瓶颈和相关法律法规的限制并未真正意义落地,当下的智能汽车正处于半自动驾驶(辅助驾驶)阶段。 什么是辅助驾驶?简而言之,就是借助汽车对周围环境的自动感知和分析,让驾驶员预先察觉可能发生的危险,有效增加汽车驾驶的舒适性和安全性。 当然,辅助驾驶系统也是非常复杂的,为实现汽车在多种复杂场景下的通用性,以及技术层面的多样性,离不开...
相关文章
文章评论
共有0条评论来说两句吧...