Abstract

Software systems are a typical kind of man-made complex systems. Understanding their evolutions can lead to better software engineering practices. In this paper, the authors use complex network theory as a tool to analyze the evolution of object-oriented (OO) software from a multigranularity perspective. First, a multi-granularity software networks model is proposed to represent the topological structures of a multi-version software system from three levels of granularity. Then, some parameters widely used in complex network theory are applied to characterize the software networks. By tracing the parameters’ values in consecutive software systems, we have a better understanding about software evolution. A case study is conducted on an open source OO project, Azureus, as an example to illustrate our approach, and some underlying evolution characteristics are uncovered. These results provide a different dimension to our understanding of software evolutions and also are very useful for the design and development of OO software systems.

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

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.