直接列出每个质量属性是一个很好的起点。例子包括:
- 性能(比如延迟和吞吐);
- 可伸缩性(比如数据和流量);
- 可用性(比如运行时间、停机时间、定期维护、全天候、99.9%等);
- 安全性(比如认证、授权、数据保密性等);
- 可扩展性;
- 灵活性;
- 审计;
- 监测和管理;
- 可依赖性;
- 故障转移/灾难恢复的目标(比如手工还是自动化,要花多长时间);
- 业务连续性;
- 互操作性;
- 遵守法律法规(比如数据保护法);
- 国际化(i18n)和本地化(l10n);
- 可访问性;
- 易用性;
- 等等。
每一个质量属性都应该是精确的,不要让读者来解释。不属于这种情况的例子包括:
- “对于要求必须快速提供服务”;
- “上不封顶”;
- “尽快”;
- “尽可能小”;
- “尽可能多的客户”;
- 等等。