Measuring Software Maintainability: An Exploration of Metrics and Continuous Practices
DOI:
https://doi.org/10.37934/araset.63.2.181195Keywords:
Software maintainability, software metrics, Agile, DevOps, continuous maintenance, continuous integration, evolutionAbstract
Maintainability is a critical aspect of modern software projects, referring to the ease with which a system can be modified, repaired, or adapted to changing requirements. In today's agile environment, maintainability is becoming increasingly important, yet there is not much literature that reports whether the metrics established since several decades ago are still used in modern projects. Are there different measures of software maintainability in Agile and DevOps, in particular? This paper reviews the evolution of software maintainability metrics from traditional function-oriented to contemporary software development approaches. The objective is to understand the advantages and limitations of software metrics in each paradigm and understand the impact of continuous practices on maintainability in modern software development. It is observed that those metrics particularly the many object-oriented metrics were developed based on the assumptions and practices prevalent during the waterfall and traditional software development era. Agile, DevOps and other modern development practices have different approaches and techniques that may require different metrics to assess software maintainability effectively.
Downloads
