The evolving structures of software systems
Kecia A. M. Ferreira, Roberta Coeli Neves Moreira, Mariza A. S. Bigonha, Roberto S. Bigonha
Abstract
Kecia A. M. Ferreira, Roberta Coeli Neves Moreira, Mariza A. S. Bigonha, Roberto S. Bigonha
Abstract
Software maintenance is an important problem because software is an evolving complex system. To make software maintenance viable, it is important to know the real nature of the systems we have to deal with. Little House is a model that provides a macroscopic view of software systems. According to Little House, a software system can be modeled as a graph with five components. This model is intended to be an approach to improve the understanding and the analysis of software structures. However, to achieve this aim, it is necessary to determine its characteristics and its implications. This paper presents the results of an empirical study aiming to characterize software evolution by means of Little House and software metrics. We analyzed several versions of 13 open source software systems, which have been developed over nearly 10 years. The results of the study show that there are two main components of Little House which suffer substantial degradation as the software system evolves. This finding indicates that those components should be carefully taken in consideration when maintenance tasks are performed in the system.
OpenAlex reports 6 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Software maintenance is an important problem because software is an evolving complex system. To make software maintenance viable, it is important to know the real nature of the systems we have to deal with. Little House is a model that provides a macroscopic view of software systems. According to Little House, a software system can be modeled as a graph with five components. This model is intended to be an approach to improve the understanding and the analysis of software structures. However, to achieve this aim, it is necessary to determine its characteristics and its implications. This paper presents the results of an empirical study aiming to characterize software evolution by means of Little House and software metrics. We analyzed several versions of 13 open source software systems, which have been developed over nearly 10 years. The results of the study show that there are two main components of Little House which suffer substantial degradation as the software system evolves. This finding indicates that those components should be carefully taken in consideration when maintenance tasks are performed in the system.
Key concepts: Software system, Software construction, Software sizing, Computer science, Software maintenance, Software analytics, Software development, Software engineering