软件调试的生命周期

xiaoxiao2026-08-20  12

读大学时候,很少coding,更不习惯调试,嫌麻烦 工作后其实大部分都在调试,最近看了些书,所讲的软件调试过程大同小异 发现bug 记录 ->重现bug->调查->提出修正方案->修改代码->测试验证->结束 跟瀑布模型一样,各阶段之间会迭代 发现和记录不是调试人员的工作 整个调查和解决过程才是软件调试的生命周期,关于调试,有些有趣的观点耐人寻味 “一旦我们开始编程,就会惊讶地发现让程序正常没想象中那么简单。调试不可避免。那一刻我认记忆犹新,当时我就意识到,从今往后我生活的大部分时间都要花在寻找自己程序的错误上面了。” (莫里斯•威尔克斯 调试探索, 1949) “调试难度本来就是写代码的两倍。因此,如果你写代码的时候聪明用尽,根据定义,你就没有能耐去调试它了。” (Brian Kernighan,《C 程序设计语言》的作者之一) “如果调试是除虫的过程,那么编程就一定是把臭虫放进来的过程。” (Edsger W. Dijkstra) 1)bug发现的越晚,成本越高 2)花10%的时间coding,花90%的时间debugging 3)修bug跟补衣服差不多,越补越难看 4)越是后期发现的bug,越是难修 5)调试的时候会发现新的bug,修改代码后又带来了新的bug 还有些头疼的地方 6)test and debug,不停的测试与调试,却发现bug修不完 7) 如果用户描述的bug不能再现怎么办 8) bug不是很严重,但是要调试和测试,在环境搭建方面很困难,该不该修 9)修一个bug,不论简单与否,都要有白盒测试,黑盒测试,功能测试,回归测试,这么麻烦 10)如果bug修不了或者风险太大,有回避方法还好,如果没有怎么办? ......
转载请注明原文地址: https://www.6miu.com/read-5051551.html

最新回复(0)