介绍的这个游戏是自己根据目前带的团队的实际情况来制定的, 在游戏实践过程中,收到了较好的效果,故打算把这个游戏分享出来,一是分享一下实践,而是集思广益,不断完善,更好的利用游戏来锻炼队伍。下面就将游戏规则,游戏制定说明,游戏适用人数,以及实践情况一一分享。

游戏规则:

  1. 团队成员自己排好顺序,轮流进行TDD。TDD三个环节中,只进行测试编写和实现两个环节,故意不设置重构环节。每个人每次只进行一个环节。以此类推。如果团队人数为奇数,则每个人每次进行的环节都会和上一次进行的不一样。如果为偶数,则要重新排列一下,保证每个人每次进行的环节和上次不一样。
  2. 不管是编写测试,还是实现,时间要求尽量在5分钟内完成。 如果完成了,得5分。如果没有完成,扣掉2分。
  3. 如果编写的测试有错误,其他成员发现了,则测试扣2分,发现者加2分。
  4. 如果因为测试步子太大导致实现没有完成,则扣掉编写测试的人2分。
  5. 如果实现或者编写测试的人,对代码进行了重构,则加2分。

以上就是整个游戏的规则。

规则设置说明:

  1. 采用TDD轮流的方式,已经有较多的人实战过或者了解过,再次就不多说明了。
  2. 限定时间,一是为了限定步子不能太大了,二是模拟实际工作中,项目进度压力。
  3. 故意不要重构的环节是为了检验是否有人会主动重构,这在项目中很重要。同时辅以加分引导重构。
  4. 其他的加分和扣分都是为了朝正确的方向引导。
  5. 多人进行轮流TDD,是模拟实际工作中,代码集体所有。

游戏适宜人数:

自己认为3-4人较好,人多了,节奏会没有那么快。

简要的实践情况说明:

  1. 这个游戏由团队5人进行的,在最开始几轮,每个人都有被扣分。团队协作不好,没有明确的目标,走一步算一步。
  2. 在这个过程中,不断有人挖坑,因为时间的关系,只有一个人重构过一次。但势单力薄啊。
  3. 团队的利益,和个人的利益相比,还是个人利益优先啊。
  4. 在挖坑和被坑过程中,笑料不断。
  5. 传说中没法继续做下去的代码出现了。才几轮过后,就这样了, 超乎我的想象。
  6. 在没有办法的情况下,在团队中找了一个人停下来进行大的重构,花了一些时间。
  7. 在重构后,5个人分析了一下原因,开始在总的目标和详细设计上先达成了一致,然后按照设计的方式一步一步进行。
  8. 这之后,进展明显比之前推进的更平顺,也较少出现扣分,就这样一直持续到最后。
  9. 在关键实现上,出现了超过时间的情况,这符合实际情况。

回顾:

  1. 在团队协作上存在的问题,团队目标,计划和实施等环节的问题都暴露出来了。
  2. 代码集体所有,如果有人挖坑,同时也没人维护代码质量,代码腐烂的程度超乎你的想象。
  3. 增强了团队的凝聚力,增加了不少的笑料。
  4. 采用的技术多样化,相互之间进行了交叉学习。
  5. 个人目标和团队目标的权衡,还真是难题啊。

这次游戏取得的效果,还是比较令人满意的。这个游戏本身也是第一次制定出来,第一次实战,还有不完善的地方,期望有兴趣的同仁一起来参与实践和改进。

一个小团队TDD游戏及实践的更多相关文章

  1. 记一次小团队Git实践(下)

    在上篇中,我们已经能基本使用git了,接下来继续更深入的挖掘一下git. 更多的配置自定义信息 除了前面讲的用户名和邮箱的配置,还可以自定义其他配置: # 自定义你喜欢的编辑器,可选 git conf ...

  2. 记一次小团队Git实践(中)

    对于初学者,从使用上先入手,往往学的最快,并从中汲取教训,再回头更深入的学习,效果尤佳. 安装git 安装git自不必说,mac已经内置了git,linux下一个命令就能搞定,windows下需要下载 ...

  3. 记一次小团队Git实践(上)

    公司规模不大,成立之初,选择了svn作为版本控制系统.这对于用惯了git的我来说,将就了一段时间后,极为不爽,切换到git-svn勉强能用.随后,因为产品需要发布不同的版本,而git-svn对远程分支 ...

  4. 开源自己的一个小android项目(美女撕衣服游戏)

    这是自己的一个开源自己的一个小android项目(美女撕衣服游戏),也是前6个月开发的,有部分的资源来自网络上的,现在开源出来给大家吧,由于源码比较大,不上传了,我已经上传到源码天堂那个网站那里了,大 ...

  5. 使用PixiJS做一个小游戏

    PixiJS PixiJS使用WebGL,是一个超快的HTML5 2D渲染引擎.作为一个Javascript的2D渲染器,Pixi.js的目标是提供一个快速的.轻量级而且是兼任所有设备的2D库. 官方 ...

  6. Pygame:编写一个小游戏 标签: pythonpygame游戏 2017-06-20 15:06 103人阅读 评论(0)

    大学最后的考试终于结束了,迎来了暑假和大四的漫长的"自由"假期.当然要自己好好"玩玩"了. 我最近在学习Python,本意是在机器学习深度学习上使用Python ...

  7. DirectX游戏开发——从一个小游戏開始

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/26364129 写在前面:自 ...

  8. tensorflow增强学习应用于一个小游戏

    首先需要安装gym模块,提供游戏的. 1,所需模块 import tensorflow as tf import numpy as np import gym import random from c ...

  9. 【源码项目+解析】C语言/C++开发,打造一个小项目扫雷小游戏!

    一直说写个几百行的小项目,于是我写了一个控制台的扫雷,没有想到精简完了代码才200行左右,不过考虑到这是我精简过后的,浓缩才是精华嘛,我就发出来大家一起学习啦,看到程序跑起来能玩,感觉还是蛮有成就感的 ...

随机推荐

  1. 基于LINUX的多功能聊天室

    原文:基于LINUX的多功能聊天室 基于LINUX的多功能聊天室 其实这个项目在我电脑已经躺了多时,最初写完项目规划后,我就认认真真地去实现了它,后来拿着这个项目区参加了面试,同样面试官也拿这个项目来 ...

  2. 大约SQL/NoSQL数据库搜索/思考查询

    转载请注明出处:jiq•钦's technical Blog Hbase特征: 近期在学习Hbase.Hbase基于行健是建立了索引的,查询速度会很快,全然实时. 可是Hbase要基于行健之外的字段进 ...

  3. python fabric远程操作和部署

    博客迁往:新地址(点击直达) 新博客使用markdown维护,线下有版本号库,自己写的所以会定时更新同步.同一时候提供更好的导航和阅读体验 csdn对markdown支持不好.所以旧版不会花时间进行同 ...

  4. [Unity3D]Unity3D游戏开发MatchTarget的作用攀登效果实现

    大家好,我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 今天我们来一起学习在Unity3D中怎样实现角色攀爬效果. 在RPG游戏中,某些游戏场景经常须要玩家 ...

  5. XSS Overview

    什么是XSS? 跨站脚本攻击(Cross Site Scripting):攻击者往Web页面里插入恶意脚本,当用户浏览该页面时,嵌入页面的脚本代码会被执行,从而达到恶意攻击用户的特殊目的.恶意的内容通 ...

  6. PHP和MySQL Web开发 原书第4版 高清文字版,有目录,附带源码

    PHP和MySQL Web开发  原书第4版:http://yunpan.cn/QCWIS25zmYTAn  提取码 fd9b PHP和MySQL Web开发  原书第4版源码:http://yunp ...

  7. 文档流 css中间float clear和布局

    文档流 先说说什么是公文流转  什么流 它是一系列连续的东西 <div style="background-color:pink;width:40px;height:80px;&quo ...

  8. 国内ng学习网站

    Ngnice-国内ng学习网站2015-01-25 21:30 by 破狼, 534 阅读, 3 评论,收藏, 编辑 今天给angular新手介绍一个国内开源的ng学习网站http://www.ngn ...

  9. dom02

    事件对象:在触发DOM上的事件时dou都会产生一个对象,事件对象event DOM中的事件对象 1)type属性 用于获取事件类型 2)target属性 用于获取事件目标 3)stopPropagat ...

  10. 本学习笔记TCP/IP传输协议

    一个.通过网络发送数据,大致能够分为面向有连接与面向无连接两种类型: 1.面向无连接型包含以太网. IP.UDP等协议. 2. 面向有连接 型包含ATM.帧中继.TCP等 协议. 通过一张图了解一下: ...