An empirical study to assess the effects of refactoring on software maintainability

作者: Ruchika Malhotra , Anuradha Chug

DOI: 10.1109/ICACCI.2016.7732033

关键词: ExtensibilitySoftware maintenanceReusabilitySoftware qualitySoftwareReliability engineeringCode refactoringEngineeringSoftware engineeringQuality (business)Maintainability

摘要: Maintenance is the most expensive phase of software and during this process refactoring performed to improve code without affecting its external behaviour. This study examines effects on maintainability using five proprietary systems. Internal quality attributes were measured design metrics suite whereas such as level abstraction, understandability, modifiability, extensibility reusability through expert opinion. The original versions are compared with refactored changes in mapped maintainability. results reveal that significantly improves enhances life. It was also found even though very tedious might introduce errors if not implemented utmost care, it still advisable frequently refactor increase Results useful project managers identifying opportunities while maintaining a perfect balance between reengineering over-engineering.

参考文章(27)
Tom Mens, Bart du Bois, Describing the impact of refactoring on internal program quality Proceedings of the International Workshop on Evolution of Large-scale Industrial Software Applications / Mens, Tom [edit.]. pp. 37- 48 ,(2003)
Wei Li, Sallie M. Henry, Object-Oriented Metrics Which Predict Maintainability Virginia Polytechnic Institute & State University. ,(1993)
M. Wood, M. Roper, A. Brooks, J. Miller, J. Daly, An empirical study evaluating depth of inheritance on the maintainability of object-oriented software Intellect. pp. 39- 58 ,(1996)
Raimund Moser, Alberto Sillitti, Pekka Abrahamsson, Giancarlo Succi, Does Refactoring Improve Reusability? Lecture Notes in Computer Science. pp. 287- 297 ,(2006) , 10.1007/11763864_21
Mohammad Alshayeb, Hamdi Al-Jamimi, Mahmoud O. Elish, Empirical taxonomy of refactoring methods for aspect-oriented programming Journal of Software: Evolution and Process. ,vol. 25, pp. 1- 25 ,(2013) , 10.1002/SMR.544
John Moses, Malcolm Farrow, Tests for consistent measurement of external subjective software quality attributes Empirical Software Engineering. ,vol. 13, pp. 261- 287 ,(2008) , 10.1007/S10664-007-9058-0
C. van Koten, A.R. Gray, An application of Bayesian network for predicting object-oriented software maintainability Information & Software Technology. ,vol. 48, pp. 59- 67 ,(2006) , 10.1016/J.INFSOF.2005.03.002
Wei Li, Sallie Henry, Object-oriented metrics that predict maintainability Journal of Systems and Software. ,vol. 23, pp. 111- 122 ,(1993) , 10.1016/0164-1212(93)90077-B
Gui Gui, Paul D. Scott, Ranking reusability of software components using coupling metrics Journal of Systems and Software. ,vol. 80, pp. 1450- 1459 ,(2007) , 10.1016/J.JSS.2006.09.048