Browse > Article
http://dx.doi.org/10.5392/JKCA.2011.11.5.075

Aspect Mining Process Design Using Abstract Syntax Tree  

Lee, Seung-Hyung (경희대학교 컴퓨터공학과)
Song, Young-Jae (경희대학교 컴퓨터공학과)
Publication Information
Abstract
Aspect-oriented programming is the paradigm which extracts crosscutting concern from a system and solves scattering of a function and confusion of a code through software modularization. Existing aspect developing method has a difficult to extract a target area, so it is not easy to apply aspect mining. In an aspect minning, it is necessary a technique that convert existing program refactoring elements to crosscutting area. In the paper, it is suggested an aspect mining technique for extracting crosscutting concern in a system. Using abstract syntax structure specification, extract functional duplicated relation elements. Through Apriori algorithm, it is possible to create a duplicated syntax tree and automatic creation and optimization of a duplicated source module, target of crosscutting area. As a result of applying module of Berkeley Yacc(berbose.c) to mining process, it is confirmed that the length and volume of program has been decreased of 9.47% compared with original module, and it has been decreased of 4.92% in length and 5.11% in volume compared with CCFinder.
Keywords
Crosscutting Concern; Abstract Syntax Tree; Aspect Mining;
Citations & Related Records
연도 인용수 순위
  • Reference
1 http://invisible-island.net/byacc/byacc.html
2 M. Hahsler, B. Grun, K. Hornik, and C. Buchta, "Introduction to arules - A computational environment for mining association rules and frequent item sets," The Comprehensive R Archive Network, 2010(3).
3 D. P. Mohapatra and M. Sahu, "Dynamic Slicing of Aspect-Oriented Programs," in Proc. of Informatica, 2008.
4 M. Rieger and S. Demeyer, "A Language Independent Approach for Detecting Duplicated Code," in Proc. of ICSM, 1999.
5 S. Apel, C. Kastner, and D. Batory., "Program refactoring using functional aspects," In Proceedings of the 7th International Conference on Generative Programming and Component Engineering. ACM Press, pp.161-170, 2008.
6 M. P. Monteiro, "Object-to-aspect refracturing for feature extraction," in Proc. of AOSD, 2004.
7 S. Hanenberg, C. Oberschulte, and R. Unland., "Refactoring of Aspect-Oriented Software," In Proceedings of the 4th International Conference on Object-Oriented and Internet-based Technologies, Concepts, and Applications for a Networked World, pp.9-35, 2003.
8 Toshihiro Kamiya, Shinji Kusumoto, Katsuro Inoue, "CCFinder: A Multilinguistic Token Based Code Clone Detection System for Large Scale Source Code," IEEE transactions on software engineering, Vol.29, No.7, 2002(7).   DOI   ScienceOn
9 B. S. Baker, "A Program for Identifying Duplicated Code," in Proc. of WCRE, 1999.