Abstract

Software systems are of great importance, whose quality will influence every walk of our life. However, with increase in their scale and complexity, we are unable to control their quality since only little is known about their actual internal structure. “We cannot control what we cannot measure.” Thus, to control these complex software systems, the first task that we should do is to measure their internal structure. In recent years, people applied the theories and techniques in the field of complex networks to systematically investigate the structure of software systems by representing software systems as networks (i.e., software networks), and many interesting and useful results have been revealed. In this work, we aim to briefly review some recent research advances in the interdisciplinary research between complex networks and software engineering, including modeling, analysis, and applications. Specifically, we first describe some novel techniques to model the structural details of a specific software system. Then, based on these modeling techniques, we introduce some research work on characterizing the static and dynamic structural properties of software systems. Third, we describe some promising applications of software networks in real-world scenarios. Finally, we suggest some future research topics.

Highlights

  • Software systems have almost been used in every walk of life. us, how to provide a piece of software with high quality has been a problem attracting a lot of attention

  • With increase in the scale and complexity of software systems, it is a hard task to control the quality of a specific piece of software, especially when we know very little about the internal complexity of a specific software system [1, 2]

  • Software structure which is defined as the software elements and their couplings (e.g., “methodcall” couplings between methods and “inheritance” between classes) have been one of the most important factors that may influence the software complexity and further influence the quality of the software. us, how to measure and even to control the complexity of a software system has been a challenge faced by many researchers [4]. ere is an urgent need to develop a systematic approach to deeply explore the internal structure of software systems

Read more

Summary

Introduction

Software systems have almost been used in every walk of life. us, how to provide a piece of software with high quality has been a problem attracting a lot of attention. Ough network representation is not novel in software engineering, its form is simple and intelligible, which makes it feasible to perform the network analysis of software structure by using theories and techniques in the field of complex networks, and many significant discoveries and research results have been provided in the last decade [1, 2]. Note that such a network representation of the internal software structure of a specific software system is usually termed “software networks,” a notion similar to “complex networks” [5].

Related Work
Data Set
Method call
Applications of Software Networks
Findings
Future Research Topics
Full Text
Paper version not known

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.