Exploiting bad-smells and object-oriented characteristics to prioritize classes for refactoring

被引:4
|
作者
Malhotra, Ruchika [1 ]
Singh, Priya [1 ]
机构
[1] Delhi Technol Univ, Dept Software Engn, Delhi 110042, India
关键词
Bad-smells; Refactoring methods; Object-oriented characteristics; Software quality; Software maintenance; OPPORTUNITIES; QUALITY;
D O I
10.1007/s13198-020-01001-x
中图分类号
T [工业技术];
学科分类号
08 ;
摘要
Bad-smell indicates code-design flaws and poor software-quality that weaken software design and inversely affects software development. It also works as a catalyst for bugs and failures in the software system. Refactoring methods are used by software practitioners as corrective actions for bad-smells. The problem relies in the fact that there are over seventy refactoring methods available in literature and multiple refactoring methods can be used to nullify the effect of a particular bad-smell. So, it becomes very difficult to apply refactoring on complete source-code and almost impossible if software size is dramatically large. Thus, there arises a need for prioritizing classes in some way. This study aims at applying refactoring solution to only severely affected classes to improve the overall software quality. We proposed a framework that detects a small subset of classes from the entire source-code instantly require refactoring. This prioritization of classes is based on two factors-severity of the presence of bad-smells and object-oriented characteristics. The approach is evaluated on eight open-source Java software systems using ten most common bad-smells and six widely known C&K metrics. Both these factors help in calculating a new metric Quality Depreciation Index Rule (QDIR) that exposes those classes that are highly affected by bad-smells and demand an immediate refactoring solution. Results of the empirical study indicate that QDIR is an effective metric to remove bad-smells in an environment of stringent time constraints and limited cost making the maintenance of software system easier and effective with enhanced software quality.
引用
收藏
页码:133 / 144
页数:12
相关论文
共 50 条
  • [1] Exploiting bad-smells and object-oriented characteristics to prioritize classes for refactoring
    Ruchika Malhotra
    Priya Singh
    International Journal of System Assurance Engineering and Management, 2020, 11 : 133 - 144
  • [2] An investigation of bad smells in object-oriented design
    Shatnawi, Raed
    Li, Wei
    THIRD INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY: NEW GENERATIONS, PROCEEDINGS, 2006, : 161 - +
  • [3] A Catalogue of Model Smells and Refactoring Operations for Object-Oriented Software
    Sidhu, Brahmaleen K.
    Singh, Kawaljeet
    Sharma, Neeraj
    PROCEEDINGS OF THE 2018 SECOND INTERNATIONAL CONFERENCE ON INVENTIVE COMMUNICATION AND COMPUTATIONAL TECHNOLOGIES (ICICCT), 2018, : 313 - 319
  • [4] Investigating the Evolution of Bad Smells in Object-Oriented Code
    Chatzigeorgiou, Alexander
    Manakos, Anastasios
    QUATIC 2010: SEVENTH INTERNATIONAL CONFERENCE ON THE QUALITY OF INFORMATION AND COMMUNICATIONS TECHNOLOGY, 2010, : 106 - 115
  • [5] Automating object-oriented software refactoring
    Shankar, S
    Xu, XW
    SERP'03: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING RESEARCH AND PRACTICE, VOLS 1 AND 2, 2003, : 561 - 567
  • [6] Identification of Nominated Classes for Software Refactoring Using Object-Oriented Cohesion Metrics
    Ibrahim, Safwat M.
    Salem, Sameh A.
    Ismail, Manal A.
    Eladawy, Mohamed
    International Journal of Computer Science Issues, 2012, 9 (2 2-2): : 68 - 76
  • [7] Optimized Refactoring Mechanisms to Improve Quality Characteristics in Object-Oriented Systems
    Almogahed, Abdullah
    Mahdin, Hairulnizam
    Omar, Mazni
    Zakaria, Nur Haryani
    Muhammad, Ghulam
    Ali, Zulfiqar
    IEEE ACCESS, 2023, 11 : 99143 - 99158
  • [8] Refactoring object-oriented specifications with data and processes
    Ruhroth, Thomas
    Wehrheim, Heike
    FORMAL METHODS FOR OPEN OBJECT-BASED DISTRIBUTED SYSTEMS, PROCEEDINGS, 2007, 4468 : 236 - +
  • [9] Adaptation of a Refactoring DSL for the Object-Oriented Paradigm
    Nemeth, David J.
    Horpacsi, Daniel
    Tejfel, Mate
    ACTA CYBERNETICA, 2022, 25 (04): : 817 - 846
  • [10] Correlation between Object-Oriented Metrics and Refactoring
    Boshnakoska, Daniela
    Misev, Anastas
    ICT INNOVATIONS 2010, 2011, 83 : 226 - +