Title :
MADMatch: Many-to-Many Approximate Diagram Matching for Design Comparison
Author :
Kpodjedo, S. ; Ricca, Filippo ; Galinier, Philippe ; Antoniol, Giuliano ; Gueheneuc, Yann-Gael
Author_Institution :
DGIGL, Ecole Polytech. of Montreal, Montreal, QC, Canada
Abstract :
Matching algorithms play a fundamental role in many important but difficult software engineering activities, especially design evolution analysis and model comparison. We present MADMatch, a fast and scalable many-to-many approximate diagram matching approach based on an error-tolerant graph matching (ETGM) formulation. Diagrams are represented as graphs, costs are assigned to possible differences between two given graphs, and the goal is to retrieve the cheapest matching. We address the resulting optimization problem with a tabu search enhanced by the novel use of lexical and structural information. Through several case studies with different types of diagrams and tasks, we show that our generic approach obtains better results than dedicated state-of-the-art algorithms, such as AURA, PLTSDiff, or UMLDiff, on the exact same datasets used to introduce (and evaluate) these algorithms.
Keywords :
graph theory; optimisation; search problems; software engineering; AURA algorithm; ETGM; MADMatch approach; PLTSDiff algorithm; UMLDiff algorithm; design comparison; design evolution analysis; error-tolerant graph matching; lexical information; many-to-many approximate diagram matching approach; model comparison; optimization problem; software engineering; structural information; tabu search; Algorithm design and analysis; Optimization; Scalability; Software; Software algorithms; Software engineering; Unified modeling language; Diagram differencing; approximate graph matching; identifier splitting; search-based software engineering;
Journal_Title :
Software Engineering, IEEE Transactions on