软件架构实践阅读笔记二

1、质量属性

系统从设计、实现到部署的整个过程中考虑质量属性的实现。质量属性包括下列三类:

(1)、系统的质量属性。(可用性、可修改性、性能、安全性、可测试性和易用性)

(2)、受架构影响的商业属性。(上市时间、成本和收益、所希望的系统生命期的长短、目标市场、推出计划、与老系统的集成)

(3)、与架构本身相关的一些质量属性。(概念完整性、正确性与完整性、可构建性)

2.战术与架构模式的关系

Active Objcet设计模式将方法执行从方法调用中分离出来,以增强并发,并简化对驻留在其自身控制线程中的对象的同步访问。

该模式由6个元素组成:代理,它提供了允许客户对主动对象调用公共访问方法的接口;方法请求,它定义了用于执行主动对象的方法的一个接口;激活接口,它维持了挂起方法请求的一个缓冲器;调度程序,它决定接下来执行什么方法请求;附属,他定义可建模为主动对象的行为和状态;将来,它允许客户获得方法调用的结果。

该模式的动机就是增强并发性——这是一个性能目标。因此其主要目的就是实现“引入并发“性能战术。然而,还要注意该模式包含的其他战术。

●     信息隐藏(可修改性)。每个元素都选择了它将实现的责任,并将其实现隐藏在接口后面。

●     仲裁者(可修改性)。该代理充当着把变化缓冲到方法调用中的仲裁者。

●     绑定时间(可修改性)。主动对象模式假定对该对象的请求在运行时到达该对象。然而,并没有确定客户机与代理的绑定时间。

●     调度策略(性能)。调度程序实现一些调度策略。

3.架构模式和样式

软件中架构模式与建筑物中的架构样式类似,它由几个将他们组合起来以维持架构完整性的关键特性和规则组成。架构模式由以下几个因素确定:

●     一组元素类型(如数据存储库或计算数学函数的组件)

●     指出其相互关系的元素的拓扑布局。

●     一组语义限制(如管道——过滤器样式中的过滤器是纯数据转化器——他们以增量形式将其输入流转换为输出流,但并不控制上游流或下游元素)。

●     一组交互机制(如子例程调用、事件——调阅者、黑板)、他们确定元素将如何通过允许的拓扑进行协调。

架构模式和战术之间是什么关系呢?正如已经说明的那样,我们把战术看作是设计的基本“构建块”,并根据该战术创建架构模式和策略

 

posted @ 2020-05-12 13:18  李胜明  阅读(87)  评论(0编辑  收藏  举报