Abstract | ||
---|---|---|
Design patterns represent best practices in software design and are particularly relevant for Model-Driven Engineering (MDE) due to their ability to describe conceptual source code knowledge. As a consequence, effective design pattern recovery approaches provide a great support for understanding complex software systems. However, although design pattern definitions come with a canonical form, their implementations can diverge from such form for different reasons, such as, the chosen software architecture or additional design requirements, making their detection in source code rather challenging. In this paper, we investigate the use of different design pattern implementation variants in software systems and how they affect the retrieval performance of design pattern recovery tools. In particular, we focus on different variants of Adapter and Observer design patterns, by analyzing the available documentation of six open source software systems and a public repository of design pattern instances, and we analyze the performance of three different design pattern recovery tools with respect to these variants. |
Year | DOI | Venue |
---|---|---|
2018 | 10.1109/QUATIC.2018.00033 | 2018 11th International Conference on the Quality of Information and Communications Technology (QUATIC) |
Keywords | Field | DocType |
Design Pattern,Program Analysis,Implementation Variants of Patterns | Software design,Software engineering,Systems engineering,Computer science,Source code,Reverse engineering,Software design pattern,Adapter (computing),Software system,Software architecture,Design pattern | Conference |
ISBN | Citations | PageRank |
978-1-5386-5842-0 | 0 | 0.34 |
References | Authors | |
6 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Andrea De Lucia | 1 | 4432 | 217.26 |
Vincenzo Deufemia | 2 | 449 | 40.96 |
Carmine Gravino | 3 | 721 | 47.71 |
Michele Risi | 4 | 403 | 40.98 |