Project - 非功能需求和质量关注点

非功能需求和质量关注点

可重复性

  • 重复相同操作的可能性的程度
  • 是否为同一进程/区分范围与界面
  • 对过程流监管,包括开发人员的活动
  • 合适的测试级别
  • 自动化&配置管理工具(CMBD)
  • 监管自动化任务流
  • 版本控制(配置与改动)&标签
  • 周期性的状态收集和分析

性能

  • 执行操作所需要的时间和资源
  • 测量关键事物
  • 不同类型的错误以及原因
  • 问题或故障的修复时间

可靠性

  • 在一定时间周期内,保持服务状态的程度
  • 理解不同服务的特性:控制权、所有权、复杂度
  • 封装原始服务,使用本地复本
  • 早期检测与修复:检查机制(日志、断言),对比历史趋势

可恢复性

  • 失败的操作可以恢复到期望状态的程度,对业务造成极小的影响
  • 在操作逻辑中包含异常处理
  • 内置对外部监控或者系统恢复的支持
  • 长时间运行的独立步骤或组件,具备自修复能力

互操作性

  • 在特定环境下,不同工具或组件通过接口有效地交换信息的程度
  • 接口:稳定的编程接口、灵活的脚本、活跃的插件
  • 理解现有的数据模型:每个工具的数据模型与基础环境的映射

可测试性

  • 通过测试,能够很容易地展示其错误
  • 部署前的预测试
  • 部署后的Checklist

可修改性

  • 修改软件、过程或者应用运维环境所需要的工作量

一个组件内的修改

  • 将相关活动封装成模块,尽可能松耦合
  • 模块功能单一,规模合适
  • 执行顺序可控
  • 变量和配置参数化版本化,不构建在代码中

多个组件之间的修改

  • 版本替换:版本间的依赖、接口和方法变动
  • 工具替换:完整的验证与测试、迁移工具
  • 连接参数变化:测试与验证
posted @ 2018-11-28 00:24  Anliven  阅读(372)  评论(0编辑  收藏  举报