Estimating and Quantifying the Benefits of Refactoring to Improve a Component Modularity: a Case Study
Paper i proceeding, 2016

In recent years, research and industry's attention has been focused on maintaining a system that would both decrease time to market in the short term and assure a sustainable feature output and smooth maintenance operations in the long run. A related phenomenon has been identified in Architectural Technical Debt: if the system architecture is sub-optimal for long-term business goals, it needs to be refactored. A key property of the system assuring long-term goals consists on modularity, or else the ability to decouple different components: such property allows the product to be evolved without costly changes pervading the whole system. However, understanding the business benefits of refactoring to achieve modularity is not trivial, especially for large refactorings involving substantial architectural changes. We have conducted a case study in a large company, analyzing a case of refactoring a component to achieve modularity. We report a comparative study of a refactored against a non-refactored component. We found that the modularization would be repaid in several months of development and maintenance. We present a method to calculate the effort saved by the modularization and an equation for calculating and quantifying the development and maintenance benefits of refactoring.

Estimation

Technical Debt

Software Architecture

Refactoring

Modularization

Software Management

Författare

Antonio Martini

Chalmers, Data- och informationsteknik, Software Engineering

Erik Sikander

Chalmers, Data- och informationsteknik, Software Engineering

N. Medlani

Chalmers, Data- och informationsteknik, Software Engineering

2016 42nd Euromicro Conference on Software Engineering and Advanced Applications (Seaa)

92-99

Ämneskategorier

Programvaruteknik

DOI

10.1109/seaa.2016.48

ISBN

978-1-5090-2819-1

Mer information

Senast uppdaterat

2018-07-23