Font size:      

Connector Generator (ConGen)

Overview of ConGen

Software connectors are typically used in component-based engineering to model and realize component interconnections. Connectors play an important role both at design time, when they allow for specifying the way components interact, and at runtime, when they actually implement the specified interactions in particular target environments. Connectors also help with deployment (both homogeneous and heterogeneous) by allowing for seamless distribution and overcoming incompatibilities between components and component systems by utilizing adaptors.

An important aspect of employing connectors is the amount of work connected with their use. In this context, to make connectors truly an asset, it is necessary to allow for generating their runtime implementations based on design-time specification. This is however a problem (mainly because of the semantic gap between the connector specification and its implementation), which has not been sufficiently addressed so far, especially when trying to use connectors in the context of heterogeneous deployment.

ConGen project is a part of SOFA 2 component system and it provides a technique of automatic generation of a connector implementation based on a high-level connector specification. The project focuses on building connectors in the scope of homogeneous and heterogeneous deployment, which means that the generated connectors are able to address distribution (by employing middleware), heterogeneity (by employing adaptors), and other services (e.g., encryption, monitoring, etc.). Moreover, the connector generator is extensible and supports different target component systems, middleware, etc. ConGen also introduces a platform independent model of connector runtime environment (which is important because many existing component systems lack runtime connector support).

More details about ConGen project and utilized methods are provided by the doctoral thesis "Tomas Bures: Generating Connectors for Homogeneous and Heterogeneous Deployment".


ConGen source code tree is a part of SOFA 2 SVN repository.

Related papers

Here you can find publications related to the ConGen project.

  • Bures T., Malohlava M., Hnetynka P.: Using DSL for Automatic Generation of Software Connectors, In Proceedings of ICCBSS 2008, Madrid, Spain, IEEE Computer Society Press, ISBN 0-7695-3091-5, pp. 138-147, Feb 2008, PDF
  • Bures T.: Generating Connectors for Homogeneous and Heterogeneous Deployment, Ph.D. Thesis, advisor: Frantisek Plasil, Sep 2006, PDF
  • Bulej L., Bures T.: Eliminating Execution Overhead of Disabled Optional Features in Connectors, in Proceedings of the 3rd European Workshop on Software Architectures (EWSA 2006), Nantes, France, Copyright (C) Springer-Verlag, Berlin, LNCS 4344, ISBN 978-3-540-69271-3, ISSN 0302-9743, pp. 50-65, Sep 2006, PDF
  • Bulej L., Bures T.: Using Connectors for Deployment of Heterogeneous Applications in the Context of OMG D&C Specification, in Proceedings of 1st International Conference on Interoperability of Enterprise Software and Applications (INTEROP-ESA 2005), Geneva, Switzerland, ISBN 1-84628-151-2, pp. 349-360, Feb 2005, PDF
  • Galik O., Bures T.: Generating Connectors for Heterogeneous Deployment, In Proceedings of the 5th international Workshop on Software Engineering and Middleware (Lisbon, Portugal, September 05 - 06, 2005). SEM '05. ACM Press, New York, NY, ISBN 1-59593-204-4, pp. 54-61., Sep 2005, PDF
  • Bures T., Plasil F.: Communication Style Driven Connector Configurations, Extended version of "Scalable Element-Based Connectors", Copyright (C) Springer-Verlag, Berlin, LNCS3026, ISBN 3-540-21975-7, ISSN 0302-9743, pp. 102-116, 2004, PDF