Nothing Special   »   [go: up one dir, main page]

Skip to main content

(Behavioural) Design Patterns as Composition Operators

  • Conference paper
Component-Based Software Engineering (CBSE 2010)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6092))

Included in the following conference series:

Abstract

Design patterns are typically defined informally, albeit in a standard format, and have to be programmed by the software designer into each new application. Thus although patterns support solution reuse, in practice this does not translate into code reuse. In this paper we argue that to achieve code reuse, patterns should be defined and used in the context of software component models. We show how in such a model, behavioural patterns can be defined as composition operators which can be stored in a repository, alongside components, thus enabling code reuse.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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 54.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.

Similar content being viewed by others

References

  1. Bosch, J.: Specifying frameworks and design patterns as architectural fragments. In: TOOLS 1998, p. 268. IEEE Computer Society, Los Alamitos (1998)

    Google Scholar 

  2. CESAR project, http://www.cesarproject.eu/

  3. Denmark CPN Group, University of Aarhus. CPN tools - computer tool for Coloured Petri Nets, http://wiki.daimi.au.dk/cpntools/cpntools.wiki

  4. DeMichiel, L., Keith, M.: Enterprise JavaBeans 3.0. Sun Microsystems (2006)

    Google Scholar 

  5. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns – Elements of Reusable Object-Oriented Design. Addison-Wesley, Reading (1995)

    Google Scholar 

  6. Hamadi, R., Benatallah, B.: A Petri net-based model for web service composition. In: Proc. 14th Australasian Database Conf., pp. 191–200 (2003)

    Google Scholar 

  7. Hammouda, I., Koskimies, K.: An approach for structural pattern composition. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 252–265. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  8. Heineman, G.T., Councill, W.T. (eds.): Component-Based Software Engineering: Putting the Pieces Together. Addison-Wesley, Reading (2001)

    Google Scholar 

  9. Janneck, J.W., Naedele, M.: Modeling hierarchical and recursive structures using parametric Petri nets. In: Proc. Adv. Simulation Tech. Conf., pp. 445–452 (1999)

    Google Scholar 

  10. Järvinen, H.-M., et al.: Object-oriented specification of reactive systems. In: Proc. ICSE 1990, pp. 63–71. IEEE Computer Society Press, Los Alamitos (1990)

    Google Scholar 

  11. Jensen, K.: Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use, 2nd edn., vol. I. Springer, Heidelberg (1996)

    MATH  Google Scholar 

  12. The Java Modeling Language, http://www.cs.iastate.edu/~leavens/JML.html

  13. Lau, K.-K., et al.: Composite connectors for composing software components. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 18–33. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  14. Lau, K.-K., Ntalamagkas, I.: A compositional approach to active and passive components. In: Proc. 34th EUROMICRO SEAA, pp. 76–83. IEEE, Los Alamitos (2008)

    Google Scholar 

  15. Lau, K.-K., Ornaghi, M., Wang, Z.: A software component model and its preliminary formalisation. In: Proc. 4th FMCO, pp. 1–21. Springer, Heidelberg (2006)

    Google Scholar 

  16. Lau, K.-K., Ornaghi, M.: Control encapsulation: a calculus for exogenous composition. In: Lewis, G.A., Poernomo, I., Hofmeister, C. (eds.) CBSE 2009. LNCS, vol. 5582, pp. 121–139. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  17. Lau, K.-K., Taweel, F.: Data encapsulation in software components. In: Proc. 10th CBSE, pp. 1–16. Springer, Heidelberg (2007)

    Google Scholar 

  18. Lau, K.-K., Velasco Elizondo, P., Wang, Z.: Exogenous connectors for software components. In: Proc. 8th CBSE, pp. 90–106. Springer, Heidelberg (2005)

    Google Scholar 

  19. Lau, K.-K., Wang, Z.: Software component models. IEEE Trans. Software Engineering 33(10), 709–724 (2007)

    Article  Google Scholar 

  20. Medvidovic, N., Rosenblum, D.S., Taylor, R.N.: A type theory for software architectures. Tech. Report UCI-ICS-98-14, University of California, Irvine (1998)

    Google Scholar 

  21. Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE TSE 26(1), 70–93 (2000)

    Google Scholar 

  22. Message Passing Interface (MPI) Forum, http://www.mpi-forum.org/

  23. Meyer, B., Arnout, K.: Componentization: The visitor example. IEEE Computer 39(7), 23–30 (2006)

    Google Scholar 

  24. Mikkonen, T.: Formalizing design patterns. In: Proc. ICSE 1998, pp. 115–124. IEEE Computer Society, USA (1998)

    Google Scholar 

  25. OMG. UML 2.0 Infrastructure Final Adopted Spec. (2003)

    Google Scholar 

  26. OMG. Object Constraint Language, OCL (2006)

    Google Scholar 

  27. Riehle, D.: Composite design patterns. In: Proc. OOPSLA 1997, USA, pp. 218–228. ACM, New York (1997)

    Chapter  Google Scholar 

  28. Russell, N., et al.: Workflow control-flow patterns: A revised view. BPM Center Report BPM-06-31 (2006)

    Google Scholar 

  29. Sun Microsystems. JavaBeans Specification (1997), http://java.sun.com/products/javabeans/docs/spec.html

  30. Szyperski, C.: Universe of composition. Software Development (2002)

    Google Scholar 

  31. Tsiatsoulis, Z., Cotronis, J.Y.: Testing and debugging message passing programs in synergy with their specifications. Fundamenta Informatica 41(3), 341–366 (2000)

    MATH  Google Scholar 

  32. Velasco Elizondo, P., Lau, K.-K.: A catalogue of component connectors to support development with reuse. Journal of Systems and Software (2010)

    Google Scholar 

  33. Vlissides, J.: Composite design patterns (They Aren’t What You Think). C++ report (1998)

    Google Scholar 

  34. Wydaeghe, B., Vanderperren, W.: Visual component composition using composition patterns. In: Proc. TOOLS 2001, pp. 120–129. IEEE Computer Society, Los Alamitos (2001)

    Google Scholar 

  35. Yacoub, S.M., Ammar, H.H.: UML support for designing software systems as a composition of design patterns. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, p. 149. Springer, Heidelberg (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

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lau, KK., Ntalamagkas, I., Tran, C.M., Rana, T. (2010). (Behavioural) Design Patterns as Composition Operators. In: Grunske, L., Reussner, R., Plasil, F. (eds) Component-Based Software Engineering. CBSE 2010. Lecture Notes in Computer Science, vol 6092. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13238-4_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-13238-4_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-13237-7

  • Online ISBN: 978-3-642-13238-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics