Addressing the trade off between smells and quality when refactoring class diagrams

By: Angela Barriga, Lorenzo Bettini, Ludovico Iovino, Adrian Rutle, Rogardt Heldal

Abstract

Models are core artifacts of modern software engineering processes, and they are subject to evolution throughout their life cycle due to maintenance and to comply with new requirements as any other software artifact. Smells in modeling are indicators that something may be wrong within the model design. Removing the smells using refactoring usually has a positive effect on the general quality of the model. However, it could have a negative impact in some cases since it could destroy the quality wanted by stakeholders. PARMOREL is a framework that, using reinforcement learning, can automatically refactor models to comply with user preferences. The work presented in this paper extends PARMOREL to support smells detection and selective refactoring based on quality characteristics to assure only the refactoring with a positive impact is applied. We evaluated the approach on a large available public dataset to show that PARMOREL can decide which smells should be refactored to maintain and, even improve, the quality characteristics selected by the user.

Keywords

Smells, Refactoring, Quality evaluation, Reinforcement learning.

Cite as:

Angela Barriga, Lorenzo Bettini, Ludovico Iovino, Adrian Rutle, Rogardt Heldal, “Addressing the trade off between smells and quality when refactoring class diagrams”, Journal of Object Technology, Volume 20, no. 3 (June 2021), pp. 1:1-15, doi:10.5381/jot.2021.20.3.a1.

PDF | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn

The JOT Journal   |   ISSN 1660-1769   |   DOI 10.5381/jot   |   AITO   |   Open Access   |    Contact