Mining Design Patterns from C++ Source Code

  • Authors:
  • Zsolt Balanyi;Rudolf Ferenc

  • Affiliations:
  • -;-

  • Venue:
  • ICSM '03 Proceedings of the International Conference on Software Maintenance
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Design patterns are micro architectures that have provedto be reliable, easy-to implement and robust. There is aneed in science and industry for recognizing these patterns.We present a new method for discovering design patterns inthe source code. This method provides a precise specificationof how the patterns work by describing basic structuralinformation like inheritance, composition, aggregation andassociation, and as an indispensable part, by defining calldelegation, object creation and operation overriding. Weintroduce a new XML-based language, the Design PatternMarkup Language (DPML), which provides an easy way forthe users to modify pattern descriptions to suit their needs,or even to define their own patterns or just classes in certainrelations they wish to find. We tested our method onfour open-source systems, and found it effective in discoveringdesign pattern instances.