软件调试的生命周期

读大学时候,很少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修不了或者风险太大,有回避方法还好,如果没有怎么办?
......
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值