Deakin University
Browse

File(s) under permanent embargo

Using the k-core decomposition to analyze the static structure of large-scale software systems

journal contribution
posted on 2010-08-01, 00:00 authored by H Zhang, H Zhao, W Cai, J Liu, Wanlei Zhou
The structures of large-scale software systems are complex and difficult to understand for designers and developers. Traditional software metrics can hardly describe the structural complexity in modern software, and finding a quantitative method to depict and analyze large-scale software is still a challenge. In this paper we use complex networks theory to study software structure; in particular, we visualize the software graph and use the k-core to study it based on a recursive pruning of the least connected vertices. Different types of software are analyzed and some new noticeable properties are found, such as similar coreness, the vital highest core, high-core connecting tendency, and evolution stability. These features suggest that software is organized in a defined hierarchy of increasing centrality from outside to inside. The k-core analysis can help developers to improve software understanding, instruction test, and measurement and evaluation of the system in development.

History

Journal

Journal of supercomputing

Volume

53

Issue

2

Pagination

352 - 369

Publisher

Springer

Location

New York, N.Y.

ISSN

0920-8542

eISSN

1573-0484

Language

eng

Publication classification

C1.1 Refereed article in a scholarly journal

Copyright notice

2009, Springer Science+Business Media, LLC