The understandability, maintainability, and reusability of object-oriented programs could be improved by automatically detecting well-known design patterns in programs. Many existing detection techniques are based on static analysis and use strict conditions composed of class structure data. Hence, it is difficult for them to detect design patterns in which the class structures are similar. Moreover, it is difficult for them to deal with diversity in design pattern applications. We propose a design pattern detection technique using metrics and machine learning. Our technique judges candidates for the roles that compose the design patterns by using machine learning and measurements of metrics, and it detects design patterns by analyzing the relations between candidates. It suppresses false negatives and distinguishes patterns in which the class structures are similar. We conducted experiments that showed that our technique was more accurate than two previous techniques.
|ジャーナル||CEUR Workshop Proceedings|
|出版ステータス||Published - 2011 12月 1|
|イベント||Joint 1st Int. Workshop on Model-Driven Software Migration, MDSM 2011 and the 5th International Workshop on Software Quality and Maintainability, SQM 2011 - Workshops at the 15th European Conf. on Software Maintenance and Reengineering, CSMR 2011 - Oldenburg, Germany|
継続期間: 2011 3月 1 → 2011 3月 1
ASJC Scopus subject areas
- コンピュータ サイエンス（全般）