skip to main content
article

A graph based architectural (Re)configuration language

Authors Info & Claims
Published:01 September 2001Publication History
Skip Abstract Section

Abstract

For several different reasons, such as changes in the business or technological environment, the configuration of a system may need to evolve during execution. Support for such evolution can be conceived in terms of a language for specifying the dynamic reconfiguration of systems. In this paper, continuing our work on the development of a formal platform for architectural design, we present a high-level language to describe architectures and for operating changes over a configuration (i.e., an architecture instance), such as adding, removing or substituting components or interconnectons. The language follows an imperative style and builds on a semantic domain established in previous work. Therein, we model architectures through categorical diagrams and dynamic reconfiguration through algebraic graph rewriting.

References

  1. 1 R. Allen, R. Douence, and D. Garlan. Specifying and analyzing dynamic software architectures. In Fundamental Approaches to Software Engineering, volume 1382 of LNCS, pages 21-37. Springer-Verlag, 1998.]]Google ScholarGoogle ScholarCross RefCross Ref
  2. 2 R. Allen and D. Garlan. A formal basis for architectural connection. ACM TOSEM, 6(3):213-249, July 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 L. Andrade and J. L. Fiadeiro. Coordination technologies for managing information system evolution. In Proc. CAiSE'01, volume 2068 of LNCS, pages 374-387. Springer-Verlag, 2001.]] Google ScholarGoogle Scholar
  4. 4 C. Canal, E. Pimentel, and J. M. Troya. Specification and refinement of dynamic software architectures. In Software Architecture, pages 107-125. Kluwer Academic Publishers, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 K. M. Chandy and J. Misra. Parallel Program Design-A Foundation. Addison-Wesley, 1988.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 A. Corradini, U. Montanari, F. Rossi, H. Ehrig, R. Heckel, and M. Lowe. Algebraic approaches to graph transformation, part I: Basic concepts and double pushout approach. Technical Report TR-96-17, University of Pisa, Mar. 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 M. Endler. A language for implementing generic dynamic reconfigurations of distributed programs. In Proceedings of the 12th Brazilian Symposium on Computer Networks, pages 175-187, 1994.]]Google ScholarGoogle Scholar
  8. 8 G. Engels and R. Heckel. Graph transformation as unifying formal framework for system modeling and model evolution. In Proc. of ICALP, volume 1853 of LNCS, pages 127-150. Springer-Verlag, 2000.]] Google ScholarGoogle Scholar
  9. 9 J. L. Fiadeiro and A. Lopes. Semantics of architectural connectors. In Proceedings of TAPSOFT'97, volume 1214 of LNCS, pages 505-519. Springer-Verlag, 1997.]] Google ScholarGoogle Scholar
  10. 10 J. L. Fiadeiro, N. Marty-Oliet, T. Maibaum, J. Meseguer, and I. Pita. Towards a verification logic for rewriting logic. In Recent Trends in Algebraic Development Techniques, number 1827 in LNCS, pages 438-458. Springer-Verlag, 2000.]] Google ScholarGoogle Scholar
  11. 11 N. Francez and I. Forman. Interacting Processes. Addison-Wesley, 1996.]]Google ScholarGoogle Scholar
  12. 12 J. Gouveia, G. Koutsoukos, L. Andrade, and J. L. Fiadeiro. Tool support for coordination-based software evolution. In Proc. TOOLS 38, pages 184-196. IEEE Computer Society Press, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13 D. Hirsch, P. Inverardi, and U. Montanari. Modelling software architectures and styles with graph grammars and constraint solving. In Software Architecture, pages 127-143. Kluwer Academic Publishers, 1999.]] Google ScholarGoogle ScholarCross RefCross Ref
  14. 14 D. Hirsch, P. Inverardi, and U. Montanari. Reconfiguration of software architecture styles with name mobility. In Coordination Languages and Models, volume 1906 of LNCS, pages 148-163. Springer-Verlag, 2000.]] Google ScholarGoogle ScholarCross RefCross Ref
  15. 15 J. Kramer and J. Magee. The evolving philosophers problem: Dynamic change management. IEEE Transactions on Software Engineering, 16(11):1293-1306, Nov. 1990.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16 A. Lopes. Nao-determinismo e Composicionalidade na Especificacao de Sistemas Reactivos. PhD thesis, Universidade de Lisboa, Jan. 1999.]]Google ScholarGoogle Scholar
  17. 17 A. Lopes and J. L. Fiadeiro. Using explicit state to describe architectures. In Proceedings of Fundamental Approaches to Software Engineering, number 1577 in LNCS, pages 144-160. Springer-Verlag, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18 J. Magee and J. Kramer. Dynamic structure in software architectures. In Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 3-14. ACM Press, 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19 J. Magee, J. Kramer, and D. Giannakopoulou. Behaviour analysis of software architectures. In Software Architecture, pages 35-50. Kluwer Academic Publishers, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20 N. Medvidovic. ADLs and dynamic architecture changes. In Joint Proceedings of the SIGSOFT'96 Workshops, pages 24-27. ACM Press, 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21 N. R. Mehta, N. Medvidovic, and S. Phadke. Towards a taxonomy of software connectors. In Proc. of the 22nd Intl. Conf. on Software Engineering, pages 178-187. ACM Press, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22 D. L. Metayer. Describing software architecture styles using graph grammars. IEEE Transactions on Software Engineering, 24(7):521-553, July 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23 K. Moazami-Goudarzi. Consistency Preserving Dynamic Reconfiguration of Distributed Systems. PhD thesis, Imperial College London, Mar. 1999.]]Google ScholarGoogle Scholar
  24. 24 R. T. Monroe. Capturing software architecture design expertise with Armani. Technical Report CMU-CS-98-163, School of Computer Science, Carnegie Mellon University, Oct. 1998.]]Google ScholarGoogle Scholar
  25. 25 R. T. Monroe, D. Garlan, and D. Wile. Acme StrawManual, Nov. 1997.]]Google ScholarGoogle Scholar
  26. 26 P. Oreizy. Issues in the runtime modification of software architectures. Technical Report UCI-ICS-TR-96-35, Department of Information and Computer Science, University of California, Irvine, Aug. 1996.]]Google ScholarGoogle Scholar
  27. 27 P. Rodgers. Constructs for programming with graph rewrites. In Joint APPLIGRAPH and GETGRATS Workshop on Graph Transformation Systems, number 2000-2 in Forschungsberichte des Fachbereichs Informatik, pages 59-66. Technische Universitat Berlin, 2000.]]Google ScholarGoogle Scholar
  28. 28 G. Taentzer, M. Goedicke, and T. Meyer. Dynamic change management by distributed graph transformation: Towards configurable distributed systems. In Proc. 6th Int. Workshop on Theory and Application of Graph Transformation, 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 29 M. Wermelinger and J. L. Fiadeiro. Algebraic software architecture reconfiguration. In Software Engineering-ESEC/FSE'99, volume 1687 of LNCS, pages 393-409. Springer-Verlag, 1999.]] Google ScholarGoogle Scholar
  30. 30 M. Wermelinger and J. L. Fiadeiro. A graph transformation approach to run-time software architecture reconfiguration. Science of Computer Programming, 2001. To appear.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A graph based architectural (Re)configuration language

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGSOFT Software Engineering Notes
        ACM SIGSOFT Software Engineering Notes  Volume 26, Issue 5
        Sept. 2001
        329 pages
        ISSN:0163-5948
        DOI:10.1145/503271
        Issue’s Table of Contents
        • cover image ACM Conferences
          ESEC/FSE-9: Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
          September 2001
          329 pages
          ISBN:1581133901
          DOI:10.1145/503209
          • Conference Chairs:
          • A. Min Tjoa,
          • Volker Gruhn

        Copyright © 2001 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 September 2001

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader