• DocumentCode
    1300781
  • Title

    Mining Crosscutting Concerns through Random Walks

  • Author

    Zhang, Charles ; Jacobsen, Hans-Arno

  • Author_Institution
    Dept. of Comput. Sci. & Eng., Hong Kong Univ. of Sci. & Technol., Kowloon, China
  • Volume
    38
  • Issue
    5
  • fYear
    2012
  • Firstpage
    1123
  • Lastpage
    1137
  • Abstract
    Inspired by our past manual aspect mining experiences, this paper describes a probabilistic random walk model to approximate the process of discovering crosscutting concerns (CCs) in the absence of the domain knowledge about the investigated application. The random walks are performed on the concept graphs extracted from the program sources to calculate metrics of “utilization” and “aggregation” for each of the program elements. We rank all the program elements based on these metrics and use a threshold to produce a set of candidates that represent crosscutting concerns. We implemented the algorithm as the Prism CC miner (PCM) and evaluated PCM on Java applications ranging from a small-scale drawing application to a medium-sized middleware application and to a large-scale enterprise application server. Our quantification shows that PCM is able to produce comparable results (95 percent accuracy for the top 125 candidates) with respect to the manual mining effort. PCM is also significantly more effective as compared to the conventional approach.
  • Keywords
    Java; aspect-oriented programming; data mining; graph theory; middleware; probability; small-to-medium enterprises; Java applications; Prism CC miner; aggregation metric; aspect mining; concept graphs; crosscutting concerns mining; large-scale enterprise application server; medium-sized middleware application; probabilistic random walk model; program elements; program sources; small-scale drawing application; utilization metric; Algorithm design and analysis; Computational modeling; Data mining; Manuals; Mathematical model; Phase change materials; Radiation detectors; Aspect mining; mining crosscutting concerns;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2011.83
  • Filename
    5989837