Skip to main content

Chapter 5. A Mathematical Semantics for Architectural Connectors

  • Chapter
Generic Programming

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2793))

Abstract

A mathematical semantics is proposed for the notion of architectural connector, in the style defined by Allen and Garlan, that builds on Goguen’s categorical approach to General Systems Theory and other algebraic approaches to specification, concurrency, and parallel program design. This semantics is, essentially, ADL-independent, setting up criteria against which formalisms can be evaluated according to the support that they provide for architectural design. In particular, it clarifies the role that the separation between computation and coordination plays in supporting architecture-driven approaches to software construction and evolution. It also leads to useful generalisations of the notion of connector, namely through the use of multiple formalisms in the definition of the glue and the roles, and their instantiations with programs or system components that can be implemented in different languages or correspond to ”real-world” components.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allen, R., Garlan, D.: A Formal Basis for Architectural Connectors. ACM TOSEM 6(3), 213–249 (1997)

    Article  Google Scholar 

  2. Andrade, L.F., Fiadeiro, J.L.: Interconnecting Objects via Contracts. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 566–583. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  3. Andrade, L., Fiadeiro, J.L.: Service-Oriented Business and System Specification: Beyond Object-orientation. In: Kilov, H., Baclwaski, K. (eds.) Practical Foundations of Business and System Specifications, pp. 1–23. Kluwer Academic Publishers, Dordrecht (2003)

    Google Scholar 

  4. Andrade, L.F., Fiadeiro, J.L., Gouveia, J., Lopes, A., Wermelinger, M.: Patterns for Coordination. In: Porto, A., Roman, G.-C. (eds.) COORDINATION 2000. LNCS, vol. 1906, pp. 317–322. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  5. Banâtre, J.P., Le Métayer, D.: Programming by Multiset Transformation. Communications ACM 16(1), 55–77 (1993)

    Google Scholar 

  6. Bass, L., Clements, P., Kasman, R.: Software Architecture in Practice. Addison Wesley, Reading (1998)

    Google Scholar 

  7. Bosch, J.: Superimposition: A Component Adaptation Technique. Information and Software Technology (1999)

    Google Scholar 

  8. Chandy, K., Misra, J.: Parallel Program Design - A Foundation. Addison-Wesley, Reading (1988)

    MATH  Google Scholar 

  9. Fiadeiro, J.L., Maibaum, T.: Interconnecting Formalisms: supporting modularity, reuse and incrementality. In: Kaiser, G.E. (ed.) Proc. 3rd Symp. on Foundations of Software Engineering, pp. 72–80. ACM Press, New York (1995)

    Chapter  Google Scholar 

  10. Fiadeiro, J.L., Maibaum, T.: A Mathematical Toolbox for the Software Architect. In: Kramer, J., Wolf, A. (eds.) Proc. 8th International Workshop on Software Specification and Design, pp. 46–55. IEEE Computer Society Press, Los Alamitos (1996)

    Chapter  Google Scholar 

  11. Fiadeiro, J.L., Maibaum, T.: Categorical Semantics of Parallel Program Design. Science of Computer Programming 28, 111–138 (1997)

    Article  MATH  Google Scholar 

  12. Fiadeiro, J.L., Lopes, A.: Semantics of Architectural Connectors. In: Bidoit, M., Dauchet, M. (eds.) CAAP 1997, FASE 1997, and TAPSOFT 1997. LNCS, vol. 1214, pp. 505–519. Springer, Heidelberg (1997)

    Google Scholar 

  13. Fiadeiro, J.L., Lopes, A.: Algebraic Semantics of Coordination, or what is in a signature? In: Haeberer, A.M. (ed.) AMAST 1998. LNCS, vol. 1548, p. 293. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  14. Francez, N., Forman, I.: Interacting Processes. Addison-Wesley, Reading (1996)

    MATH  Google Scholar 

  15. Gelernter, D., Carriero, N.: Coordination Languages and their Significance. Communications ACM 35(2), 97–107 (1992)

    Article  Google Scholar 

  16. Goguen, J.: Categorical Foundations for General Systems Theory. In: Pichler, F., Trappl, R. (eds.) Advances in Cybernetics and Systems Research, Transcripta Books, pp. 121–130 (1973)

    Google Scholar 

  17. Goguen, J.: Principles of Parametrised Programming. In: Biggerstaff, Perlis (eds.) Software Reusability, pp. 159–225. Addison-Wesley, Reading (1989)

    Google Scholar 

  18. Goguen, J.: Parametrised Programming and Software Architecture. In: Symposium on Software Reusability, IEEE, Los Alamitos (1996)

    Google Scholar 

  19. Goguen, J., Burstall, R.: Institutions: Abstract Model Theory for Specification and Programming. Journal of the ACM 39(1), 95–146 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  20. Katz, S.: A Superimposition Control Construct for Distributed Systems. ACM TOPLAS 15(2), 337–356 (1993)

    Article  Google Scholar 

  21. Lopes, A.: Não-determinismo e Composicionalidade na Especificação de Sistemas Reactivos, PhD Thesis (in Portuguese), Universidade de Lisboa (January 1999)

    Google Scholar 

  22. Lopes, A., Fiadeiro, J.L.: Using explicit state to describe architectures. In: Finance, J.-P. (ed.) FASE 1999. LNCS, vol. 1577, pp. 144–160. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  23. Lopes, A., Fiadeiro, J.L.: Revising the Categorical Approach to Systems. In: Kirchner, H., Ringeissen, C. (eds.) AMAST 2002. LNCS, vol. 2422, pp. 426–440. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  24. Lopes, A., Wermelinger, M., Fiadeiro, J.L.: Compositional Approach to Connector Construction. In: Cerioli, M., Reggio, G. (eds.) WADT 2001 and CoFI WG Meeting 2001. LNCS, vol. 2267, pp. 201–220. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  25. Magee, J., Kramer, J., Sloman, M.: Constructing Distributed Systems in Conic. IEEE TOSE 15(6) (1989)

    Google Scholar 

  26. Moriconi, M., Qian, X.: Correctness and Composition of Software Architectures. In: Proc. Second Symposium on the Foundations of Software Engineering, pp. 164–174. ACM Press, New York (1994)

    Chapter  Google Scholar 

  27. Perry, D., Wolf, A.: Foundations for the Study of Software Architectures. ACM SIGSOFT Software Engineering Notes 17(4), 40–52 (1992)

    Article  Google Scholar 

  28. Sassone, V., Nielsen, M., Winskel, G.: A Classification of Models for Concurrency. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 82–96. Springer, Heidelberg (1993)

    Google Scholar 

  29. Wermelinger, M., Fiadeiro, J.L.: Connectors for Mobile Programs. IEEE Transactions on Software Engineering 24(5), 331–341 (1998)

    Article  Google Scholar 

  30. Wermelinger, M., Fiadeiro, J.L.: Towards an Algebra of Architectural Connectors: a Case Study on Synchronisation for Mobility. In: Proc. 9th International Workshop on Software Specification and Design, pp. 135–142. IEEE Computer Society Press, Los Alamitos (1998)

    Chapter  Google Scholar 

  31. Wermelinger, M., Fiadeiro, J.L.: Algebraic Software Architecture Reconfiguration. In: Nierstrasz, O., Lemoine, M. (eds.) ESEC 1999 and ESEC-FSE 1999. LNCS, vol. 1687, pp. 393–409. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  32. Wermelinger, M., Lopes, A., Fiadeiro, J.L.: Superposing Connectors. In: Proc. 10th International Workshop on Software Specification and Design, pp. 87–94. IEEE Computer Society Press, Los Alamitos (2000)

    Google Scholar 

  33. Wermelinger, M., Lopes, A., Fiadeiro, J.L.: A Graph Based Architectural (Re)configuration Language. In: Gruhn, V. (ed.) ESEC/FSE 2001, pp. 21–32. ACM Press, New York (2001)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Fiadeiro, J.L., Lopes, A., Wermelinger, M. (2003). Chapter 5. A Mathematical Semantics for Architectural Connectors. In: Backhouse, R., Gibbons, J. (eds) Generic Programming. Lecture Notes in Computer Science, vol 2793. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45191-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-45191-4_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20194-6

  • Online ISBN: 978-3-540-45191-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics