
 
Interface (Blankenhorn & Jeckle 2004). Works on 
the visualization of design pattern in composition 
have been conducted by (Dong, Yang & Zhang 
2007). The authors use tagged pattern annotation as 
a method of visualizing design patterns in UML 
Class diagram and UML communication diagram. 
Its approach is through specifying three stereotypes 
extending metaclass of class, operation and attribute. 
Current approach on pattern role is similar to the 
approach on representing pattern role information 
via profile. In contrast, the current method 
introduced a single stereotype PatternRole to 
represent the pattern information on both the lifeline 
and message. Also the current work focused on the 
UML sequence diagram and extends the UML 
interaction fragment to enable defining and viewing 
the role and variant of design pattern interaction 
which was not addressed in (Dong, Yang & Zhang 
2007). In specifying patterns in the interaction 
diagram, works in (France et al. 2004) specify 
design patterns via Interaction Pattern Specification. 
The approach is through extending the metamodel 
itself. The main aim is to specify design patterns and 
did not focus on defining the variants in a design 
pattern. Work in (Noble 1998) defines the variant of 
design pattern as a refinement of another pattern, 
and the current work views the variant as the 
interaction alternatives. Variant of interaction in 
design patterns is also viewed as at difference 
abstraction level than the variability in software 
product line (Pohl & Metzger 2006) as generic 
design patterns spans across different domain and 
application engineering. The extension introduced 
for variant differs from alt in sequence diagram 
where alt is more for control flow and the extension 
for variant introduced provides referencing and 
decomposition for fragments and lifelines.  
5 CONCLUSIONS 
This paper presented an approach to represent 
pattern interaction role and variants of design pattern 
via extension to UML sequence diagram. The 
extensions are made to Interaction,  InteractionUse, 
Lifeline and Message  metaclasses. Two ways of 
fragment variant, HPFV and VPFV have been 
introduced to characterise the growth direction of the 
fragment variant and then applied to the observer 
design pattern. Further work includes providing a 
case study of defining variant for more design 
patterns retrieved from a design pattern catalogue 
tool. Also needed to be worked is the specification 
of the constraints on Interaction and InteractionUse 
with Object Constraint Language (OMG 2006) 
where the tagged values need to be consistent. The 
proposed method assists in the cataloguing the 
variety of design patterns as well as retrieval of 
behavioural information and its variant in a visual 
design modeling tool. Furthermore, it provides 
support for scenario views before adapting design 
patterns for a design via transformation 
automatically. A prototype is underway for a 
graphical design pattern UML tool with the 
proposed extension for cataloguing, retrieval and 
adaptation of design patterns using Model 
Development Tools, MDT (Eclipse 2010). Future 
work includes empirical studies on the improvement 
in design activities using the tool support with the 
presence of the proposed extension and checking of 
the semantics of design patterns during adaptation. 
ACKNOWLEDGEMENTS 
The authors would like to thank anonymous 
reviewers for their insightful comments and partial 
fund support from University of Malaya. 
REFERENCES 
Agerbo, E. & Cornils, A. 1998, 'How to preserve the 
benefits of Design Patterns', ACM SIGPLAN Notices, 
vol. 33, no. 10, pp. 134-43. 
Blankenhorn, K. & Jeckle, M. 2004, 'A UML Profile for 
GUI Layout', NODe 2004, vol. LCNS 3263, pp. 110-
21. 
Budgen, D. 1999, 'Software Design Methods: Life Belt or 
Leg Iron?', Software, IEEE, vol. 16, no. 5, pp. 133-5. 
Software Design, Second edn, Pearson Education Limited, 
Essex, England, 2003. 
Dong, J., Yang, S. & Zhang, K. 2007, 'Visualizing Design 
Patterns in Their Applications and Compositions', 
IEEE Transactions on Software Engineering, vol. 33, 
no. 7, pp. 433-53. 
Eclipse 2010, Model Development Tools (MDT), <http:// 
www.eclipse.org/modeling/mdt/>. 
Eugster, P. T., Felber, P. A., Guerraoui, R. & Kermarrec, 
A-M. 2003, 'The Many Faces of Publish/Subscribe', 
Computing Surveys (CSUR), vol. 35, no. 2. 
France, R. B., Kim, D-K., Ghosh, S. & Song, E. 2004, 'A 
UML-Based Pattern Specification Technique', IEEE 
Transactions on Software Engineering, vol. 30, no. 3, 
pp. 193-206. 
Gamma, E., Helm, R., Johnson, R. & Vlissides, J. 1995, 
Design Patterns: Elements of Reusable OO Software, 
Addison-Wesley. 
Grassi, V., Mirandola, R. & Sabetta, A. 2004, 'A UML 
Profile to Model Mobile Systems', UML 2004. 
ICSOFT 2010 - 5th International Conference on Software and Data Technologies
206