主要观点:NASA 通过多种测试层级、独立验证、标准、安全社区和工具来确保软件安全,从航天飞机和猎户座 MPCV 的软件开发与测试中汲取经验不断改进。
关键信息:
- 不同测试层级帮助确保安全软件开发,各层级由不同人员或团队执行,有独立验证与确认团队。
- NASA 有安全社区和软件质量保证团队,各团队负责监督软件开发过程并指出缺陷。
- 选择工具以方便测试且不降低测试准确性,有 NASA 软件开发标准和合同额外要求。
- 虽不能找到所有代码缺陷但要尽力,开发时需预留足够测试时间。
- 工程学科需不断改进,软件发展是新学科。
重要细节: - 基于 30 年航天飞机软件开发研究表明各层级测试发现剩余缺陷比例相同,有递减回报但能减少软件错误。
- 对航天飞机灾难和近失事件进行深入分析,遇事故会暂停项目直到根源问题解决,成员心理受影响,需从错误中学习。
- 记录灾难调查结果,每年培训过去失败案例以避免未来发生,持续学习并与同事分享,挑战自己不断进步。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。