首页 理论教育 软件缺陷的定义与研究

软件缺陷的定义与研究

时间:2023-10-17 理论教育 版权反馈
【摘要】:软件缺陷包括检测缺陷和残留缺陷。用户使用软件时,因残留缺陷引起的软件失效症状称为软件故障。经过对上述9类原因长时间的调查研究,发现大多数软件缺陷不是由于编码错误造成的。导致大多数软件缺陷的主要原因是在需求分析阶段,其次是软件设计阶段。

软件缺陷的定义与研究

▶6.1.1.1 软件缺陷的基本定义

软件缺陷即计算机软件或程序中存在的某种破坏软件正常运行的问题、错误,或者是隐藏的功能缺陷。缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。IEEE729-1983对缺陷有一个标准的定义:从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题;从产品外部看,缺陷是系统所需要实现的某种功能的失效或违背。按照一般的定义,只要符合以下五个规则中的两个就可判断软件存在缺陷:

·软件未实现软件需求规格说明书中的所有功能;

·软件出现了产品说明书中指明不应该出现的错误;

·软件实现了软件需求规格说明书中未提到的功能;

·软件未实现软件需求规格说明书中的虽未明确提出但应该实现的目标;

·软件未实现软件需求规格说明书中的性能需求。

软件缺陷包括检测缺陷和残留缺陷。检测缺陷是指软件在用户使用之前被检测出的缺陷;残留缺陷是指软件发布后存在的缺陷,包括在用户安装软件前未被检测出的缺陷以及已检测出但未被修复的缺陷。用户使用软件时,因残留缺陷引起的软件失效症状称为软件故障。

总之,软件缺陷是软件开发过程中的“副产品”,会导致软件产品在某种程度上不能满足用户的需要,即对软件产品预期属性的偏离,造成用户使用的不便。

▶6.1.1.2 软件缺陷产生的原因

为什么会出现软件缺陷呢?通过分析,发现导致软件产生缺陷主要有以下9类原因:(www.xing528.com)

·不完善的需求定义;

·客户与开发者之间的通信失败;·对软件需求的故意偏离;

·逻辑设计错误;

·编码错误;

·不符合文档编制与编码规则;

·测试过程不足;

·规程错误;

·文档编制错误。

经过对上述9类原因长时间的调查研究,发现大多数软件缺陷不是由于编码错误造成的。导致大多数软件缺陷的主要原因是在需求分析阶段,其次是软件设计阶段。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈