Architectural building blocks for plug-and-play system design
CBSE'06 Proceedings of the 9th international conference on Component-Based Software Engineering
Hi-index | 0.00 |
In software architecture, connectors are intended to represent the specific semantics of how components interact with each other, capturing some of the most important yet subtle aspects of a system. In practice, choosing the appropriate interaction semantics for the connectors in a system tends to be very difficult. The typical design process often involves not only a choice from commonly used interaction mechanisms, such as remote procedure call, message passing, and publish/subscribe, but also decisions about such details as the particular type and size of a message buffer or whether a communication should be synchronous or asynchronous. Given such a large design space, it is important that designers be able to get feedback about the appropriateness of their design decisions on interaction semantics, based on the correctness of the overall system behavior. In particular, one would like to be able to propose a design, and then use design-time verification to determine whether important properties of the system are satisfied. This practice may repeat until a desired design of the system is achieved.