Title :
Detecting patterns and antipatterns in software using Prolog rules
Author :
Alecsandar Stoianov;Ioana Şora
Author_Institution :
Department of Computers, Politehnica University of Timisoara, Romania
fDate :
5/1/2010 12:00:00 AM
Abstract :
Program comprehension is a key prerequisite for the maintainance and analysis of legacy software systems. Knowing about the presence of design patterns or antipatterns in a software system can significantly improve the program comprehension. Unfortunately, in many cases the usage of certain patterns is seldom explicitly described in the software documentation, while antipatterns are never described as such in the documentation. Since manual inspection of the code of large software systems is difficult, automatic or semi-automatic procedures for discovering patterns and antipatterns from source code can be very helpful. In this article we propose detection methods for a set of patterns and antipatterns, using a logic-based approach. We define with help of Prolog predicates both structural and behavioural aspects of patterns and antipatters. The detection results obtained for a number of test systems are also presented.
Keywords :
"Software systems","Documentation","Software maintenance","Vocabulary","Pattern analysis","Inspection","System testing","Software quality","Context","Computer architecture"
Conference_Titel :
Computational Cybernetics and Technical Informatics (ICCC-CONTI), 2010 International Joint Conference on
Print_ISBN :
978-1-4244-7432-5
DOI :
10.1109/ICCCYB.2010.5491288