Author(s):  
Dietmar Schreiner ◽  
Karl M. Go¨schka

Interaction in distributed component based software-architectures can become a rather complex and error prone issue. As it is good practice to keep application concerns separated from infrastructural ones, component based applications typically rely on communication middleware to cope with matters of distribution and heterogeneity. Unfortunately, generic middleware tends to be monolithic, heavyweight software, which is unacceptable in resource constrained embedded systems. Communication middleware for distributed embedded systems has to be custom tailored to the application’s interaction needs and therefore shall be as lightweight as possible. By applying the component paradigm to the communication middleware, a practical methodology can be defined, that allows the middleware’s automatic generation from the application’s architectural models and structural designs of explicit component connectors with a well defined set of prefabricated basic building blocks—so called communication primitives. This paper contributes by specifying the most common structural designs for explicit connectors within the automotive domain and thereby, in addition identifies a set of classes of automotive communication primitives. Thus this paper provides the sound foundation for automatic, model driven middleware synthesis by specifying all necessary basic modules.


Author(s):  
Nenad Medvidovic ◽  
Eric M. Dashofy ◽  
Richard N. Taylor

Software architectures promote development focused on modular functional building blocks (components), their interconnections (configurations), and their interactions (connectors). Since architecture-level components often contain complex functionality, it is reasonable to expect that their interactions will be complex as well. Middleware technologies such as CORBA, COM, and RMI provide a set of predefined services for enabling component composition and interaction. However, the potential role of such services in the implementations of software architectures is not well understood. In practice, middleware can resolve various types of component heterogeneity — across platform and language boundaries, for instance — but also can induce unwanted architectural constraints on application development. We present an approach in which components communicate through architecture-level software connectors that are implemented using middleware. This approach preserves the properties of the architecture-level connectors while leveraging the beneficial capabilities of the underlying middleware. We have implemented this approach in the context of a component- and message-based architectural style called C2 and demonstrated its utility in the context of several diverse applications. We argue that our approach provides a systematic and reasonable way to bridge the gap between architecture-level connectors and implementation-level middleware packages.


Sign in / Sign up

Export Citation Format

Share Document