AGILE: Software Architecture for Mobility

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2755)


Architecture-based approaches have been promoted as a means of controlling the complexity of system construction and evolution, in particular for providing systems with the agility required to operate in turbulent environments and to adapt very quickly to changes in the enterprise world. Recent technological advances in communication and distribution have made mobility an additional factor of complexity, one for which current architectural concepts and techniques can be hardly used. The AGILE project is developing an architectural approach in which mobility aspects can be modelled explicitly and mapped on the distribution and communication topology made available at physical levels. The whole approach is developed over a uniform mathematical framework based on graph-oriented techniques that support sound methodological principles, formal analysis, and refinement. This paper describes the AGILE project and some of the results gained during the first project year.


Software Architecture Class Diagram Operational Semantic Graph Transformation Activity Diagram 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Astesiano, E., Bidoit, M., Kirchner, H., Krieg-Brückner, B., Mosses, P.D., Sannella, D., Tarlecki, A.: CASL: The common algebraic specification language. Theoretical Computer Science (2003) (to appear), See also the CASL Summary at
  2. 2.
    Baldan, P., Corradini, A., König, B.: Static analysis of distributed systems with mobility specified by graph grammars – A case study. In: Ehrig, H., Krämer, B., Ertas, A. (eds.) Integrated design and Process Technology. Society for Design and Process Science (2002)Google Scholar
  3. 3.
    Baumeister, H., Koch, N., Kosiuczenko, P., Wirsing, M.: Extending activity diagrams to model mobile systems. In: Aksit, M., Mezini, M., Unland, R. (eds.) NODe 2002. LNCS, vol. 2591, pp. 278–293. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  4. 4.
    Bettini, L., Loreti, M., Pugliese, R.: Structured nets in Klaim. In: Proc. of the 2000 ACM Symposium on Applied Computing (SAC 2000), Special Track on Coordination Models, Languages and Applications, pp. 174–180 (2000)Google Scholar
  5. 5.
    Bhat, G., Cleaveland, R., Grumberg, O.: Efficient on-the-fly model checking for CTL*. In: Proceedings of Symposium on Logics in Computer Science, pp. 388–397. IEEE, Los Alamitos (1995)Google Scholar
  6. 6.
    Chandy, K., Misra, J.: Parallel Program Design — A Foundation. Addison-Wesley, Reading (1988)zbMATHGoogle Scholar
  7. 7.
    Corradini, A., Heckel, R.: Graph transformation and visual modelling techniques. In: Rolim, J.D.P., Broder, A.Z., Corradini, A., Gorrieri, R., Heckel, R., Hromkovic, J., Vaccaro, U., Wells, J.B. (eds.) ICALP 2000. Proceedings in Informatics, vol. 8, pp. 357–486. Carleton Scientific (2000)Google Scholar
  8. 8.
    Corradini, A., Heckel, R., Montanari, U.: Graphical Operational Semantics. In: Rolim, et al. [7], pp. 357–486Google Scholar
  9. 9.
    Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., Löwe, M.: Algebraic Approaches to Graph Transformation I: Basic Concepts and Double Pushout Approach. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. 1. World Scientific, Singapore (1997)Google Scholar
  10. 10.
    Corradini, A., Rossi, F.: Hyperedge replacement jungle rewriting for term rewriting systems and logic programming. Theoretical Computer Science 109, 7–48 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    De Nicola, R., Ferrari, G.-L., Pugliese, R.: KLAIM: A kernel language for agents interaction and mobility. IEEE Transactions on Software Engineering 5(24), 315–330 (1998)CrossRefGoogle Scholar
  12. 12.
    Engels, G., Hausmann, J.H., Heckel, R., Sauer, S.: Dynamic meta modeling: A graphical approach to the operational semantics of behavioural diagrams in UML. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 323–337. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  13. 13.
    Fantechil, A., Gnesi, S., Mazzanti, F., Pugliese, R., Tronci, E.: A symbolic model checker for ACTL. In: Hutter, D., Traverso, P. (eds.) FM-Trends 1998. LNCS, vol. 1641. Springer, Heidelberg (1999)Google Scholar
  14. 14.
    Fernandez, J.-C., Jard, D., Jéron, T., Viho, C.: Using on-the-fly verification techniques for the generation of test suites. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 348–359. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  15. 15.
    Ferrari, G.L., Montanari, U., Tuosto, E.: Graph-based models of internetworking systems. In: Haeberer, A. (ed.) Formal Methods at the Crossroads: from Panaces to Foundational Support. LNCS. Springer, Heidelberg (2003)Google Scholar
  16. 16.
    Fiadeiro, J.L., Lopes, A., Wermelinger, M.: A mathematical semantics for architectural connectors. In: Backhouse, R., Gibbons, J. (eds.) Generic Programming. LNCS, vol. 2793, Springer, Heidelberg (2003)CrossRefGoogle Scholar
  17. 17.
    Fiadeiro, J.L., Maibaum, T.: Categorical semantics of parallel program design. Science of Computer Programming 28, 111–138 (1997)CrossRefzbMATHGoogle Scholar
  18. 18.
    Gadducci, F., Montanari, U.: The Tile Model. In: Plotkin, G., Stirling, C., Tofte, M. (eds.) Proof, Language and Interaction: Essays in Honour of Robin Milner. MIT Press, Cambridge (2000)Google Scholar
  19. 19.
    Gelernter, D.: Generative communication in Linda. ACM Transactions on Programming Languages and Systems, 80–112 (1985)Google Scholar
  20. 20.
    Gnesi, S., Mazzanti, F.: On the fly model checking of communicating UML State Machines. Technical report, ISTI, (2003) (submitted for publication)Google Scholar
  21. 21.
    Gogolla, M., Ziemann, P., Kuske, S.: Towards an integrated graph based semantics for UML. In: Bottoni, P., Minas, M. (eds.) Electronic Notes in Theoretical Computer Science, vol. 72. Elsevier Science, Amsterdam (2003)Google Scholar
  22. 22.
    Gogolla, M.: Graph transformations on the UML metamodel. In: ICALP Workshop on Graph Transformations and Visual Modeling Techniques, pp. 359–371. Carleton Scientific (2000)CrossRefGoogle Scholar
  23. 23.
    Heckel, R., Küster, J.M., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  24. 24.
    Hirsch, D., Montanari, U.: Synchronized hyperedge replacement with name mobility. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 121–136. Springer, Heidelberg (2001)Google Scholar
  25. 25.
    Hirsch, D.: Graph Transformation Models for Software Architecture Styles. PhD thesis, Universidad de Buenos Aires, Argentina (2003) (to appear)Google Scholar
  26. 26.
    König, B., Montanari, U.: Observational Equivalence for Synchronized Graph Rewriting. In: Kobayashi, N., Pierce, B.C. (eds.) TACS 2001. LNCS, vol. 2215, pp. 145–164. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  27. 27.
    Kosiuczenko, P.: Sequence diagrams for mobility. In: Krogstie, J. (ed.) Proc. of MobIMod workshop, Tampere, Finland. LNCS. Springer, Berlin (2002) (to appear)Google Scholar
  28. 28.
    Kozen, D.: Results on the propositional μcalculus. Theoretical Computer Science 27 (1983)Google Scholar
  29. 29.
    Kuske, S., Gogolla, M., Kollmann, R., Kreowski, H.J.: An integrated semantics for UML class, object and state diagrams based on graph transformation. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 11–28. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  30. 30.
    Kuske, S.: A formal semantics of UML state machines based on structured graph transformation. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 241–256. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  31. 31.
    Latella, D., Majzik, I., Massink, M.: Towards a formal operational semantics of UML statechart diagrams. In: Proceedings of IFIP TC6/WG6.1 FMOODS 1999. Kluwer Academic Publishers, Dordrecht (1999)Google Scholar
  32. 32.
    Merz, S., Wirsing, M., Zappe, J.: A spatio-temporal logic for the specification and refinement of mobile systems. In: Pezzé, M. (ed.) FASE 2003. LNCS, vol. 2621, pp. 87–101. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  33. 33.
    Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)zbMATHGoogle Scholar
  34. 34.
    OMG. Unified Modeling Language (UML), version 1.5 (March 2003),
  35. 35.
    Pattinson, D., Wirsing, M.: Making components move: A separation of concerns approach. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 487–507. Springer, Heidelberg (2003) (to appear)CrossRefGoogle Scholar
  36. 36.
    Plump, D.: Term graph rewriting. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing by Graph Transformation. Applications, Languages, and Tools, vol. 2. World Scientific, Singapore (1999)Google Scholar
  37. 37.
    von der Beeck, M.: Formalization of UML-statecharts. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 406–421. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  38. 38.
    Wieringa, T., Broersen, J.: A minimal transition system semantics for lightweight class and behavioral diagrams. In: ICSE 1998 Workshop on Precise Semantics for Software Modeling Techniques (1998)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  1. 1.Institut für InformatikLudwig-Maximilians-Universität MünchenGermany
  2. 2.Dipartimento di InformaticaUniversità di PisaItaly
  3. 3.Dipartimento di Sistemi e InformaticaUniversità di FirenzeItaly
  4. 4.Istituto di Scienze e Tecnologie dell’Informazione ”A. Faedo” CNR PisaItaly
  5. 5.Faculdade de Ciências da Universidade de LisboaPortugal
  6. 6.ATX Software SAPortugal
  7. 7.Institute of InformaticsWarsaw UniversityPoland
  8. 8.Dipartimento di InformaticaUniversità di VeneziaItaly

Personalised recommendations