Skip to content

Latest commit

 

History

History
27 lines (14 loc) · 4.22 KB

ch22.md

File metadata and controls

27 lines (14 loc) · 4.22 KB

22 黑衣团队

如果你曾经在有凝聚力的团队中待过,那么这种团队对你的价值是显而易见的。如果没有,就让我们在这一章来告诉你这样的经历究竟怎样。下文描述了一个在 20 世纪 60 年代富有传奇色彩的团队。团队的一些事迹被夸大了,但还算合情合理,至少大部分都是真实的。

传奇团队的人员组成

话说在 IT 行业的曙光时期(大致而言),在纽约州北部有这么一家生产大型蓝色电脑的小公司,同时,这家公司还要开发运行在这些电脑上的软件。公司客户很友善,但说实话,公司交付的软件实在不怎么样,总是缺陷不断。在一段时间里,公司花了不少精力去培训他们的客户,期望他们更能够容忍软件的缺陷。这个方法没有奏效,因此,他们不得不下定决心消除这些缺陷。

简单明了的方法是让程序员在交付前消除所有的缺陷。因为一些原因,这种方法未能行之有效。似乎程序员们(至少是那个年代的)都信心满满地认为自己写的程序是最好的。他们尝试去寻找缺陷,却找不到,然后通常在还存在很多缺陷的情况下,宣称软件已经完成了。

要找到最后的缺陷很难,但一些测试人员能够做得更好:于是公司集合了一些才华卓越的测试人员,分配给他们任务,要求在关键软件交付给客户之前做最后的测试。于是,具有传奇色彩的黑衣团队( Black Team)诞生了:

一开始,黑衣团队仅仅是一群证明自己测试能力更优秀的人。他们的动力更强一点儿。他们也会测试别人写的代码,因而可以避免开发人员测试自己程序时先人为主的偏见。归根到底,对于组建这样一支团队的人来说,他们期望至少能适当地提高产品质量。然而,他们的收获比预期更多。

黑衣团队最让人吃惊的不是他们在一开始有多好,而是在接下来的一年时间里他们改进了多少。一些神奇的事情发生了:团队形成了自己的个性。在测试的对抗哲学影响下,这一个性在团队成员中形成,它让大家积极主动地去发现缺陷。他们并不完全是为开发人员提供支持,恰恰相反,他们乐于提交一个程序(包括程序员)去接受一系列测试,更像是一种考验。提交你的程序去接受黑衣团队测试,就像去经受冷血魔王的考验一样。

可怜的地球生物,谁能能拯救你们呢?

一开始,只是简单地开玩笑,说他们的测试刁钻刻薄,团队成员最爱的就是把你的程序搞挂掉。一段时间盾,就不是开玩笑了。团队开始树立起毁灭者的形象。他们毁灭的不仅仅是你的代码,而是你这一整天。他们使用各种惨无人道的手段来造成程序失败,比如缓冲区过载、空文件比较或者输入无理的长字符串。看着自己的程序被如此邪恶的方式给践踏,无论男女,都要忍不住落泪了:可你越感到难过,他们就越开心。

为了加强邪恶形象的效果,团队开始身着黑衣(此乃黑衣团队得名的由来)。一个程序失败,他们会高声发出可怕的怪笑。一些团队成员蓄起了长胡子,卷曲着像凶残的工头 j 他们聚在一起搞出诸多狠毒的测试方法。程序员们开始抱怨黑衣团队这种病态的折磨。

不用说,公司自然乐见于此。团队找到的每一个缺陷都不是客户发现的:团队获得了巨大的成功。作为一个测试组织,它成功了,但更重要的,就咱们这里谈论的话题来说,团队作为一个社会单元成功了。团队里的成员共同取得如此成就,以至于团队外的同事都开始善意地嫉妒了。黑色的着装以及刻意的夸张表现是乐趣的一部分,但这里有更基础的东西。团队内部的化学反应本身成了目标。

小结

随着时间推移,团队成员逐渐转移到其他事情上。由于团队担负了如此重要的任务,每离开一位就会有新人加入,这样一直到全部原班人马都离开了团队。但黑衣团队仍然存在,团队失去了原来的所有人,但团队昀动力和个性依然存在。