The Community for Technology Leaders
RSS Icon
Issue No.05 - Sept.-Oct. (2012 vol.29)
pp: 64-72
Keen Ngee Loo , University of Malaya
Sai Peck Lee , University of Malaya
Thiam Kian Chiew , University of Malaya
Design patterns provide a way to transfer design knowledge and reusable solutions to recurring problems. The patterns include structural and interaction information that, if captured in a catalog, can act as a useful reference guide for developers when making design decisions. However, for the same design pattern structure, there can be different ways for interactions to occur. We call these interaction variants, and they haven't yet been defined explicitly in existing work. This article introduces an approach to define the interaction variants that exist in design patterns as extensions to UML sequence diagrams. The authors have applied the approach on several commonly used patterns. The approach has proved useful for paving the way toward support for cataloging design pattern interactions and interaction variants in a visual modeling tool to be used during software design.
Unified modeling language, Design methdology, Business, Adaptation models, Object recognition, Context modeling, pattern role, design pattern, interaction fragment role, interaction variant, UML profile
Keen Ngee Loo, Sai Peck Lee, Thiam Kian Chiew, "UML Extension for Defining the Interaction Variants of Design Patterns", IEEE Software, vol.29, no. 5, pp. 64-72, Sept.-Oct. 2012, doi:10.1109/MS.2012.20
1. U. Zdun, “Guest Editor's Introduction: Capturing Design Knowledge,” IEEE Software, vol. 26, no. 2, 2009, pp. 25–27.
2. D. Budgen, “Software Design Methods: Life Belt or Leg Iron?” IEEE Software, vol. 16, no. 5, 1999, pp. 133–135.
3. E. Gamma et al., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.
4. G. Booch, Handbook of Software Architecture, 2011; www.handbookofsoftwarearchitecture.comindex.jsp?page=Main .
5. H. Group, Design Patterns Catalog, 2011; .
6. D. Alur, J. Crupi, and D. Malks, Core J2EE Patterns: Best Practices and Design Strategies, 2nd ed., Prentice Hall PTR, 2003.
7. R.B. France et al., “A UML-Based Pattern Specification Technique,” IEEE Trans. Software Eng., vol. 30, no. 3, 2004, pp. 193–206.
8. M. Fowler, “Patterns [Software Patterns],” IEEE Software, vol. 20, no. 2, 2003, pp. 56-57.
9. A.H. Eden et al., “Towards a Mathematical Foundation for Design Patterns,” tech report 1999-004, Dept. Information Technology, Uppsala Univ., 1998.
10. T. Mikkonen, “Formalizing Design Patterns,” Proc. 20th Int'l Conf. Software Eng. (ICSE 98), IEEE CS, 1998, pp. 115–124.
11. J.K.H. Mak, C.S.T. Choy, and D.P.K. Lun, “Precise Modeling of Design Patterns in UML,” Proc. 26th Int'l Conf. Software Eng (ICSE 04), IEEE CS, 2004, pp. 252–261.
12. F. Buschmann, K. Henney, and D.C. Schmidt, Pattern Oriented Software Architecture, vol. 5: On Patterns and Pattern Languages, John Wiley & Sons, 2007.
13. J. Dong, S. Yang, and K. Zhang, “Visualizing Design Patterns in Their Applications and Compositions,” IEEE Trans. Software Eng., vol. 33, no. 7, 2007, pp. 433–453.
14. U. Zdun and P. Avgeriou, “A Catalog of Architectural Primitives for Modeling Architectural Patterns,” J. Information and Software Technology, vol. 50, nos. 9–10, 2008, pp. 1003–1034, 2008.
15. K.N. Loo and S.P. Lee, “Visualizing the Design Pattern Interaction Roles,” Proc. 4th Int'l Symp. Information Technology (ITSIM 10), IEEE, 2010, pp. 1–6.
36 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool