【实战】组建学习小组,引入测试驱动开发实践

这篇文章介绍一下我进入新公司后,引入测试驱动开发实践的过程,提供思路供大家借鉴。

简单的背景说明:

我被调入了一个新公司,虽然是原公司分化出来的,但对我来说是个全新的环境。团队未引入过任何敏捷实践。

因为意识到TDD的价值,所以我想从这个实践开始。这是个比较难的实践,所以先把目标切小一点,第一阶段先以学习实践为主,期待来日方长。

为什么是学习实践小组的方式?

因为它阻力小、收获大。从事软件研发的人都比较乐于学习,管理层当然也乐见其成;而且学习并不涉及真正的改变,所以抵触情绪很小;另外,团体学习也是一个很好的学习环境,既有压力也更有动力,不同的人之间能相互补足。

下面是过程的具体介绍。

整体的里程碑:

这是一个为期两周的学习实践计划。

下面说说我是怎么促成这次活动的。

一共五个步骤:准备-->授权-->建组-->启动与执行-->总结汇报。

1、准备工作

我研究了一个TDD的课程,做了一个两周的学习计划,确定了要寻找的人员特点(热爱学习)等。这些能让我更好地把控接下来的事,降低风险。

2、获得授权

在正式开始之前,我要先获得管理层的授权并争取最大支持。所以,我与两个二BOSS、一个项目经理沟通,说明了这件事的目的、时间计划。(与谁沟通要看你自己的组织情况,拿到授权和资源即可)

最后管理层不仅授权了活动的启动,还提供了绩效考核的倾斜支持,嗯,这是很大的支持了。

3、组建学习实践小组

拿到授权后,接下来是组建学习小组。项目经理给我推荐了人选,我与每个人进行了一对一交流,说明了活动的目的和安排,由其自行决定是否参与并给出了考虑时间。

在预定大家答复的当天有个小插曲,原定的沟通时间被其它事项挤没了。于是我紧急邀请大家一起午餐,并于餐后散步的同时收集大家意见。这次午餐会的氛围很好,每个人也更愿意敞开沟通,是神来之笔,可以多考虑使用这种非正式的沟通方式。

4、活动启动与计划执行

小组共吸纳了7个人(最后还加入了一个新员工),接下来就是正式的启动这次学习活动。

1)小的启动会。

召集小组所有人一起,做了一个小的启动会。管理层也受邀参加,表达了对本次活动的重视,进行了口头鼓舞,这可以说是在精神层面又提供了一层支持。

2)书面通知。

会后我发了正式的邮件,书面通知大家学习的目标、周期安排。

3)自学及每周两次汇报。

启动会后大家各自找渠道学习(因为课程需要付费,所以有的人选择自行找资料学习)。

学习汇报会每周两次,时间为下班后一小时。在汇报会中,我的主要工作是组织、引导和记录:

1、组织汇报会,安排好时间、地点;

2、引导大家梳理已经取得的进展;

3、引导大家明确下次学习的方向和目标。

每次汇报会后,我会整理书面记录,通报给管理层和小组内所有成员,这个步骤能让管理层及时了解小组进展,也让小组成员看到自己的学习成果。

第一次,大家还没太上道;第二次,已经明显上道,整理出了很多有用的知识并进行了实际项目的实践;第三次能进一步把TDD应用于实际项目中了。

5、总结汇报,确定下一步计划

最后是总结和汇报,主要是给管理层汇报,向其展示学习成果,让他们知道这件事要结束了,以及下一步计划是什么。

汇报会以回顾本次活动+编程演示组成。我整理了PPT,组织了汇报会。会议尾声时,管理层还对TDD的作用进行了简单的民意调查。

通过调查来看,大家对TDD的好处很认可,这个结论是每个人经过学习体验后由感而发的,真让人高兴。这次学习旅程在每个人心里种下了一棵TDD的种子,待时而发。

通过组织这次TDD学习实践活动,也让管理层认识了TDD的价值,并安排了技术经理开展下一步推广计划。

到这里,TDD推广取得了一阶段的成功,不过距离全面的落地,还有一段旅程,且听后话。

下面是一些关键点总结:

1、以学习来推进TDD实践。

这是个比较可行的做法。阻力小、收效大。

2、管理层的支持必不可少。

精神和物质层面最好都要争取到。

3、短周期的学习。

有利于人们坚持下去。

4、团体学习创造了好的学习环境。

既有压力又能相互支持。

5、成果展示会让管理层和员工都受益。

员工们展现了自己的价值,管理层看到了成果。

6、有一两个理解能力强、热爱学习的人非常有帮助。

这样的小伙伴能快速理解新技术,归纳总结,并应用到实际项目中,这对团队学习很有帮助。

7、及时的书面记录并分发。

抓拍一些现场图片,放进每次的记录里面,宣传效果很好。

你可能感兴趣的:(【实战】组建学习小组,引入测试驱动开发实践)