软件构架实践_阅读笔记02(4-6)

  一到三章讲述了一些概念内容以及实例,比如什么是架构,架构的重要性和评判架构的准则等等。同样,作为书的第一部分,它介绍了架构的商业周期,是分析软件架构的基础。而第二部分讲述的就是设计师如何创建构架。概括的说,因为质量属性的实现对系统的成功至关重要,因此我们开始对质量属性以及设计师如何借助他的工具箱来实现质量属性进行讨论。

  上段提到了一个陌生的名词,叫做“质量属性”。那么什么叫做质量属性呢?首先,功能性和质量属性是正交的。功能性指系统能够完成所期望的工作的能力。比如在盖房子的时候,设计者、电工等工作人员相互协作一样。而功能性在很大程度上独立于结构,当质量属性很重要时,软件架构会限制各结构的功能分配。功能性所关心的是它如何与其他质量属性相交互的,以及它是如何限制其他质量属性的。这样,说,功能性和质量属性是正交的,就可以从功能性的层面来理解下质量属性了。

  那我们了解质量属性有什么用呢?是的,这本书讲的是架构,说明质量属性肯定是与架构有关的。架构对我们所关心的系统质量属性的实现由重要意义,在架构实现的时候,就会考虑到质量属性,所以质量属性和架构是相辅相成的。同时,架构不能独自实现质量属性。当然,质量属性还要它自己的特色,比如质量属性场景以及场景的可用性、可修改性等。

  在理解了质量属性的概念和含义之后,第五章就开始讲述的是如何实现质量属性了。这时候就要提到战术。这个战术就是影响质量属性相应控制的设计决策。把战术的集合称为构架策略。讲到可用性技术从以下几个方面开始,从错误检测开始、错误恢复到错误预防。而可修改性技术,是从局部化修改、防止连锁反应到推迟绑定时间。而后,性能战术是资源需求、资源管理、资源仲裁的统筹兼顾。最后,安全性战术,讲的是从抵抗攻击发展到会检测攻击,在检测攻击的基础上从攻击中恢复。可测试性战术和易用性战术也是不可忽略的。 

 

posted @ 2017-01-19 12:23  justMww  阅读(98)  评论(0编辑  收藏  举报