• 一个小团队TDD游戏及实践


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

    游戏规则:

    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. 个人目标和团队目标的权衡,还真是难题啊。

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

  • 相关阅读:
    Yii框架中ActiveRecord使用Relations
    MySQL外键约束On Delete、On Update各取值的含义
    30种mysql优化sql语句查询的方法
    PHP数组常用函数
    yii CListView中使用CArrayDataProvider自定义数组作为数据
    java日常统计
    软件工程概论———登录界面的设计
    Java课堂疑问解答与思考5
    Java课堂疑问解答与思考4
    字符串加密
  • 原文地址:https://www.cnblogs.com/worgeling/p/3592837.html
Copyright © 2020-2023  润新知