• DocumentCode
    2041992
  • Title

    Design pattern mining enhanced by machine learning

  • Author

    Ferenc, Rudolf ; Beszédes, Árpád ; Fülöp, Lajos ; Lele, János

  • Author_Institution
    Dept. of Software Eng., Univ. of Szeged, Hungary
  • fYear
    2005
  • fDate
    26-29 Sept. 2005
  • Firstpage
    295
  • Lastpage
    304
  • Abstract
    Design patterns present good solutions to frequently occurring problems in object-oriented software design. Thus their correct application in a system´s design may significantly improve its internal quality attributes such as reusability and maintainability. In software maintenance the existence of up-to-date documentation is crucial, so the discovery of as yet unknown design pattern instances can help improve the documentation. Hence a reliable design pattern recognition system is very desirable. However, simpler methods (based on pattern matching) may give imprecise results due to the vague nature of the patterns´ structural description. In previous work we presented a pattern matching-based system using the Columbus framework with which we were able to find pattern instances from the source code by considering the patterns´ structural descriptions only, and therefore we could not identify false hits and distinguish similar design patterns such as state and strategy. In the present work we use machine learning to enhance pattern mining by filtering out as many false hits as possible. To do so we distinguish true and false pattern instances with the help of a learning database created by manually tagging a large C++ system.
  • Keywords
    C++ language; data mining; learning (artificial intelligence); object-oriented methods; software maintenance; software reusability; C++ system; design pattern mining; machine learning; object-oriented software design; pattern matching-based system; software maintenance; Application software; Databases; Documentation; Filtering; Machine learning; Pattern matching; Pattern recognition; Software design; Software maintenance; Tagging; C++; Columbus; Design Patterns; Machine Learning; StarOffice;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance, 2005. ICSM'05. Proceedings of the 21st IEEE International Conference on
  • ISSN
    1063-6773
  • Print_ISBN
    0-7695-2368-4
  • Type

    conf

  • DOI
    10.1109/ICSM.2005.40
  • Filename
    1510125