Abstract
An important issue in the area of software architecture is the specification of reconfiguration and mobility of systems. This paper presents an approach for the specification of software architecture styles using hyperedge replacement systems and for their dynamic reconfiguration using constraint solving. A system architecture is represented as a graph where edges are components and nodes are ports of communication. Then, a style is represented as a graph grammar where the instances of the style are the graphs generated by the corresponding grammar. The construction and dynamic evolution of the style are represented as context-free productions and graph rewriting. To model reconfigurations we allow the declaration, creation and matching of new nodes (i.e. ports of communication) and use constraint solving over the productions of the style grammar for achieving synchronization. In this way complex evolutions can be specified in a more expressive and compact form than using π-calculus style languages for mobility.
Partially supported by ARTES Project, PIC 11-00000-01856, ANPCyT, TW72, UBACyT.
Partially supported by MURST project Software Architectures and Languages to Coordinate Distributed Mobile Components.
Partially supported by CNR Projects Metodi per Sistemi Connessi mediante Reti and GNIM Nuovi Paradigmi di Calcolo: Linguaggi e Modelli; by MURST project Theory of Concurrency and Higher Order and Types; by TMR Network GETGRATS; and by Esprit Working Groups APPLIGRAPH and COORDINA.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Corradini, A., Degano, P., Montanari, U.: Specifying Highly Concurrent Data Structure Manipulation. In Bucci, G. and Valle, G., editors, COMPUTING 85:A Broad Perspective of Concurrent Developments. Elsevier Science, 1985.
Degano, P., Montanari, U.: A Model of Distributed Systems Based on Graph Rewriting. Journal of the ACM Vol. 34, N2, April 1987, pp. 411–449.
Hirsch, D., Montanari, U.: Consistent Transformations for Software Architecture Styles of Distributed Systems. Proceedings of the Workshop on (formal methods applied to) Distributed Systems, Gheorghe Stefanescu, Ed., Iasi, Rumania, September 2–3. Electronic Notes in Theoretical Computer Science, Vol. 28, pp. 23–40, 1999. http://www.elsevier.nl/locate/entcs/volume28.html.
Hirsch, D., Montanari, U.: Higher-Order Hyperedge Replacement Systems and their Transformations: Specifying Software Architecture Reconfigurations. Proceedings of the Joint APPLIGRAPH/GETGRATS Workshop on Graph Transformation Systems (GRATRA 2000). Satellite Event of ETAPS 2000, H. Ehrig, G. Taentzer, Eds., Berlin, Germany, March 25–27. Technical Report of Computer Science Department/TU Berlin, No. 2000-02, pp. 215–223, 2000.
Hirsch, D., Inverardi, P., Montanari, U.: Graph Grammars and Constraint Solving for Software Architecture Styles. Proceedings of the Third International Software Architecture Workshop, Orlando, E.E.U.U., November 1–2, 1998.
Hirsch, D., Inverardi, P., Montanari, U.: Modeling Software Architectures and Styles with Graph Grammars and Constraint Solving. In Proceedings of the First Working IFIP Conference on Software Architecture, San Antonio, Texas, E.E.U.U., February 22–24, 1999.
Inverardi, P., Muccini, H.: The Teleservices and Remote Medical Care System (TRMCS). Workshop Case Study. 10th International Workshop on Software Specification and Design (IWSSD-10), San Diego, California, November 5–7, 2000. http://www.ics.uci.edu/IRUS/iwssd/cfp.html
Kramer, J., Magee, J.: The Evolving Philosophers Problem: Dynamic Change Management. IEEE Transactions on Software Engineering, SE-16(11), pp. 1293–1306, 1990.
Le M’etayer, D.: Describing Software Architecture Styles using Graph Grammars. IEEE Transactions on Software Engineering. Vol. 24, Nr 7, July 1998.
Mackworth, A.K.: Encyclopedia of IA, chapter Constraint Satisfaction. Springer Verlag, 1988.
Magee, J., Kramer, J.: Dynamic structure in software architectures. Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, ACM Software Engineering Notes, 1996.
Magee, J., Kramer, J.: Self organising software architectures. Proceedings of the Second International Software Architecture Workshop, 1996.
Magee, J., Kramer, J.: Analysing Dynamic Change in Software Architectures: A case study. Proceedings of the IEEE 4th International Conference on Configurable Distributed Systems (CDS 98), pp. 91–100, Annapolis, May 1998.
Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes (parts I and II). Information and Computation, 100:1–77, 1992.
Montanari, U. and Rossi, F.: Graph Rewriting, Constraint Solving and Tiles for Coordinating Distributed Systems. Applied Categorical Structures, Vol. 7, pp. 333–370, 1999.
Montanari, U., Pistore, M. and Rossi, F.: Modeling Concurrent, Mobile and Coordinated Systems via Graph Transformations. In: H. Ehrig, H.-J. Kreowski, U. Montanari and G. Rozenberg, Eds., Handbook of Graph Grammars and Computing by Graph Transformation, Vol. 3: Concurrency, Parallelism, and Distribution, World Scientific, 1999.
Oreizy, P., Medvidovic, N., Taylor, R.: Architectural-Based Runtime Software Evolution. Proceedings of the International Conference on Software Engineering (ICSE’98), Kyoto, Japan, 1998.
Rozenberg, G., editor: Handbook of Graph Grammars and Computing by Graph Transformation: Foundations, volume I. World Scientific, 1996.
Sangiorgi, D.: π-calculus, Internal Mobility and Agent-passing Calculi. Theoretical Computer Science 167(2), 1996.
Taentzer, G., Goedicke, M., Meyer, T.: Dynamic Change Management by Distributed Graph Transformation: Towards Configurable Distributed Systems. Proc. 6th Int. Workshop on Theory and Application of Graph Transformation, 1998.
Victor B.: The Fusion Calculus: Expressiveness and Symmetry in Mobile Processes. PhD Thesis, Uppsala University, Dept. of Computer Science, June 1998.
Wermelinger, M., Fiadeiro, J.: Algebraic Software Architecture Reconfiguration. Software Engineering-ESEC/FSE’99, LNCS Vol. 1687, Springer-Verlag, pp. 393–409, 1999.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hirsch, D., Inverardi, P., Montanari, U. (2000). Reconfiguration of Software Architecture Styles with Name Mobility. In: Porto, A., Roman, GC. (eds) Coordination Languages and Models. COORDINATION 2000. Lecture Notes in Computer Science, vol 1906. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45263-X_10
Download citation
DOI: https://doi.org/10.1007/3-540-45263-X_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-41020-1
Online ISBN: 978-3-540-45263-8
eBook Packages: Springer Book Archive