我刚开始工作时,公司有一新产品要上市,设计部对试验品做了大量测试,但那些指标无法对产品做出最后的结论。用户质问,销售为难,请我们系统部帮助。
我刚到公司,正在熟悉情况,小老板阿历克斯让我去看看。我重新做了一组测试程序,结果,该产品在所有的测试项目上全是“Fail”。销售通知设计,设计部大惊、很不高兴,告状到大老板罗斯那儿。设计的大拿格雷厄姆(那时是PE,后来是头头)指着显示屏上杂乱无章的数据,当着罗斯的面问我,“有什么问题?怎么到了你这儿一项指标都通不过?”我那时是小人物,小心翼翼地说,“不知道啊。这些测试项目是牛人DEK 大作上的,我只是把他的公式变成了程序而已。”既然是牛人DEK说的,设计也无奈。问我怎么办,我说,“你们的设计其实是很好的,只要把那块多余的拿掉就行了。”格雷厄姆怎能相信一个外部门新来的呢?我告诉他, “你的这一块把前面的一个功能抵消了,数学上是这样的 …”云云。格雷厄姆将信将疑,让他手下的猴子把那块拿掉。结果,产品通过了大部分测试项目。
我在测试报告中当然只列出了通过的项目,用户看了那么科学的测试报告,马上就发出了订单。谁能怀疑牛人DEK 列的测试项目么?
我和格雷厄姆以后就成了好朋友。他设计、我测试, 我们一起完善设计,交给产品部。我当时做的测试项目越来越多,牛人 DEK 的测试项目成了“基准测试”,我还从当时的学术杂志上加了许多“高级测试”,而且所有的产品都用,产品自然也更加可靠。后来,连军品设计部都用这些测试。由于当时高水准的测试,几家对手公司一时无法拿出同类的产品竞争,我们真是过了一段好日子。
鉴于我那时一塌糊涂的英语,QA还专门调了美女工程师安吉拉来写测试报告,画彩图、做精装本,忙得不亦乐乎。
以后,我回到了阿历克斯手下,做他的产品。有时,也帮着格雷厄姆搞些设计。我们还一起成功地拿到了几个专利。这个测试程序以后一直由QA维护,安吉拉用了很长一段时间。
那年我的第一个performance review,是一张五千刀的cheque,我当时都不敢相信,那可是90年代啊。
格雷厄姆后来成了Design Manager,以后离开了,去了其他公司。我很久以后也离开了,但和他到现在还保持着联系,有些是商务,有些是友谊 …
谢谢评论。那是随机性测试,不过他的大作第二卷(D. E. Knuth, The Art of Computer Programming, Vol. 2)上有关于游戏算法的。