Chapter 6 - Interoperability Flashcards
what is interoperability?
the degree to which two or more systems can usefully exchange meaningful information
What is the general scenario “Source”
a system
What is the general scenario “Stimulus”
a request to exchange information among systems
What is the general scenario “Artifact”
the systems that wish to exchange information
What is the general scenario “Environment”
system(s) wishing to interoperate are discovered at runtime or known prior to runtime
What are the 3 general scenario “responses”
- the request is rejected and the appropriate entities are notified
- the request is accepted and the information is exchanged successfully
- the request is logged by one or more of the involved systems
What are the 2 general scenario “response measures”
- percentage of information exchanges correctly processed
- percentage of information exchanges correctly rejected
2 concepts that must be true for two or more systems to usefully exchange information
- know about each other
- exchange information in a semantically meaningful fashion
2 aspects of an information exchange that make it semantically meaningful
- provides services in the correct sequence
- modifies information produced by one actor to a form acceptable to the second actor
2 categories of interoperability tactics
- locate
- manage interface
1 type of locate tactic
discover service
What does it mean to discover service?
to locate a service through searching a known directory service
could be multiple levels of indentation
2 types of manage interface tactics?
- orchestrate
- tailor interface
what does it mean to orchestrate?
to use a control mechanism to coordinate, manage and sequence the invocation of services
Orchestration is used when systems must interact in a complex fashion to accomplish a complex task
What does it mean to tailor the interface?
to add or remove capabilities to an interface such as translation, buffering, or data-smoothing
3 important aspects of allocation of responsibilities with regards to interoperability
- determine which of the system responsibilities will need to interoperate with other systems
- ensure the responsibilities have been allocated to detect a request to interoperate with known or unknown external systems
- ensure responsibilities have been allocated to handle any of the 3 possible responses
2 important aspects of the coordination model with regards to interoperability
- ensure coordination mechanisms can meet the critical quality attribute requirements (volume, timeliness, concurrency, and jitter of messages in system)
- ensure all of the systems under your control make assumptions about protocols and underlying networks that are consistent with the systems not under your control
2 important aspects of the data model with regards to interoperability
- determine syntax and semantics of data abstractions that may be exchanged among systems
- ensure that these data abstractions are consistent with the data from the interoperating systems.
1 important aspect of the mapping among architectural elements with regards to interoperability
the mapping of components to processors so that components that communicate externally can reach the network
3 important aspects of resource management with regards to interoperability
- ensure that interoperation with another system can never exhaust critical system resources
- ensure that the resource load imposed by the communication requirements of interoperation is acceptable
- ensure that an adequate arbitration policy is in place for sharing of resources
4 important aspects of binding time with regards to interoperability
- determine the system that may interoperate and when they become known to each other
- ensure a good policy for dealing with known and unknown external systems
- ensure that it has mechanisms for rejecting unacceptable bindings
- ensure that mechanisms will support the discovery of relevant new services or protocols
2 important aspects of the “choice of technology” with regards to interoperability
- ensure the interoperability effects of the interface boundary for any of the chosen technologies
- can specific choices of technology be used to satisfy interoperability requirements