DocumentCode :
1579107
Title :
Formalising Design Patterns in Predicate Logic
Author :
Bayley, I. ; Hong Zhu
Author_Institution :
Oxford Brookes Univ., Oxford
fYear :
2007
Firstpage :
25
Lastpage :
36
Abstract :
Design patterns are traditionally outlined in an informal manner. If they could be formalised, we could derive tools that automatically recognise design patterns and refactor designs and code. Our approach is to deploy predicate logic to specify conditions on the class diagrams that describe design patterns. The structure of class diagrams is itself described with a novel meta-notation that can be used for defining any graphical modelling language. As a result, the constraints, while based on UML, are highly readable and have much expressive power. This enables us not only to recognise design patterns in legacy code, but also to reason about them at the design stage, such as showing one pattern to be a special case of another. The paper discusses our specification of the original 23 design patterns and presents a representative sample of some of them.
Keywords :
Unified Modeling Language; formal specification; object-oriented methods; object-oriented programming; process algebra; reasoning about programs; software maintenance; UML; class diagram; design pattern reasoning; design refactoring; formal specification; graphical modelling language; legacy code; predicate logic; Calculus; Collaboration; Concrete; Design methodology; Electronic mail; Java; Logic design; Pattern recognition; Software engineering; Unified modeling language;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering and Formal Methods, 2007. SEFM 2007. Fifth IEEE International Conference on
Conference_Location :
London
Print_ISBN :
978-0-7695-2884-7
Type :
conf
DOI :
10.1109/SEFM.2007.22
Filename :
4343921
Link To Document :
بازگشت