Abstract
We illustrate two ways to address the specification, modelling and analysis of dynamic software architectures using: i) ordinary typed graph transformation techniques implemented in Alloy; ii) a process algebraic presentation of graph transformation implemented in Maude. The two approaches are compared by showing how different aspects can be tackled, including representation issues, modelling phases, property specification and analysis.
Research partially supported by the EU within the FETPI Global Computing, project IST-2005-016004 SENSORIA (Software Engineering for Service-Oriented Overlay Computers) and by the Italian FIRB Project Tocai.it.
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
Aguirre, N., Maibaum, T.S.E.: Hierarchical temporal specifications of dynamically reconfigurable component based systems. Electr. Notes Theor. Comput. Sci. 108, 69–81 (2004)
Garlan, D., Allen, R.B., Douence, R.: Specifying and analyzing dynamic software architectures. In: Astesiano, E. (ed.) FASE 1998. LNCS, vol. 1382, Springer, Heidelberg (1998)
Baresi, L., Heckel, R., Thöne, S., Varró, D.: Style-based refinement of dynamic software architectures. In: Proceedings of WICSA 2004, pp. 155–166. IEEE Computer Society Press, Los Alamitos (2004)
Baresi, L., Spoletini, P.: On the use of Alloy to analyze graph transformation systems. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 306–320. Springer, Heidelberg (2006)
Bruni, R., Bucchiarone, A., Gnesi, S., Melgratti, H.: Modelling dynamic software architectures using typed graph grammars. In: Proceedings of GTVC 2007. ENTCS, Elsevier, Amsterdam (to appear)
Bruni, R., Lluch Lafuente, A., Montanari, U.: Hierarchical design rewriting with Maude. In: Proceedings of WRLA 2008, Elsevier, Amsterdam (to appear, 2008)
Bruni, R., Lluch Lafuente, A., Montanari, U., Tuosto, E.: Service oriented architectural design. In: TGC 2007. LNCS, vol. 4912, pp. 186–203. Springer, Heidelberg (2007)
Bruni, R., Lluch Lafuente, A., Montanari, U., Tuosto, E.: Style based reconfigurations of software architectures. Technical Report TR-07-17, Dipartimento di Informatica, Università di Pisa (2007)
Bucchiarone, A., Galeotti, J.P.: Dynamic software architectures verification using DynAlloy. In: Proceedings of GT-VMT 2008 (to appear, 2008)
Canal, C., Pimentel, E., Troya, J.M.: Specification and refinement of dynamic software architectures. In: Proceedings of WICSA 1999. IFIP Conference Proceedings, vol. 140, pp. 107–126. Kluwer, Dordrecht (1999)
Cardelli, L., Gardner, P., Ghelli, G.: A spatial logic for querying graphs. In: Widmayer, P., Triguero, F., Morales, R., Hennessy, M., Eidenbenz, S., Conejo, R. (eds.) ICALP 2002. LNCS, vol. 2380, pp. 597–610. Springer, Heidelberg (2002)
Castellani, I., Montanari, U.: Graph grammars for distributed systems. In: Ehrig, H., Nagl, M., Rozenberg, G. (eds.) Graph Grammars 1982. LNCS, vol. 153, pp. 20–38. Springer, Heidelberg (1983)
Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)
Clements, P., Garlan, D., Bass, L., Stafford, J., Nord, R., Ivers, J., Little, R.: Documenting Software Architectures: Views and Beyond. Pearson Education, London (2002)
Courcelle, B.: The expression of graph properties and graph transformations in monadic second-order logic. In: Handbook of Graph Grammars and Computing by Graph Transformation, pp. 313–400. World Scientific, Singapore (1997)
Degano, P., Montanari, U.: Concurrent histories: A basis for observing distributed systems. J. Comput. Syst. Sci. 34(2/3), 422–461 (1987)
Degano, P., Montanari, U.: A model for distributed systems based on graph rewriting. J. ACM 34(2), 411–449 (1987)
Dynamic Software Architectures for Global Computing Systems, http://fmt.isti.cnr/~antonio
Ehrig, H., Heckel, R., Korff, M., Löwe, M., Ribeiro, L., Wagner, A., Corradini, A.: Algebraic approaches to graph transformation - Part II: Single pushout approach and comparison with double pushout approach. In: Handbook of Graph Grammars, pp. 247–312. World Scientific, Singapore (1997)
Endler, M.: A language for implementing generic dynamic reconfigurations of distributed programs. In: Proceedings of BSCN 1994, pp. 175–187 (1994)
Ferrari, G.L., Hirsch, D., Lanese, I., Montanari, U., Tuosto, E.: Synchronised hyperedge replacement as a model for service oriented computing. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2005. LNCS, vol. 4111, pp. 22–43. Springer, Heidelberg (2006)
Frias, M., Galeotti, J., Pombo, C.L., Aguirre, N.: DynAlloy: Upgrading Alloy with actions. In: ICSE 2005, pp. 442–450. ACM Press, New York (2005)
Gadducci, F., Montanari, U.: Comparing logics for rewriting: rewriting logic, action calculi and tile logic. Theor. Comput. Sci. 285(2), 319–358 (2002)
Habel, A.: Hyperedge Replacement: Grammars and Languages. Springer-Verlag New York, Inc., Secaucus, NJ, USA (1992)
Hirsch, D., Inverardi, P., Montanari, U.: Modeling software architectures and styles with graph grammars and constraint solving. In: WICSA 1999. IFIP Conference Proceedings, vol. 140, Kluwer Academic Publishers, Dordrecht (1999)
Hirsch, D., Montanari, U.: Shaped hierarchical architectural design. Electronic Notes on Theoretical Computer Science 109, 97–109 (2004)
Jackson, D.: Software Abstractions: Logic, Language and Analysis. MIT Press, Cambridge (2006)
Java/A, http://www.pst.ifi.lmu.de/Research/current-projects/java-a/
Jensen, O.H., Milner, R.: Bigraphs and mobile processes. Technical Report 570, Computer Laboratory, University of Cambridge (2003)
Jerad, C., Barkaoui, K., Grissa-Touzi, A.: Hierarchical verification in Maude of LfP software architectures. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 156–170. Springer, Heidelberg (2007)
Kacem, M.H., Kacem, A.H., Jmaiel, M., Drira, K.: Describing dynamic software architectures using an extended UML model. In: Proceedings of SAC 2006, pp. 1245–1249. ACM, New York (2006)
Kim, J.S., Garlan, D.: Analyzing architectural styles with Alloy. In: Proceedings of ROSATEA 2006, pp. 70–80. ACM Press, New York (2006)
König, B., Montanari, U., Gardner, P. (eds.): Graph Transformations and Process Algebras for Modeling Distributed and Mobile Systems, IBFI, Schloss Dagstuhl, Germany, June 6-11, 2004. Dagstuhl Seminar Proceedings, vol. 04241 (2004), http://www.dagstuhl.de/04241/
Martí-Oliet, N., Pita, I., Fiadeiro, J.L., Meseguer, J., Maibaum, T.S.E.: A verification logic for rewriting logic. J. Log. Comput. 15(3), 317–352 (2005)
Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)
Meseguer, J., Rosu, G.: The rewriting logic semantics project. TCS 373(3), 213–237 (2007)
Métayer, D.L.: Describing software architecture styles using graph grammars. IEEE Trans. Software Eng. 24(7), 521–533 (1998)
Sensoria Project, http://sensoria.fast.de/
Shaw, M., Garlan, D.: Software Architectures: Perspectives on an emerging discipline. Prentice-Hall, Englewood Cliffs (1996)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Bruni, R., Bucchiarone, A., Gnesi, S., Hirsch, D., Lluch Lafuente, A. (2008). Graph-Based Design and Analysis of Dynamic Software Architectures. In: Degano, P., De Nicola, R., Meseguer, J. (eds) Concurrency, Graphs and Models. Lecture Notes in Computer Science, vol 5065. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68679-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-68679-8_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-68676-7
Online ISBN: 978-3-540-68679-8
eBook Packages: Computer ScienceComputer Science (R0)