A graph transformation approach to software architecture reconfiguration

The ability of reconfiguring software architectures in order to adapt them to new requirements or a changing environment has been of growing interest. We propose a uniform algebraic approach that improves on previous formal work in the area due to the following characteristics. First, components are written in a high-level program design language with the usual notion of state. Second, the approach deals with typical problems such as guaranteeing that new components are introduced in the correct state (possibly transferred from the old components they replace) and that the resulting architecture conforms to certain structural constraints. Third, reconfigurations and computations are explicitly related by keeping them separate. This is because the approach provides a semantics to a given architecture through the algebraic construction of an equivalent program, whose computations can be mirrored at the architectural level.

[1]  David Garlan,et al.  Specifying and Analyzing Dynamic Software Architectures , 1998, FASE.

[2]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

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

[4]  Dietmar Wolz,et al.  Colimit library for graph transformations and algebraic development techniques , 1998 .

[5]  Ira R. Forman,et al.  Interacting processes - a multiparty approach to coordinated distributed processing , 1996 .

[6]  Michel Wermelinger,et al.  Algebraic software architecture reconfiguration , 1999, ESEC/FSE-7.

[7]  Michel Wermelinger,et al.  Semantics of Transient Connectors in Rewriting Logic , 1998 .

[8]  José M. Troya,et al.  Specification and Refinement of Dynamic Software Architectures , 1999, WICSA.

[9]  Peyman Oreizy Issues in the Runtime Modification of Software Architectures , 1997 .

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

[11]  Francesca Rossi,et al.  Graph Processes , 1996, Fundam. Informaticae.

[12]  Dimitra Giannakopoulou,et al.  Behaviour Analysis of Software Architectures , 1999, WICSA.

[13]  José Luiz Fiadeiro,et al.  Categorical Semantics of Parallel Program Design , 1997, Sci. Comput. Program..

[14]  José Luiz Fiadeiro,et al.  Semantics of Architectural Connectors , 1997, TAPSOFT.

[15]  José Luiz Fiadeiro,et al.  Tool support for coordination-based software evolution , 2001, Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 38.

[16]  Paola Inverardi,et al.  Reconfiguration of Software Architecture Styles with Name Mobility , 2000, COORDINATION.

[17]  Gruia-Catalin Roman,et al.  Compositional Programming Abstractions for Mobile Computing , 1998, IEEE Trans. Software Eng..

[18]  José Luiz Fiadeiro,et al.  Towards a Verification Logic for Rewriting Logic , 1999, WADT.

[19]  Michel Wermelinger,et al.  Connectors for Mobile Programs , 1998, IEEE Trans. Software Eng..

[20]  Miguel Alexandre Wermelinger Specification of software architecture reconfiguration , 1999 .

[21]  Detlef Plump,et al.  On Termination of Graph Rewriting , 1995, WG.

[22]  Daniel Le Métayer Describing Software Architecture Styles Using Graph Grammars , 1998, IEEE Trans. Software Eng..

[23]  Dewayne E. Perry An Overview of the State of the Art in Software Architecture , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[24]  Doug Waugh Description of EDCS technology clusters , 1997, SOEN.

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

[26]  Gabriele Taentzer,et al.  Dynamic Change Management by Distributed Graph Transformation: Towards Configurable Distributed Systems , 1998, TAGT.

[27]  Reiko Heckel,et al.  Graph Grammars with Negative Application Conditions , 1996, Fundam. Informaticae.

[28]  Michel Wermelinger Towards a chemical model for software architecture reconfiguration , 1998, IEE Proc. Softw..

[29]  Alexander L. Wolf Succeedings of the second international software architecture workshop (ISAW-2) , 1997, SOEN.

[30]  Gruia-Catalin Roman,et al.  Mobile UNITY: reasoning and specification in mobile computing , 1997, TSEM.

[31]  Michel Wermelinger,et al.  Superposing connectors , 2000, Tenth International Workshop on Software Specification and Design. IWSSD-10 2000.

[32]  Jeff Magee,et al.  Dynamic structure in software architectures , 1996, SIGSOFT '96.