Design Pattern Evolution and Verification Using Graph Transformation

This paper presents a graph transformation based approach to design pattern evolution. An evolution of a design pattern includes modifications of pattern elements, such as classes, attributes, operations and relationships between classes. Compared with other techniques, graphical notation, as a natural and intuitive way in software modeling, is suitable to be used at the transformation stage. In this paper we focus on the automated evolution of design patterns using graph transformation. The rules for the potential design evolutions are defined. After the evolution process, a graph grammar based syntax parser is proposed to check the structural integrity of the evolved design patterns

[1]  Wei Ding,et al.  Towards formal verification of UML diagrams based on graph transformation , 2004, IEEE International Conference on E-Commerce Technology for Dynamic E-Business.

[2]  M. Lynn Hawaii International Conference on System Sciences , 1996 .

[3]  M. Minas,et al.  Application of graph transformation to visual languages , 1999 .

[4]  Daniel Le Métayer Describing Software Architecture Styles Using Graph Grammars , 1998, IEEE Trans. Software Eng..

[5]  Jun Kong,et al.  A graph grammar approach to software architecture verification and transformation , 2003, Proceedings 27th Annual International Computer Software and Applications Conference. COMPAC 2003.

[6]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[7]  Jiannong Cao,et al.  Design, Construction, and Application of a Generic Visual Language Generation Environment , 2001, IEEE Trans. Software Eng..

[8]  Paddy Nixon,et al.  Automated software evolution towards design patterns , 2001, IWPSE '01.

[9]  Kang Zhang,et al.  A model transformation approach for design pattern evolutions , 2006, 13th Annual IEEE International Symposium and Workshop on Engineering of Computer-Based Systems (ECBS'06).

[10]  Dániel Varró,et al.  Benchmarking for graph transformation , 2005, 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05).

[11]  Ketil Stølen,et al.  What is model driven architecture , 2003 .

[12]  Takashi Kobayashi,et al.  Software development based on software pattern evolution , 1999, Proceedings Sixth Asia Pacific Software Engineering Conference (ASPEC'99) (Cat. No.PR00509).

[13]  Hartmut Ehrig,et al.  Handbook of graph grammars and computing by graph transformation: vol. 3: concurrency, parallelism, and distribution , 1999 .

[14]  Luciano Baresi,et al.  Tutorial Introduction to Graph Transformation: A Software Engineering Perspective , 2002, ICGT.

[15]  Andy Schürr,et al.  Graph Grammar Engineering with PROGRES , 1995, ESEC.

[16]  Michele Risi,et al.  Design pattern recovery by visual language parsing , 2005, Ninth European Conference on Software Maintenance and Reengineering.

[17]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[18]  Holger Giese,et al.  Tool integration at the meta-model level: the Fujaba approach , 2004, International Journal on Software Tools for Technology Transfer.

[19]  Jiannong Cao,et al.  A Context-sensitive Graph Grammar Formalism for the Specification of Visual Languages , 2001, Comput. J..