27、软件开发中的错误处理与异常应对

软件开发中的错误处理与异常应对

1. 软件开发中的不可避免的错误

软件开发是一项极其复杂的工作,这源于程序本身的不可预测性。计算机和大多数编程语言都基于图灵机这一理论模型,基于图灵机的编程语言被称为图灵完备语言。图灵机赋予了软件开发无限的创造力,但在不运行程序的情况下,很难验证其正确性。一些语言依赖非图灵完备的机器,如 HTML、XML 或正则表达式,它们的能力远不如图灵完备语言。由于图灵机的特性,错误是不可避免的,不存在无错误的程序。在开始软件开发之前,接受这一事实会让你的工作更加轻松。

2. 错误处理的优先级

对于任何规模的项目,开发团队都需要一个错误分类流程来决定修复哪些错误。错误分类的概念起源于第一次世界大战,当时医护人员需要决定治疗哪些患者,放弃哪些患者,以将有限的资源分配给有生存机会的人。这是有效利用稀缺资源的唯一方法。错误分类有助于确定首先要修复的错误,甚至判断是否值得修复。

确定错误优先级的方法有很多。在微软的 Windows 团队,有一套复杂的标准来决定修复哪些错误,由多个工程权威进行评估,还会每天开会讨论错误的优先级。但对于大多数软件项目来说,可能并不需要如此复杂的流程。例如,伊斯坦布尔一个官方婚姻中心的自动化系统在更新后出现故障,所有婚礼仪式都不得不停止,这时就需要将无法举行婚礼这一问题分解为适用性、影响和严重性等具体指标来确定优先级。

一种更简单的评估优先级的方法是引入“严重性”这一辅助维度。优先级体现的是错误对业务的影响,而严重性则是对客户的影响。例如,平台上的一个网页无法正常工作,这对客户来说是高严重性问题,但优先级可能因该页面是主页还是很少有客户访问的偏僻页面而有所不同。同样,主页上的企业标志丢失,可能对客

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值