架构风格的来源和种类
架构风格的概念由MaryShaw和DavidGarlan在他们所著的《SoftwareArchitecture:PerspectiveonanEmergingDiscipline》(Shaw1996)中进行了讨论。
架构风格根据结构组织的模式定义系统种类。更具体地说,架构风格定义组件和连接器类型的词汇及它们如何进行组合的一组约束。(Shaw1996)
架构风格整体应用于系统,由此,它对架构有很大的影响。另外,一个系统可能存在不止一种架构风格。面对服务的架构(SOA)可以看作是一种架构风格。同时也存在其他的一些架构风格的例子:
1)客户端——服务器(Client-Server)。这个广泛使用的风格支持客户端处理(在用户的工作站上)和服务器处理(在一个远程的服务器上,例如使用一个数据库)分离(分布式)。
2)基于事件(Event-based)。这个风格与观察者模型(Observer)相似,在这个模式中,它提出一个发布——订阅的工作方式,在这个方式中,一个或多个观察者订阅系统中发生的特定事件,当这个事件发生时,一个对象就发布一个通知。然而,这个风格没有局限于架构内的特定实例,从战略上它可以应用于架构的很大范围中。
3)管道和过滤器。这个风格由一系列提供数据转换的过滤器和连接这些过滤器的管道组成。过滤器风格的例子包括编译器、信号处理和使用于金融市场的直通式(STP,StraightThroughProcessing)解决方案的事件元素,在直通式解决方案中,资本市场的交易过程和支付业务都电子化操作。这个概念也用于能源部门的电、油和气的贸易中。