Abstract
Design patterns are good design solutions to recurring problems. Many works were interested in design patterns identification either for reverse engineering purposes, or for design improvement purposes. All existing approaches considered that a pattern is detected through both its structure and behavior, but no one considers the semantic aspect conveyed by the class and method names. In this paper, we propose a technique that exploits the semantic aspect to identify occurrences of a pattern in a design. In addition to the structural and behavioral analyses, the semantic analysis is very useful, specifically when there is a doubt between two design patterns having similar structures. By resolving a non deterministic identification, the identification precision increases.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design patterns: Elements of reusable Object Oriented Software. Addisson-Wesley, Reading (1995)
Tsantalis, N., Chatzigeorgiou, A., Stephanides, G., Halkidis, S.T.: Design pattern detection using similarity scoring. IEEE Transactions on Software Engineering 32(11) (2006)
Gueheneuc, Y., Antoniol, G.: DeMIMA: A Multilayered Approach for Design Pattern Identification. IEEE Transactions on Software Engineering (2008)
Dong, J., Sun, Y., Zhao, Y.: Design pattern detection by template matching. In: SAC 2008 (2008)
Belderrar, A., Kpodjedo, S., Guéhéneuc, Y., Antoniol, G., Galinier, P.: Sub-graph Mining: Identifying Micro-architectures in Evolving Object-oriented Software. In: 15th European Conference on Software Maintenance and Reengineering, CSMR 2011, pp. 171–180 (2011)
Ka-Yee Ng, J., Gueheneuc, Y.: Identification of behavioural and creational design patterns through dynamic analysis. In: The 3rd International Workshop on Program Comprehension through Dynamic Analysis, PCODA, pp. 34–42 (2007)
Lee, H., Youn, H.: A design pattern detection technique that aids reverse engineering. The International Journal of Security and Applications (2008)
Albin Amiot, H., Cointe, P., Guéhéneuc, Y.G.: Un meta-modele pour coupler application et detection des design patterns. L’objet N°8, pp. 1–18 (2002)
De Lucia, A., Deufemia, V., Gravino, C., Risi, M.: Behavioral Pattern Identification through Visual Language Parsing and Code Instrumentation. In: European Conference on Software Maintenance and Reengineering, CSMR 2009, pp. 99–108 (2009)
De Lucia, A., Deufemia, V., Gravino, C., Risi, M.: Improving Behavioral Design Pattern Detection through Model Checking. In: 14th European Conference on Software Maintenance and Reengineering, CSMR 2010, pp. 176–185 (2010)
Arcelli, F., Tosi, C., Zanoni, M., Maggioni, S.: JADEPT: Dynamic analysis for behavioral design pattern detection. In: 4th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2009, pp. 95–106 (2009)
Bouassida, N., Ben-Abdallah, H.: Structural and Behavioral Detection of Design Patterns. In: Ślęzak, D., Kim, T.-h., Kiumi, A., Jiang, T., Verner, J., Abrahão, S. (eds.) ASEA 2009. CCIS, vol. 59, pp. 16–24. Springer, Heidelberg (2009)
Manning, C., Raghavan, P., Schütze, H.: An introduction to information retrieval. Cambridge University (2008)
Blondel, V.D., Gajardo, A., Heymans, M., Senellart, P., Van Dooren, P.: A Measure of Similarity between Graph Vertices. In: Applications to Synonym Extraction and Web Searching. SIAM (2004)
Bouassida, N., Ben-Abdallah, H.: A New Approach for Pattern Problem Detection. In: Pernici, B. (ed.) CAiSE 2010. LNCS, vol. 6051, pp. 150–164. Springer, Heidelberg (2010)
Fellbaum, C.: pp. 665-670. Elsevier (2005) (Online), http://wordnet.princeton.edu/
Duell, M., Goodsen, J., Rising, L.: Examples to Accompany: Design Patterns Elements of Reusable Object-Oriented Software (1999)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Issaoui, I., Bouassida, N., Ben-Abdallah, H. (2012). A Design Pattern Detection Approach Based on Semantics. In: Lee, R. (eds) Software Engineering Research, Management and Applications 2012. Studies in Computational Intelligence, vol 430. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30460-6_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-30460-6_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30459-0
Online ISBN: 978-3-642-30460-6
eBook Packages: EngineeringEngineering (R0)