解决棘手技术问题的原则

这里所说的棘手问题并不是指开发新功能中出现的问题,更多的是指那些排错性质问题。下面结合我曾经的痛苦经历,按照重要性的顺序列出来一些原则,应该会对解决问题有帮助。
一)找人帮忙
    这是最快捷简便的方法了,找到专家,问题往往就不是问题了。问题不是你的,而是大家的,这样也节省了大家的时间。

二)在实际动作之前先确保前提是成立的(先确认原因,再动作)
    道理是显而易见的,但最容易被忽视。很多时候我们上来就先尝试用某种办法去解决问题(动作),潜意识中认为应该是某种原因导致的(原因),但事先并没有确认一定是这个原因,结果浪费很多时间在不成立的假设上了。人们习惯这么做的部分原因是因为我们潜意识地想先尝试自己熟悉的办法,并一厢情愿地认为这应该解决问题。先做个实验,确认我们这样做的前提是成立的,会避免很多不必要的浪费。

三)有原则地尊重“经验”
    “经验”有时会驱使我们直接上手就开干,这很可能使问题在第一时间被解决,但这样做也有盲目的一面,它更容易让我们忽略问题发生的第一现场的某些重要信息,过早地在我们的潜意识中建立了很多假设,使我们放弃了缜密思考的过程,有可能浪费大量时间在各种尝试当中。经验很重要,建议给自己一个timebox,在这段时间内做尽量多的尝试,如果不行,就要回到问题发生的第一现场,逐一排除原因,...,也许这才是我们需要的、真正的经验。

猜你喜欢

转载自luning.iteye.com/blog/161240