Multi-criteria code refactoring using search-based software engineering: An industrial case study

A Ouni, M Kessentini, H Sahraoui, K Inoue… - ACM Transactions on …, 2016 - dl.acm.org
One of the most widely used techniques to improve the quality of existing software systems
is refactoring—the process of improving the design of existing code by changing its internal …

How does refactoring affect internal quality attributes? A multi-project study

A Chávez, I Ferreira, E Fernandes, D Cedrim… - Proceedings of the …, 2017 - dl.acm.org
Refactoring is a technique commonly applied by developers along the software
maintenance and evolution. Software refactoring is expected to improve the internal quality …

Improving software modularization via automated analysis of latent topics and dependencies

G Bavota, M Gethers, R Oliveto, D Poshyvanyk… - ACM Transactions on …, 2014 - dl.acm.org
Oftentimes, during software maintenance the original program modularization decays, thus
reducing its quality. One of the main reasons for such architectural erosion is suboptimal …

Function-splitting heuristics for discovery of microservices in enterprise systems

AAC De Alwis, A Barros, A Polyvyanyy… - … -Oriented Computing: 16th …, 2018 - Springer
We present heuristics that help to identify suitable consumer-oriented parts of enterprise
systems which could be re-engineered as microservices. Our approach assesses the key …

Improving modular structure of software system using structural and lexical dependency

JK Chhabra - Information and software Technology, 2017 - Elsevier
Context A software system's structure often degrades due to repetitive maintenance. To
make a sustainable evolution of such systems, it becomes mandatory to improve their …

Recommending move method refactorings using dependency sets

V Sales, R Terra, LF Miranda… - 2013 20th Working …, 2013 - ieeexplore.ieee.org
Methods implemented in incorrect classes are common bad smells in object-oriented
systems, especially in the case of systems maintained and evolved for years. To tackle this …

Simulink models are also software: Modularity assessment

Y Dajsuren, MGJ Van Den Brand… - Proceedings of the 9th …, 2013 - dl.acm.org
In automotive industry, more and more complex electronics and software systems are being
developed to enable the innovation and to decrease costs. Besides the complex multimedia …

A hybrid genetic algorithm for software architecture re-modularization

L Mu, V Sugumaran, F Wang - Information Systems Frontiers, 2020 - Springer
Software architectures have become highly heterogeneous and difficult to maintain due to
software evolution and continuous change. Therefore, a software system usually must be …

A recommendation system for repairing violations detected by static architecture conformance checking

R Terra, MT Valente, K Czarnecki… - Software: Practice and …, 2015 - Wiley Online Library
This paper describes a recommendation system that provides refactoring guidelines for
maintainers when tackling architectural erosion. The paper formalizes 32 refactoring …

An empirical study of software metrics for assessing the phases of an agile project

G Concas, M Marchesi, G Destefanis… - International Journal of …, 2012 - World Scientific
We present an analysis of the evolution of a Web application project developed with object-
oriented technology and an agile process. During the development we systematically …