快速失败法
快速失败法是近些年流行的一种软件工程方法。它的主要思想是,让可能的错误早点暴露出来。
我最近遇到一个案例,可以说明“快速失败”这种思想的优点。
有一个任务,是把源代码从SVN转移到Git上去,这是个Legacy系统,源代码里面放了很多不该放的东西,所以总共有30G。
有个顾问,做了一周,还是没有完成任务,我看了他的流程,立刻意识到问题所在。
他先把所有东西,先转移过去,然后再检查结果,如果结果错了,就从头再来一遍。每次转移的时间是十七个小时,他一周算上晚上时间,也最多试验五次。
我向他介绍了“快速失败”的方法,让他先转移一个分支,然后验证结果。这一步骤,最多两个小时。当一个分支转移完后,再转移第二个分支。这时候,可以比较两个分支的差别。当这部做完后,才开始进行十七个小时的大任务。
原来一周的任务,采用快速失败法后,缩短到两天,大大提高了效率。