Advertisement

Service Oriented Architectural Design

  • Roberto Bruni
  • Alberto Lluch Lafuente
  • Ugo Montanari
  • Emilio Tuosto
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4912)

Abstract

We propose Architectural Design Rewriting (ADR), an approach to formalise the development and reconfiguration of software architectures based on term-rewriting. An architectural style consists of a set of architectural elements and operations called productions which define the well-formed compositions of architectures. Roughly, a term built out of such ingredients constitutes the proof that a design was constructed according to the style, and the value of the term is the constructed software architecture. A main advantage of ADR is that it naturally supports style-preserving reconfigurations. The usefulness of our approach is shown by applying ADR to SRML, an emergent paradigm inspired by the Service Component Architecture. We model the complex operation that composes several SRML modules in a single one by means of suitable rewrite rules. Our approach guarantees that the resulting module respects SRML’s metamodel.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aguirre, N., Maibaum, T.S.E.: Hierarchical temporal specifications of dynamically reconfigurable component based systems. Electr. Notes Theor. Comput. Sci. 108, 69–81 (2004)CrossRefGoogle Scholar
  2. 2.
    Baresi, L., Heckel, R., Thöne, S., Varró, D.: Style-based modeling and refinement of service-oriented architectures. Software and Systems Modeling 5(2), 187–207 (2006)CrossRefGoogle Scholar
  3. 3.
    Batory, D.S.: Program refactoring, program synthesis, and model-driven development. In: Krishnamurthi, S., Odersky, M. (eds.) CC 2007. LNCS, vol. 4420, pp. 156–171. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 4.
    Benatallah, B., Casati, F., Toumani, F.: Web service conversation modeling: A cornerstone for e-business automation. IEEE Internet Computing 8(1), 46–54 (2004)CrossRefGoogle Scholar
  5. 5.
    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)Google Scholar
  6. 6.
    Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Palsberg, J., Abadi, M. (eds.) POPL, pp. 209–220. ACM, New York (2005)CrossRefGoogle Scholar
  7. 7.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C. (eds.): All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)zbMATHGoogle Scholar
  8. 8.
    Clements, P., Garlan, D., Bass, L., Stafford, J., Nord, R., Ivers, J., Little, R.: Documenting Software Architectures: Views and Beyond. Pearson Education (2002)Google Scholar
  9. 9.
    Coquand, T., Huet, G.: The calculus of constructions. Inf. Comput. 76(2-3), 95–120 (1988)CrossRefMathSciNetGoogle Scholar
  10. 10.
    FETPI Global Computing project IST-2005-016004 SEnSOria (Software Engineering for Service-Oriented Overlay Computers), http://sensoria.fast.de
  11. 11.
    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)CrossRefGoogle Scholar
  12. 12.
    Fiadeiro, J.L., Lopes, A., Bocchi, L.: Algebraic semantics of service component modules. In: Fiadeiro, J.L., Schobbens, P.-Y. (eds.) WADT 2006. LNCS, vol. 4409, pp. 37–55. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Fiadeiro, J.L., Lopes, A., Bocchi, L.: A formal approach to service component architecture. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 193–213. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  14. 14.
    Fiadeiro, J.L., Schmitt, V.: Structured co-spans: An algebra of interaction protocols. In: Mossakowski, T., Montanari, U., Haveraaen, M. (eds.) CALCO 2007. LNCS, vol. 4624, pp. 194–208. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Gadducci, F.: Graph rewriting for the π-calculus. Mathematical Structures in Computer Science 17(3), 407–437 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Habel, A.: Hyperedge Replacement: Grammars and Languages. Springer, New York, Secaucus, NJ, USA (1992)zbMATHGoogle Scholar
  17. 17.
    Hirsch, D., Kramer, J., Magee, J., Uchitel, S.: Modes for software architectures. In: Gruhn, V., Oquendo, F. (eds.) EWSA 2006. LNCS, vol. 4344, pp. 113–126. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  18. 18.
    Hirsch, D., Montanari, U.: Shaped hierarchical architectural design. Electronic Notes on Theoretical Computer Science 109, 97–109 (2004)CrossRefGoogle Scholar
  19. 19.
    Jensen, O.H., Milner, R.: Bigraphs and mobile processes. Technical Report 570, Computer Laboratory, University of Cambridge (2003)Google Scholar
  20. 20.
    König, B., Montanari, U., Gardner, P. (eds.): Graph Transformations and Process Algebras for Modeling Distributed and Mobile Systems, June 6-11, 2004, Dagstuhl Seminar Proceedings. vol. 04241, IBFI, Schloss Dagstuhl, Germany (2005)Google Scholar
  21. 21.
    Loulou, I., Kacem, A.H., Jmaiel, M.: Consistent reconfiguration for publish/subscribe architecture styles. In: Proc. of the First International Workshop on Verification and Evaluation of Computer and Communication Systems (VECoS 2007) (2007)Google Scholar
  22. 22.
    Métayer, L.D.: Describing software architecture styles using graph grammars. IEEE Trans. Software Eng. 24(7), 521–533 (1998)CrossRefGoogle Scholar
  23. 23.
    Milner, R.: Communicating and Mobile Systems: The π-calculus. Cambridge University Press, Cambridge (1992)Google Scholar
  24. 24.
    Misra, J., Cook, W.: Orchestration computation: A basis for wide area computing. Software and Systems Modeling 6(1), 83–110 (2006)Google Scholar
  25. 25.
    Service Component Architecture, http://osoa.org
  26. 26.
    Shaw, M., Garlan, D.: Software Architectures: Perspectives on an emerging discipline. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Roberto Bruni
    • 1
  • Alberto Lluch Lafuente
    • 1
  • Ugo Montanari
    • 1
  • Emilio Tuosto
    • 2
  1. 1.Department of Computer ScienceUniversity of Pisa 
  2. 2.Department of Computer ScienceUniversity of Leicester 

Personalised recommendations