Advertisement

A Rigorous Foundation for Pattern-Based Design Models

  • Soon-Kyeong Kim
  • David Carrington
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3455)

Abstract

This paper presents a way to describe design patterns rigorously based on role concepts. Rigorous pattern descriptions are a key aspect for patterns to be used as rules for model evolution in the MDA context, for example. We formalize the role concepts commonly used in defining design patterns as a role metamodel using Object-Z. Given this role metamodel, individual design patterns are specified generically as a formal pattern role model using Object-Z. We also formalize the properties that must be captured in a class model when a design pattern is deployed. These properties are defined generically in terms of role bindings from a pattern role model to a class model. Our work provides a precise but abstract approach for pattern definition and also provides a precise basis for checking the validity of pattern usage in designs.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Dong, J.: UML Extensions for Design Pattern Compositions. Journal of Object Tech-nology 1(5), 149–161 (2002)Google Scholar
  2. 2.
    Duke, R., Rose, G.: Formal Object-Oriented Specification Using Object-Z. Macmillan, Basingstoke (2000)Google Scholar
  3. 3.
    Eclipse Modeling Framework, http://www.eclipse.org/emf/
  4. 4.
    Eclipse Project, Eclipse Foundation, http://www.eclipse.org/downloads/index.php
  5. 5.
    Eden, A., Gil, J., Hirshfeld, Y., Yehudai, A.: Towards a Mathematical Foundation For Design Patterns, Technical report 1999-004. Uppsala UniversityGoogle Scholar
  6. 6.
    Flores, A., Reynoso, L., Moore, R.: A Formal Model of Object-Oriented Design and GoF Patterns, UNU/IIST Report No.200 (2000)Google Scholar
  7. 7.
    Fontoura, M., Lucena, C.: Extending UML to Improve the Representation of Design Patterns, J. J.Object-Oriented Programming 13(11), 12–19 (2001)Google Scholar
  8. 8.
    France, R., Kim, D.-K., Sudipto, G., Song, E.: A UML-Based Pattern Specification Technique. IEEE Trans. Software Engineering 30(3), 193–206 (2004)CrossRefGoogle Scholar
  9. 9.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, Reading (1995)Google Scholar
  10. 10.
    Guennec, A., Sunye, G., Jezequel, J.: Precise Modeling of Design Patterns. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 482–496. Springer, Heidelberg (2000)Google Scholar
  11. 11.
    Kim, S.K., Carrington, D.: Formalizing the UML class diagram using Object-Z. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 83–98. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  12. 12.
    Kim, S.K., Carrington, D.: A Formal Denotational Semantics of UML in Object-Z. l’Objet 7(1), 323–362 (2001)Google Scholar
  13. 13.
    Kim, S.K., Carrington, D.: Using Integrated Metamodeling to Define OO Design Patterns with Object-Z. Proc. APSEC 2004, 257–264 (2004)Google Scholar
  14. 14.
    Lano, K., Goldsack, S., Bicarrehui, J.: Formalizing Design Patterns. In: Proc. the BCS-FACS (1996), http://www1.bcs.org.uk/DocsRepository/02700/2790/lano.pdf
  15. 15.
    Lauder, A., Kent, S.: Precise Visual Specification of Design Patterns. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 114–134. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  16. 16.
    Mak, J., Choy, C., Lun, D.: Precise Modeling of Design Patterns in UML. In: Proc. ICSE 2004, pp. 252–261 (2004)Google Scholar
  17. 17.
    OMG, MDA Guide Version 1.0.1 OMG Document number omg/03-06-01 (2003)Google Scholar
  18. 18.
    OMG, UML 2.0 superstructure specification, http://www.omg.org/uml/
  19. 19.
    Riehle, D.: Describing and Composing Patterns Using Role Diagrams. In: Proc. Ubilab Conference 1996, pp. 137–152 (1996)Google Scholar
  20. 20.
    Sanada, Y., Adams, R.: Representing Design Patterns and Frameworks in UML – To-wards a Comprehensive Approach. J. Object Technology 1(2), 143–154 (2002)CrossRefGoogle Scholar
  21. 21.
    Soundarajan, N., Hallstrom, J.: Responsibilities and Rewards: Specifying Design Patterns. In: Proc. ICSE 2004, pp. 666–675 (2004)Google Scholar
  22. 22.
    Tefkat: The EMF transformation engine. DSTC, http://www.dstc.edu.au/Research/Projects/Pegamento/tefkat/index.html

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Soon-Kyeong Kim
    • 1
  • David Carrington
    • 1
  1. 1.School of Information Technology and Electrical EngineeringThe University of QueenslandSt. LuciaAustralia

Personalised recommendations