Research

%[My previous research related to this position] %My previous research was predicting change-prone parts of software by building a predictive model. I proposed the new behavioral dependency metrics that capture the aspects of the dynamic behavior program, and these metrics in conjunction with existing structural metrics help to make a more accurate prediction change-proneness model. Recent research was focused on defining the cost-effective software refactoring process by suggesting the refactoring opportunities that can maximize improvement in software design quality (e.g., maintainability), and I proposed the several new methods. 1) To extract the candidates in classes where real changes have occurred, I made the refactoring candidate identification model that uses the dynamic profiling technique measuring the most frequently used functions based on the several scenarios of user behavior. 2) To find a sequence of cost-effective refactorings, I proposed the method for selecting multiple refactorings that have no dependencies each other and can be applied simultaneously. 3) To reduce the search space of candidates to be examined, I suggested using the two-phase approach by choosing the candidates that are more likely to improve maintainability using the prediction model constructed based on the structural dependencies, change history, and textual information.