生活中我们往往会犯这样一个错误,自己本来要做一件简单的事情,但是需要准备一些东西,结果我们在准备的过程中,离原来的目标越来越远,进而忘了自己本来要做什么了。这就是忘记了自己的目标,我们常说人要制定自己的目标,目标不是制定好了就万事大吉了,还需要时刻牢记目标,不要让自己努力的方向偏离了航线。
很少有人是一开始就没有目标的,但同时也很少有人能做到一直矢志不渝,直到实现目标。那些有目标的人,却因为在实现目标的过程中,将自己的时间都浪费在其他事情上,从而逐渐忽略了目标,最终是不能成功的。他往往会被那些琐碎的、并不重要的事情牵绊住前进的脚步。只有那些很清醒的、时刻知道自己要干什么的人才能最终达到胜利的目的地。
有一位美国小伙子,他的工作是程序员,然而他非常喜欢新东西,经常引入新方法新思路试图改变现状。
有一次,他觉得部门在测试手段上太依赖手工测试了,于是就想引入自动测试。他调研试用了几种工具以后,选择了某大公司的产品作为主要工具。
他计算了一下,一共有1000条测试用例需要自动化,于是他定下计划:一个人一天可以写5个测试用例,所以需要200个人天;计划要在一个季度完成,按一个人一季度共60个人天的话,只要4个人工作还有余。这样,全部用例做好以后,他估计,至少减少一半测试工作量。
于是,他把情况报告给总经理,总经理同意了,并给他招了4个人,成立了自动测试组。大家就风风火火干起来了。
他的做法是,手工测试有多少条用例,他就用自动测试工具实现多少条。
一个季度下来了,全部测试用例完成了。当然大家敲锣打鼓的庆祝。但接下来,却遇到了意想不到的问题:
第一,所有的测试人员都认为自动测试组写出来的脚本没有用。为什么呢?因为自动测试组的员工都是新招的,对产品不熟。因此他们只好对照着手工测试用例一条条地做,就像做翻译一样把手工测试用例变成自动脚本。但测试人员说,手工测试用例本身就不够完善,很多测试的验证点是凭经验的,这样翻译出来的用例当然不过关。
第二,新产品特性已经改变了,写出的脚本过期了。因为是比照着手工用例,自动测试组使用的用例是产品的上一个版本的,这样写出来的用例当然不适合现状。
第三,短期内投入产出比很低。手工测试一天能做100个测试用例,1000个用例10天做完。但4个自动测试工程师3个月才完成1000个用例的开发,也就是花了4×3×20=240个人天,就算测试用例100%可用,也需要240÷10=24轮才能在成本上持平,如果每个版本测3轮的话,相当于8个版本。而8个版本,产品还在不在都难说了。
程序员做了反省,发现自己犯的最大错误是:自己提出问题的初衷是减少测试工作量,但执行的时候却把“翻译”完所有的测试作为了目的,而忘记了最初的目标。因为只顾着往前赶数量,从来没有请手工测试的工程师来看看,是不是可以100%替代手工测试,也没有在小模块上试试,看看开发人员有什么意见。
于是,程序员开始改变做法。又过了一个季度,团队开始接受自动测试了。终于,开发效率和质量都提高了。
程序员得出一个经验:目标在最初设定时一般都会比较清楚,但在漫长的实现过程中很容易忘了原来的目标是什么,而把一些表面的指标当成重要的东西。因此,经常看看今天所做的努力和原先的目标是否一致和能否一致,是很重要的。
很多时候,也许我们上网本来是要查一个成语典故的,但是结果却跑去看娱乐八卦了,浪费了一两个小时,最终成语典故也没有查到。这只是一个简单的例子。但也是我们会常犯的错误,虽然看起来不算什么,但是如果这样的事情越积越多,你每次要做什么正事,都会偏离到那些无关的事情上。
既然偏离目标的后果是很严重的,那么就应该从现在开始克服自己的这个缺点,无论做什么事情,都要告诉自己我的目标是什么,我要怎么做才能不偏离这个目标。如果在做事的过程中出现了很多琐事,可能会直接影响到你的目标实现,就要尽快解决,否则完全可以不用去理会这样的事情,要知道时间是有限的,要是在不重要的事情上花费了太多时间,在重要的事情上就没有充足的时间了,这样的损失太大。