Title :
Discovering Aspects through Analyzing Code Changes in Software Development Histories
Author :
Cheng-Zhe Li;Kuo-Hsun Hsu;Guan-Yu Chen
Author_Institution :
Dept. of Comput. Sci., Nat. Taichung Univ. of Educ., Taichung, Taiwan
Abstract :
Aspect-Oriented Programming (AOP) aims to address the scattering and tangling of cross-cutting concerns in a system. Many aspect mining techniques are proposed based on the concepts that concerns crosscut other modules of a system. Most of these researches targeted on a single version during the development of a software system. However, it is also possible that the difference between versions during the development of a software system may also be a source of aspects. In this paper, we propose to discover aspect candidates through the analysis of a series of versions of a software system. A supporting tool, AMTV (Aspect-Mining Tool among Versions), is also developed based on the fan-in metric to identify aspect candidates across multiple versions of a software system. An experiment of applying the proposed approach is conducted to a software system JHot Draw, and the results show that eight kinds of aspect candidates may appear during the development of a software system. At last, several advices are given to programmers as a reference for dealing with aspects while developing a software system using aspect-oriented development paradigm.
Keywords :
"Software systems","History","Measurement","Data mining","Natural language processing","Programming"
Conference_Titel :
e-Business Engineering (ICEBE), 2015 IEEE 12th International Conference on
DOI :
10.1109/ICEBE.2015.58