Skip to main content

Extension Morphisms for CommUnity

  • Chapter
Algebra, Meaning, and Computation

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4060))

Abstract

Superpositions are useful relationships between programs or components in component based approaches to software development. We study the application of invasive superposition morphisms between components in the architecture design language CommUnity. This kind of morphism allows us to characterise component extension relationships, and in particular, serves an important purpose for enhancing components to implement certain aspects, in the sense of aspect oriented software development. We show how this kind of morphism combines with regulative superposition and refinement morphisms, on which CommUnity relies, and illustrate the need and usefulness of extension morphisms for the implementation of aspects, in particular, certain fault tolerance related aspects, by means of a case study.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Abrial, J.-R.: The B-Book, Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)

    Book  MATH  Google Scholar 

  2. Aguirre, N., Maibaum, T., Alencar, P.: Abstract Design with Aspects (2005) (submitted)

    Google Scholar 

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

    MATH  Google Scholar 

  4. Dimitrakos, T., Bicarregui, J., Matthews, B., Maibaum, T.: Compositional Structuring in the B-Method: A Logical Viewpoint of the Static Context. In: P. Bowen, J., Dunne, S., Galloway, A., King, S. (eds.) B 2000, ZUM 2000, and ZB 2000. LNCS, vol. 1878, p. 107. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  5. Fiadeiro, J.: Categories for Software Engineering. Springer, Heidelberg (2004)

    Google Scholar 

  6. Fiadeiro, J., Maibaum, T.: Categorical Semantics of Parallel Program Design. In: Science of Computer Programming, vol. 28(2-3), Elsevier, Amsterdam (1997)

    Google Scholar 

  7. Filman, R., Elrad, T., Clarke, S., Aksit, M.: Aspect-Oriented Software Development. Addison-Wesley, Reading (2004)

    Google Scholar 

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

    MATH  Google Scholar 

  9. Garlan, D., Monroe, R., Wile, D.: ACME: An Architecture Description Interchange Language. In: Proceedings of CASCON 1997, Toronto, Ontario (1997)

    Google Scholar 

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

    Google Scholar 

  11. Katara, M., Katz, S.: Architectural Views of Aspects. In: Proceedings of International Conference on Aspect-Oriented Software Design AOSD (2003)

    Google Scholar 

  12. Katz, S.: A Superimposition Control Construct for Distributed Systems. ACM Transactions on Programming Languages and Systems 15, 337–356 (1993)

    Article  Google Scholar 

  13. Katz, S., Gil, J.: Aspects and Superimpositions. In: ECOOP Workshop on Aspect Oriented Programming (1999)

    Google Scholar 

  14. Kiczales, G.: An overview of AspectJ. In: ECOOP 2001. LNCS, Springer, Heidelberg (2001)

    Google Scholar 

  15. Liskov, B., Wing, J.: A Behavioral Notion of Subtyping. In: ACM Transactions on Programming Languages and Systems, November 1994, vol. 16(6), ACM Press, New York (1994)

    Google Scholar 

  16. Lopes, A., Wermelinger, M., Fiadeiro, J.: Higher-Order Architectural Connectors. ACM Transactions on Software Engineering and Methodology 12(1) (2003)

    Google Scholar 

  17. Lopes, A., Fiadeiro, J.: Superposition: Composition vs. Refinement of Non- Deterministic, Action-Based Systems. In: Formal Aspects of Computing, vol. 16(1), Springer, Heidelberg (2004)

    Google Scholar 

  18. Luckham, D., Kenney, J., Augustin, L., Vera, J., Bryan, D., Mann, W.: Specification and Analysis of System Architecture Using Rapide. IEEE Transactions on Software Engineering, Special Issue on Software Architecture 21(4) (1995)

    Google Scholar 

  19. Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying Distributed Software Architectures. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, Springer, Heidelberg (1995)

    Google Scholar 

  20. Medvidovic, N., Oreizy, P., Robbins, J., Taylor, R.: Using Object-Oriented Typing to Support Architectural Design in the C2 Style. In: Proceedings of the ACM SIGSOFT 1996 Fourth Symposium on the Foundations of Software Engineering, ACM, San Francisco (1996)

    Google Scholar 

  21. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (2000)

    Google Scholar 

  22. Sihman, M., Katz, S.: Superimpositions and Aspect-Oriented Programming. BCS Computer Journal 46 (2003)

    Google Scholar 

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

    Google Scholar 

  24. Wermelinger, M., Oliveira, C.: The CommUnity Workbench. In: Proc. of the 24th Intl. Conf. on Software Engineering, p. 713. ACM Press, New York (2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Aguirre, N., Maibaum, T., Alencar, P. (2006). Extension Morphisms for CommUnity. In: Futatsugi, K., Jouannaud, JP., Meseguer, J. (eds) Algebra, Meaning, and Computation. Lecture Notes in Computer Science, vol 4060. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11780274_10

Download citation

  • DOI: https://doi.org/10.1007/11780274_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-35462-8

  • Online ISBN: 978-3-540-35464-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics