Premium
Empirical taxonomy of refactoring methods for aspect‐oriented programming
Author(s) -
Alshayeb Mohammad,
AlJamimi Hamdi,
Elish Mahmoud O.
Publication year - 2013
Publication title -
journal of software: evolution and process
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.371
H-Index - 29
eISSN - 2047-7481
pISSN - 2047-7473
DOI - 10.1002/smr.544
Subject(s) - code refactoring , computer science , software engineering , software quality , taxonomy (biology) , software , software system , aspect oriented programming , quality (philosophy) , programming language , software development , philosophy , botany , epistemology , biology
SUMMARY Refactoring improves software quality by improving the design of existing code through changing its internal structure while preserving its behavior. Improving one quality attribute may impair other quality attributes. A number of refactoring methods were proposed specifically for aspect‐oriented systems. However, there are no guidelines to help aspect‐oriented software designer decide which refactoring methods to apply to optimize a software system with regard to certain design goals. In this paper, we propose a taxonomy/classification of refactoring methods for aspect‐oriented programming based on their measurable effect on software quality attributes using six open‐source aspect‐oriented software systems. Copyright © 2011 John Wiley & Sons, Ltd.