接下来,我们将了解解如何实现每个质量属性的体系结构、质量属性要求和体系结构决策之间的关系。为了使设计具有可移植性,设计具有高性能,设计具有集成性,实现这些质量属性的关键是基本的设计决策。我们称之为设计决策“战术”,即影响质量属性响应控制的设计决策。我们称之为策略“建筑策略”。而系统设计由决策集组成,在这些决策中,一些可以帮助控制质量属性的响应,而其他的可以保证系统功能的实现。对于设计师来说,每一个战术都是一个设计,所以设计者在实践中,需要我们从重要的内容中学习和学习。例如,最近有两个提高可用性的分支。
( 1 )战术可以战术性地使用,我们可以将冗余作为战术,但同样也可以用于数据冗余(数据库系统)或计算冗余(在嵌入式系统中)。这两种类型也是策略,设计者需要做的是进一步要求焊接使每种类型的冗余更具体,对于每个质量属性,战术组织可以是一种分层形式。
( 2 )模型可以打包策略。支持可用性的模式可能使用冗余和同步的策略,并可能使用更具体的这些策略形式。其次,学习质量属性的战术方法,每个系统质量属性的战术组织是层次形式。
为控制实现、测试和部署变更的时间和成本给出的可修改性战术。对在一定的时间限制内到达系统的事件生成一个响应的性能战术。与抵抗攻击有关、与检测攻击有关以及与从攻击中恢复的安全性战术。允许在完成软件开发的一个增量后,较轻松地对软件进行测试的可测试性战术。还有易用性战术,都是我们在设计师实践中学习到的经验。
在学习了设计师用于实现特定质量属性的战术集合后,可以明白的任何模式都会实现几个战术,这与不同的质量属性有关,但是该模式的任何实现都对战术做出了选择。