%0 Journal Article %T Preserving Design Patterns using Source Code Annotations %A Miroslav Sabo %A Jaroslav PorubŁżn %J Journal of Computer Science and Control Systems %D 2009 %I Editura Universit??ii din Oradea %X Design patterns are abstract descriptions of established time-tested solutions to often recurring problems. They have proven to be very useful for the design of object-oriented systems as they elevate the level of abstractions by capturing a relationship among the language-level abstraction mechanisms. However, the traceability of a design pattern in source code is often lost over the time due to insufficient or out of date documentation. Moreover, the original intentions captured by design pattern may get lost as well due to inappropriate source code modifications. This paper presents an approach to preserving the correct form of design pattern application to source code during the whole process of system evolution by annotating the language constructs constituting design pattern. Annotations prescribe the correct structure of annotated constructs and if this does not comply, the programmer is notified that the pattern is broken and is given the recommendations how to fix it. For the purpose of defining correct form of pattern constructs, specific language is proposed. %K design patterns %K annotations %K Java %K design pattern structure %K structural checking %U http://electroinf.uoradea.ro/reviste%20CSCS/documente/JCSCS_2009/Articole_pdf_JCSCS_C_nr_1/JCSCS_2009_Nr_1_CS_Sabo_Preserving.pdf