企业架构十大非功能性需求
💡
原文中文,约2700字,阅读约需7分钟。
📝
内容提要
功能需求定义系统应做什么,非功能性需求规定系统应是什么样。可伸缩性、可用性、可扩展性、一致性、弹性、可观察性、安全性、耐用性、敏捷性是衡量系统质量的关键因素。构建系统需考虑流量模式、延迟、部署标记、灾难恢复、辅助功能、易学性、日志记录、安全性、复制、容错、可归档性、可维护性、可测试性、可部署性、可安装性、可升级性、可移植性、可配置性、兼容性等。
🎯
关键要点
- 功能需求定义系统应该做什么,非功能性需求规定系统应该是什么样子。
- 可伸缩性是系统随着用户或请求数量增加而执行和操作的能力。
- 流量模式包括昼间、全球/区域和雷群。
- 弹性是系统快速处理流量突发并优雅收缩的能力。
- 延迟是系统尽快处理请求的能力,包括优化算法和边缘计算。
- 可用性以正常运行时间的百分比来衡量,受到系统错误和负载的影响。
- 可扩展性衡量扩展系统的能力,涉及模块化和可重用性。
- 一致性保证每次读取都返回最近的写入,确保数据一致性。
- 弹性系统能够优雅地处理故障并快速恢复,设计时需考虑可恢复性和灾难恢复。
- 可观察性是收集程序执行和组件间通信数据的能力,包括日志记录和监控。
- 安全性是保护信息和数据的程度,包括保密性、完整性和身份验证等属性。
- 耐用性涉及软件的可服务性和满足用户需求的能力,包括复制和容错。
- 敏捷性使团队能够快速响应变化,关键因素包括可维护性、可测试性和可部署性。
➡️