MaDcAr: An Abstract Model for Dynamic and Automatic (Re-)Assembling of Component-Based Applications

Dynamicity is an important requirement for critical software adaptation where a stop can be dangerous (e.g. for humans or environment) or costly (e.g. power plants or production lines). Adaptation at run-time is also required in context-aware applications where execution conditions often change. In this paper, we introduce MaDcAr, an abstract model of dynamic automatic adaptation engines for (re-)assembling component-based software. MaDcAr aims at being a conceptual framework for developing customizable engines reusable in multiple applications and execution contexts. Besides, MaDcAr provides a uniform solution for automating both the construction of application from scratch and the adaptation of existing component assemblies.

[1]  J. M. Troya,et al.  Component Interoperability , 2000 .

[2]  Thomas Ledoux,et al.  Towards a Framework for Self-adaptive Component-Based Applications , 2003, DAIS.

[3]  Thierry Coupaye,et al.  Recursive and Dynamic Software Composition with Sharing , 2002 .

[4]  Jan Bosch,et al.  WCOP '98 Summary of the Third International Workshop on Component-Oriented Programming , 1998, ECOOP Workshops.

[5]  Gregor Kiczales,et al.  Beyond the Black Box: Open Implementation , 1996, IEEE Softw..

[6]  Pierre-Yves Cunin,et al.  Adapting applications on the fly , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

[7]  Paola Inverardi,et al.  Correct and automatic assembly of COTS components: an architectural approach , 2002 .

[8]  Salim Hariri,et al.  A component-based programming model for autonomic applications , 2004, International Conference on Autonomic Computing, 2004. Proceedings..

[9]  Jean-Marc Jézéquel,et al.  Making Components Contract Aware , 1999, Computer.

[10]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[11]  Peyman Oreizy,et al.  Using object-oriented typing to support architectural design in the C2 style , 1996, SIGSOFT '96.

[12]  Peyman Oreizy,et al.  On the role of software architectures in runtime system reconfiguration , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[13]  Pierre Verbaeten,et al.  Automatic composition of systems from components with anonymous dependencies specified by semantic-unaware properties , 2003 .

[14]  Paola Inverardi,et al.  The role of architecture in components assembly , 2002 .

[15]  Vipin Kumar,et al.  Algorithms for Constraint-Satisfaction Problems: A Survey , 1992, AI Mag..

[16]  Armin B. Cremers,et al.  Towards Composition Management for Component-based Peer-to-Peer Architectures , 2004, SC.

[17]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..

[18]  Perry Alexander,et al.  SPARTACAS: automating component reuse and adaptation , 2004, IEEE Transactions on Software Engineering.

[19]  M. Weiser,et al.  Hot topics-ubiquitous computing , 1993 .

[20]  Michel Wermelinger,et al.  A graph based architectural (Re)configuration language , 2001, ESEC/FSE-9.

[21]  Paul C. Clements,et al.  A survey of architecture description languages , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[22]  Alexander L. Wolf,et al.  Joint Proceedings of the Second International Software Architecture Workshop (ISAW-2) and International Workshop on Multiple Perspectives in Software Development (Viewpoints '96) on SIGSOFT '96 workshops, ISAW '96, San Francisco, California, USA , 1996, ISAW/Viewpoints.

[23]  Michael Koch,et al.  Ubiquitous Computing , 2001, CSCW-Kompendium.

[24]  Gary T. Leavens,et al.  Concepts of behavioral subtyping and a sketch of their extension to component-based systems , 2000 .

[25]  Richard N. Taylor,et al.  A framework for classifying and comparing architecture description languages , 1997, ESEC '97/FSE-5.

[26]  Markus Endler,et al.  Programming generic dynamic reconfigurations for distributed applications , 1992, CDS.

[27]  Nenad Medvidovic ADLs and dynamic architecture changes , 1996, ISAW '96.

[28]  François Pachet,et al.  The framework approach for constraint satisfaction , 2000, CSUR.

[29]  David Garlan,et al.  Context is key , 2005, CACM.