制作满足用途的大型软件的方法
Criteria(标准)
- Security 安全性
- Correctness 正确性
- Performance 绩效
- Reliability 可靠性
- Usability 可用性
- Scalability 可扩展性
- Time to market 进入市场的时间
- Development cost 开发成本
Methods (方法)
- Requirements analysis 需求分析
- Design 设计
- Testing 测试
- Reviews (code, design, requirements) 审查(代码、设计、需求)
- Prototyping 原型设计
- Formal Analysis 正式分析
系统失败会带来的问题
- Loss of life
- Loss of money
- Environmental damage
- Loss of mission
- Loss of privacy
Safety
- What is “safety”?
- What does it mean for software?
- How do we get it? (safety engineering)
Doesn’t cause unacceptable harm to the environment or people
安全从一方面来说就是不会对人和环境造成不可接受的伤害
而如何定义和量化不可接受性是安全工程的重要组成部分