Abstract

Simulations have been used in various areas, yielding good results, but their application to software evolution is still limited. Simulations of software evolution can help people understand the driving forces that shape software evolution, and predict future evolutionary paths. To move towards simulation of software evolution, this research tries to explore possible models to simulate software evolution, and the applicability of different data to parameterize the models. The simulations will both be based on fine-grained code changes obtained by comparing the abstract syntax trees of source code. The use of fine-grain code changes could reveal information about software evolution that is unavailable by other means.

Highlights

  • 1.1 Emergent Phenomena in SoftwareSoftware systems are fully intentional products of human intelligence

  • This chapter briefly introduces power law distributions and complex networks, presents empirical evidence in the literature indicating their existence in software evolution

  • To overcome the shortcomings of previous work on change size, we define a new measure for change size and conducted our own empirical study

Read more

Summary

Introduction

Software systems are fully intentional products of human intelligence. One should expect that every aspect of software, except for defects due to human mistakes, will encode some human intention: either from a black box point of view, such as the behavior of an interface element, or from a white box point of view, such as the way a method calls another method. Empirical studies of software systems have revealed phenomena beyond human intention. Computer software often consists of many components of different granularity, such as libraries, modules, classes, and functions. These components are not isolated, but instead have various inter-relationships, via function/method calls, class inheritance, package imports, etc. Software can be modeled as a network, with the components as vertices and their relations as the edges

Methods
Results
Discussion
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call