1. 调查清楚问题复现背景信息
(1)文档记录问题复现的软硬件版本和方法。
用文档记录下来硬件平台,硬件原理图/接口示意图(留图),软件版本,复现方法,问题现象(截图)。
目的:为复现问题提供支撑,为后续问题报告提供材料,不要问题解决了,环境都拆了,到写文档时干巴巴的找不到图文信息。
2. 问题分析
根据问题复现情况列故障树,不要脑子一团浆糊,动试一下,西试一下,形成问题分析的思维逻辑和方法,初始困难,做的多了就成本能了。
按故障树一条条踏实的去排查,记录现象和结果。
根据故障树排查结果,缩小问题排查方向,再仔细分析可能出现的软件/硬件问题。
记录具体问题分析时的排查手段和方法是核心,问题定位清楚后回顾自己的定位方法,是否有笨拙的地方,是否有别的方法或更快捷的定位方法,要善于总结和归纳,形成自己的技术积累。如此才能在琐碎的问题中提升自己的能力。
3. 及时形成问题分析报告
一个问题排查完毕后,要及时总结归纳形成系统的有逻辑的文档,可按照归零的格式严格要求自己。
(1)问题描述:背景,问题现象
(2)故障定位:理论分析问题,画出故障树,挨个排查。
(3)机理分析:分析问题产生的底层逻辑。
(4)故障复现:根据问题分析原因,添加修改措施,加措施后不复现问题,去掉措施能复现。
(5)采取措施和影响分析:
措施对稳定性的影响,对性能的影响,对其他模块的影响。
(6)举一反三:
根据当前问题能不能联想到相似问题,其他型号板卡或使用相同代码的板卡有没有问题。
(7)结论
问题出现的原因是什么,故障是否定位准确,是否可复现,措施是否有效,有没有进行举一反三,问题是否得到根本解决(有时采用曲线救国的方法)。
4. 为什么要养成这样的习惯?
十年了,十年的技术支持工作,在我心理预期下按理应该有很好的技术积累,但是实际支持工作琐碎无系统。这么多年下来,除了归零问题,特别的问题留下了详细文档,其他的都是问题解决后记了个大概现象,和解决方法,或仅仅保留个补丁或硬件措施的方法。结果就是现在回忆几年前的问题,问题现象都不记得了,就像大学的知识只在当时知道并理解含义,工作后慢慢就模糊和遗忘了,后面想再熟悉和捡起来还要花费一番功夫,汗颜。
问题调试过程现象和调试细节,调试思路都是宝贵的财富,应该在问题结束后及时整理,并对其中未理清的部分及时查资料或重新梳理问题时进行补充说明,长久下来,做事有理有据,有始有终,方得始终。
温故、知新,形成知识体系,问题积累,让自己的知识富起来,不要一边学一边丢。掰棒子的猴子永远是个猴子。