超重口。。扩张系:架构风格与基于网络的软件架构设计

来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 12:35:46
 《架构风格与基于网络的软件架构设计》 架构元素包括处理、数据、连接元素。形式则是由元素的属性和元素之间的关系(即元素之上的约束)来定义,这些基本原理通过捕获架构风格、选择元素和形式的动机,为架构提供了底层的基础。 架构一旦建成,它将脱离其所给予的原理而独立存在。 按照设计,一个架构拥有一组属性,允许该架构满足甚至超出系统当前的需求。 对于基于网络的应用而言,数据元素在系统中的位置和移动常常是系统行为唯一至关重要的决定因素。 组件:一个组件是软件指令和内部状态的一个抽象单元,通过其接口提供对数据的转换。
连接器:一个连接器是对于组件之间通讯、协调或者合作进行仲裁的一种抽象机制。连接器的例子包括共享的表述、远程过程调用、消息传递协议和数据流。
数据:一个数据是组件通过一个连接器接收或者发送的信息元素。
配置:一个配置是在系统的运行期间组件、连接器和数据之间的架构关系结构。
风格:一种架构风格是一组写作的架构约束,这些约束限制了架构元素的角色和功能,一个在任何一个遵循该风格的架构中允许存在的元素之间的关系。强调对于元素和它们之间的关系的重要约束。这个定义允许风格仅仅聚焦于架构的连接器,或者组件接口的一些特定方面。 必须意识到一种约束的效果可能会抵消一些其他的约束所带来的好处。尽管如此,一个有经验的软件架构师仍然有可能为一个特定应用领域的架构约束建造一棵这样的继承树,然后使用这棵树来评估该领域应用的很多不同的架构设计。这样,建造一个继承树就为架构设计提供了一种评估机制。   关键关注点的架构属性:   性能:一个基于网络的应用的性能首先取决于应用的需求,然后是所选择的交互风格,然后是实现的架构,最后是每个组件的实现。    网络性能:吞吐量,负载,带宽;风格对于网络性能的影响是通过影响每个用户动作的交互的数量和数据元素的粒度来实现的。   用户可觉察的性能(主要度量手段是延迟,即响应速度,另外是完成时间);   网络效率;   可伸缩性;   简单性;   可修改性;   可进化性;   可扩展性;   可定制性;   可配置性;   可重用性;   可见性;   可移植性;   可靠性。