软件体系结构Ch003ConnectorsI

上传人:E**** 文档编号:91205695 上传时间:2019-06-26 格式:PPT 页数:27 大小:1.24MB
返回 下载 相关 举报
软件体系结构Ch003ConnectorsI_第1页
第1页 / 共27页
软件体系结构Ch003ConnectorsI_第2页
第2页 / 共27页
软件体系结构Ch003ConnectorsI_第3页
第3页 / 共27页
软件体系结构Ch003ConnectorsI_第4页
第4页 / 共27页
软件体系结构Ch003ConnectorsI_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《软件体系结构Ch003ConnectorsI》由会员分享,可在线阅读,更多相关《软件体系结构Ch003ConnectorsI(27页珍藏版)》请在金锄头文库上搜索。

1、Software Connectors,Software Architecture,2,What is a Software Connector?,Architectural element that models Interactions among components Rules that govern those interactions Simple interactions Procedure calls Shared variable access Complex & semantically rich interactions Client-server protocols D

2、atabase access protocols Asynchronous event multicast Each connector provides Interaction duct(s) Transfer of control and/or data,3,Where are Connectors in Software Systems?,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John

3、Wiley & Sons, Inc. Reprinted with permission.,4,Implemented vs. Conceptual Connectors,Connectors in software system implementations Frequently no dedicated code Frequently no identity Typically do not correspond to compilation units Distributed implementation Across multiple modules Across interacti

4、on mechanisms,5,Implemented vs. Conceptual Connectors (contd),Connectors in software architectures First-class entities Have identity Describe all system interaction Entitled to their own specifications & abstractions,6,Reasons for Treating Connectors Independently,Connector Component Components pro

5、vide application-specific functionality Connectors provide application-independent interaction mechanisms Interaction abstraction and/or parameterization Specification of complex interactions Binary vs. N-ary Asymmetric vs. Symmetric Interaction protocols,7,Treating Connectors Independently (contd),

6、Localization of interaction definition Extra-component system (interaction) information Component independence Component interaction flexibility,8,Benefits of First-Class Connectors,Separate computation from interaction Minimize component interdependencies Support software evolution At component-, c

7、onnector-, & system-level Potential for supporting dynamism Facilitate heterogeneity Become points of distribution Aid system analysis & testing,9,An Example of Explicit Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 200

8、8 John Wiley & Sons, Inc. Reprinted with permission.,10,An Example of Explicit Connectors (contd),?,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,11,Software Connector Roles,

9、Locus of interaction among set of components Protocol specification (sometimes implicit) that defines its properties Types of interfaces it is able to mediate Assurances about interaction properties Rules about interaction ordering Interaction commitments (e.g., performance) Roles Communication Coor

10、dination Conversion Facilitation,12,Connectors as Communicators,Main role associated with connectors Supports Different communication mechanisms e.g. procedure call, RPC, shared data access, message passing Constraints on communication structure/direction e.g. pipes Constraints on quality of service

11、 e.g. persistence Separates communication from computation May influence non-functional system characteristics e.g. performance, scalability, security,13,Connectors as Coordinators,Determine computation control Control delivery of data Separates control from computation Orthogonal to communication,

12、conversion, and facilitation Elements of control are in communication, conversion and facilitation,14,Connectors as Converters,Enable interaction of independently developed, mismatched components Mismatches based on interaction Type Number Frequency Order Examples of converters Adaptors Wrappers,15,

13、Connectors as Facilitators,Enable interaction of components intended to interoperate Mediate and streamline interaction Govern access to shared information Ensure proper performance profiles e.g., load balancing Provide synchronization mechanisms Critical sections Monitors,16,Connector Types,Procedu

14、re call Data access Event Stream Linkage Distributor Arbitrator Adaptor,17,A Framework for Classifying Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,18,Procedure C

15、all Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,19,Event Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic

16、, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,20,Data Access Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,21,Linkage Connectors,Software Architecture: Foundations, Theory, and Practice; Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy; 2008 John Wiley & Sons, Inc. Reprinted with permission.,22,Stre

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号