30 Questions
What is the primary role associated with connectors in software architecture?
Communication
What do connectors influence in a software system?
Non-functional system characteristics
What is an example of a communication mechanism supported by connectors?
Message passing
What do connectors separate in a software system?
Computation from communication
What type of specification may define a connector's properties?
Explicit protocol
What is a characteristic that connectors can mediate?
All of the above
What is the primary function of connectors in software architecture?
To enable interaction of independently developed components
What type of connector is responsible for mediating interaction and governing access to shared information?
Facilitator
What is the main purpose of a coordinator connector?
To separate control from computation
What is an example of a converter connector?
Adaptor
What is the primary function of a facilitator connector?
To enable interaction between independently developed components
What is the purpose of a linkage connector?
To enable data access between components
What is a characteristic of first-class entities in software architectures?
They have identity and describe all system interaction
What is the primary difference between connectors and components in software architectures?
Components are used for application-specific functionality, while connectors are used for interaction abstraction
What is a benefit of treating connectors independently in software architectures?
It separates computation from interaction
What is a characteristic of connectors that provide application-independent interaction mechanisms?
They are entitled to their own specifications and abstractions
What is a result of localizing interaction definition in software architectures?
Component interaction flexibility is increased
What is a benefit of using first-class connectors in software architectures at the system level?
It aids system analysis and testing
What is the purpose of Procedure Call Connectors in software architecture?
To facilitate communication between components through procedure calls
Which type of connector is responsible for handling events generated by components?
Event Connectors
What is the primary function of Arbitrator Connectors in software architecture?
To resolve conflicts between components
Which type of connector is used to manage data streams between components?
Stream Connectors
What is the primary function of Linkage Connectors in software architecture?
To provide a linkage mechanism for components
Which type of connector is used to provide a data access mechanism for components?
Data Access Connectors
What do unit interconnection models capture?
Dependency relationships between system units
What type of interconnection model is concerned with how system components are meant to be used?
Semantic interconnection
Which of the following is an example of a unit interconnection model?
Determining context of compilation
What type of relationships are captured by syntactic interconnection models?
Relations among syntactic elements of programming languages
What is a common application of syntactic interconnection models?
Static analysis
What do the three types of interconnection models (unit, syntactic, semantic) have in common?
They are all present in each system
Study Notes
Connectors in Software Architecture
- Connectors are first-class entities in software architecture that describe all system interactions and have their own specifications and abstractions.
Roles of Connectors
- Coordinators: determine computation control, control delivery of data, and separate control from computation.
- Converters: enable interaction of independently developed, mismatched components by converting data types, formats, and protocols.
- Facilitators: enable interaction of components intended to interoperate, govern access to shared information, and provide synchronization mechanisms.
Types of Connectors
- Procedure Call Connectors
- Event Connectors
- Data Access Connectors
- Linkage Connectors
- Stream Connectors
- Arbitrator Connectors
- Adaptors
- Wrappers
- Distributors
Characteristics of Connectors
- Can be classified based on their roles, types, and properties.
- Can be treated independently, allowing for localization of interaction definition, component independence, and flexibility.
- Can support software evolution, dynamism, and heterogeneity.
Software Interconnection Models
- Unit Interconnection: defines relations between system units, such as dependencies between components.
- Syntactic Interconnection: describes relations among syntactic elements of programming languages, such as variable definitions and method invocations.
- Semantic Interconnection: expresses how system components are meant to be used and captures how system components are actually used.
This quiz covers the concept of connectors in software architectures, including their role as first-class entities, interaction abstraction, and parameterization. It also explains the reasons for treating connectors independently in software design.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free