XX系统的质量属性战术
一、可用性战术
当系统不再提供与其规范一致的服务时,故障就发生了;该系统的用户可以观察到这个故障。错误可能会导致故障的发生。可用性战术将会阻止错误发展成故障,至少能够把错误的影响限制在一定范围内,从而使修复成为可能。
1、错误检测:命令/响应;心跳(dead man 计时器);异常;
2、错误恢复-检测和修复:表决;主动冗余(热重启);被动冗余(暖重启/双冗余/三冗余);备件;
3、错误恢复-重新引入:shadow操作;状态再同步;检查点/回滚
4、错误预防:从服务中删除;事务;进程监视器
二、可修改性战术
控制可修改性的战术,其目标是控制实现、测试和部署变更的时间和成本。
1、局部化变更:维持语义的一致性;预期期望的变更;泛化该模块;限制可能的选择;抽象通用服务;
2、防止连锁反应:信息隐藏;维持现有的接口;限制通信路径;仲裁者的使用;
3、推迟绑定时间:运行时注册;配置文件;多态;组件更换;遵守已定义的协议;
三、性能战术
性能战术的目标就是对在一定的时间限制内到达系统的事件生成一个响应。到达系统的可以是单个事件,也可以是事件流的形式,它是请求执行计算的触发器。它可以是消息的到达、定时器到时、系统环境中重要的状态变化的检测,等等。系统对事件进行处理并生成一个响应,性能战术控制生成响应的时间。等待时间是事件到达和对该事件生成响应之间的时间。
1、资源需求:提高计算效率;减少计算开销;管理事件率;控制取样频率;
2、资源管理:引入并发、维持多个副本;增加可用资源;
3、资源仲裁:调度策略;
四、安全性战术
可以把实现安全性的战术分为:与抵抗攻击有关的战术、与检测攻击有关的战术以及从攻击中恢复有关的战术。
1、抵抗攻击:对用户进行身份验证;对用户进行授权;维护数据的机密性;维护完整性;限制暴露的信息;限制访问;
2、检测攻击:入侵检测;
3、从攻击中恢复:(恢复)查看可用性;(识别)审计追踪;
五、可测试性战术
将接口与实现进行分离
将接口和实现进行更加的实现对于可测试性只需要修改实现,而不需要对接口进行更改。
六、易用性战术
在进行填报的时候,可以在填报的时候进行填报数量的提示;
有的公司可能需要的将所有的报告都进行一块的填报,如果进行填报数量的提示,则对于填报人员进行填报时自己填报到多少份有很快的了解。