01.什么是5why?
今天了解到了这个思考分析方法,是用来找到关键问题所在,有所启发,分享给大家。
所谓5why分析法,又称“5问法”,也就是对一个问题点连续以5个“为什么”来自问,以追究其根本原因。
虽为5个为什么,但使用时不限定只做“5次为什么的探讨”,主要是必须找到根本原因为止,有时可能只要几次,有时也许要十几次,如古话所言:打破砂锅问到底。
5why法的关键所在:鼓励解决问题的人要努力避开主观或自负的假设和逻辑陷阱,从结果着手,沿着因果关系链条,顺藤摸瓜,直至找出原有问题的根本原因。来自百度百科
作为一个程序猿,这种思维方式,跟我们平时排查Bug有点相似。
也可以理解为,其实我们部分人也已经用上了这个思维。
02. 如何应用到程序开发上
比如说现在生产环境上手机app界面报了个错误。我们如何找到问题并且避免问题?
经过一番排查,结果发现是开发的同事在某一行代码里面写多了个空格,导致了某个格式化方法执行报错了。
这怪谁?
这也不能直接把所有问题都指向开发代码的程序员,不然谁还敢开发。
没人敢打包票说自己写的代码百分百没问题,这不现实。
所以要解决这个问题,需要一层一层去分析,防止后面出现同样的事故。
1. 这只是一次代码失误吗?为什么测试没有发现?
2. 没测出来?是测试的测试案例没有覆盖到吗?
3. 如果一个测试人员思考的测试场景有限?是不是要加多一个测试人员或者测试复核?
4. 从开发角度讲,是不是要加强开发规范?开发人员做好检查。
5. 开发人员自查之后,是不是需要另外的同事复核代码,做一下代码review?
上面这些都是可能出现问题的地方,分析出来之后,如果哪里没做好,那就需要根据实际,查漏补缺。
这个排查问题的分析方式,几乎适合我们遇到的所有问题。
遇事多想想,有策略地想,提出有意义的问题,找出根本原因最重要。
如果你也用过,下方留言区一起探讨下吧。
来都来了,点个赞再走吧❤️

