Analysis of software networks

Miloš Savić, Mirjana Ivanović, Lakhmi C. Jain

Research output: A Conference proceeding or a Chapter in BookChapter

1 Citation (Scopus)

Abstract

Modern software systems are characterized not only by a large number of constituent software entities (e.g. functions, modules, classes), but also by complex networks of dependencies among those entities. Analysis of software networks can help software engineers and researchers to understand and quantify software design complexity and evaluate software systems according to software design quality principles. In this chapter, we firstly give a comprehensive overview of previous research works dealing with analysis of software networks. Then, we present a novel network-based methodology to analyze software systems. The proposed methodology utilizes the notion of enriched software networks, i.e. software networks whose nodes are augmented with metric vectors containing both software metrics and metrics used in complex network analysis. The methodology is empirically validated on enriched software networks that represent large-scale Java software systems at different levels of abstraction.

Original languageEnglish
Title of host publicationComplex Networks in Software, Knowledge, and Social Systems
EditorsMiloš Savić, Mirjana Ivanović, Lakhmi C. Jain
Place of PublicationCham, Switzerland
PublisherSpringer
Chapter3
Pages59-141
Number of pages83
Volume148
ISBN (Electronic)9783319911960
ISBN (Print)9783319911946
DOIs
Publication statusPublished - 2019

Publication series

NameIntelligent Systems Reference Library
Volume148
ISSN (Print)1868-4394
ISSN (Electronic)1868-4408

Fingerprint

Complex networks
Software design
Electric network analysis
Engineers
software
Software
methodology
Systems software
network analysis
abstraction
Methodology
engineer

Cite this

Savić, M., Ivanović, M., & Jain, L. C. (2019). Analysis of software networks. In M. Savić, M. Ivanović, & L. C. Jain (Eds.), Complex Networks in Software, Knowledge, and Social Systems (Vol. 148, pp. 59-141). (Intelligent Systems Reference Library; Vol. 148). Cham, Switzerland: Springer. https://doi.org/10.1007/978-3-319-91196-0_3
Savić, Miloš ; Ivanović, Mirjana ; Jain, Lakhmi C. / Analysis of software networks. Complex Networks in Software, Knowledge, and Social Systems. editor / Miloš Savić ; Mirjana Ivanović ; Lakhmi C. Jain. Vol. 148 Cham, Switzerland : Springer, 2019. pp. 59-141 (Intelligent Systems Reference Library).
@inbook{ca06e8db320b4bd0a851125a6f220097,
title = "Analysis of software networks",
abstract = "Modern software systems are characterized not only by a large number of constituent software entities (e.g. functions, modules, classes), but also by complex networks of dependencies among those entities. Analysis of software networks can help software engineers and researchers to understand and quantify software design complexity and evaluate software systems according to software design quality principles. In this chapter, we firstly give a comprehensive overview of previous research works dealing with analysis of software networks. Then, we present a novel network-based methodology to analyze software systems. The proposed methodology utilizes the notion of enriched software networks, i.e. software networks whose nodes are augmented with metric vectors containing both software metrics and metrics used in complex network analysis. The methodology is empirically validated on enriched software networks that represent large-scale Java software systems at different levels of abstraction.",
author = "Miloš Savić and Mirjana Ivanović and Jain, {Lakhmi C.}",
year = "2019",
doi = "10.1007/978-3-319-91196-0_3",
language = "English",
isbn = "9783319911946",
volume = "148",
series = "Intelligent Systems Reference Library",
publisher = "Springer",
pages = "59--141",
editor = "Savić, {Miloš } and Ivanović, {Mirjana } and Jain, {Lakhmi C.}",
booktitle = "Complex Networks in Software, Knowledge, and Social Systems",
address = "Netherlands",

}

Savić, M, Ivanović, M & Jain, LC 2019, Analysis of software networks. in M Savić, M Ivanović & LC Jain (eds), Complex Networks in Software, Knowledge, and Social Systems. vol. 148, Intelligent Systems Reference Library, vol. 148, Springer, Cham, Switzerland, pp. 59-141. https://doi.org/10.1007/978-3-319-91196-0_3

Analysis of software networks. / Savić, Miloš; Ivanović, Mirjana; Jain, Lakhmi C.

Complex Networks in Software, Knowledge, and Social Systems. ed. / Miloš Savić; Mirjana Ivanović; Lakhmi C. Jain. Vol. 148 Cham, Switzerland : Springer, 2019. p. 59-141 (Intelligent Systems Reference Library; Vol. 148).

Research output: A Conference proceeding or a Chapter in BookChapter

TY - CHAP

T1 - Analysis of software networks

AU - Savić, Miloš

AU - Ivanović, Mirjana

AU - Jain, Lakhmi C.

PY - 2019

Y1 - 2019

N2 - Modern software systems are characterized not only by a large number of constituent software entities (e.g. functions, modules, classes), but also by complex networks of dependencies among those entities. Analysis of software networks can help software engineers and researchers to understand and quantify software design complexity and evaluate software systems according to software design quality principles. In this chapter, we firstly give a comprehensive overview of previous research works dealing with analysis of software networks. Then, we present a novel network-based methodology to analyze software systems. The proposed methodology utilizes the notion of enriched software networks, i.e. software networks whose nodes are augmented with metric vectors containing both software metrics and metrics used in complex network analysis. The methodology is empirically validated on enriched software networks that represent large-scale Java software systems at different levels of abstraction.

AB - Modern software systems are characterized not only by a large number of constituent software entities (e.g. functions, modules, classes), but also by complex networks of dependencies among those entities. Analysis of software networks can help software engineers and researchers to understand and quantify software design complexity and evaluate software systems according to software design quality principles. In this chapter, we firstly give a comprehensive overview of previous research works dealing with analysis of software networks. Then, we present a novel network-based methodology to analyze software systems. The proposed methodology utilizes the notion of enriched software networks, i.e. software networks whose nodes are augmented with metric vectors containing both software metrics and metrics used in complex network analysis. The methodology is empirically validated on enriched software networks that represent large-scale Java software systems at different levels of abstraction.

UR - http://www.scopus.com/inward/record.url?scp=85047010055&partnerID=8YFLogxK

UR - http://www.mendeley.com/research/analysis-software-networks

U2 - 10.1007/978-3-319-91196-0_3

DO - 10.1007/978-3-319-91196-0_3

M3 - Chapter

SN - 9783319911946

VL - 148

T3 - Intelligent Systems Reference Library

SP - 59

EP - 141

BT - Complex Networks in Software, Knowledge, and Social Systems

A2 - Savić, Miloš

A2 - Ivanović, Mirjana

A2 - Jain, Lakhmi C.

PB - Springer

CY - Cham, Switzerland

ER -

Savić M, Ivanović M, Jain LC. Analysis of software networks. In Savić M, Ivanović M, Jain LC, editors, Complex Networks in Software, Knowledge, and Social Systems. Vol. 148. Cham, Switzerland: Springer. 2019. p. 59-141. (Intelligent Systems Reference Library). https://doi.org/10.1007/978-3-319-91196-0_3