软件的模式与物理设备的模式非常不同,软件对事故的贡献也不同:必须改变工程活动以反映这些差异。几乎所有与软件相关的事故都可以追溯到需求规范中的缺陷,而不是编码错误。在这些情况下,软件完全按照规定执行(实现是“正确的”),但规范是不正确的,因为(1)需求不完整或包含关于软件控制的系统组件所需操作或计算机所需操作的错误假设,或(2)存在未处理的受控系统状态和环境条件。这反过来意味着软件系统安全工作的大部分应该用于需求分析,包括完整性(我们已经指定了一套广泛的完整性标准)、正确性、对系统危害的潜在贡献、稳健性以及可能的操作模式混淆和软件设计造成或加剧的其他操作错误。
主要关键词