Title
Graph-based analysis and prediction for software evolution
Abstract
We exploit recent advances in analysis of graph topology to better understand software evolution, and to construct predictors that facilitate software development and maintenance. Managing an evolving, collaborative software system is a complex and expensive process, which still cannot ensure software reliability. Emerging techniques in graph mining have revolutionized the modeling of many complex systems and processes. We show how we can use a graph-based characterization of a software system to capture its evolution and facilitate development, by helping us estimate bug severity, prioritize refactoring efforts, and predict defect-prone releases. Our work consists of three main thrusts. First, we construct graphs that capture software structure at two different levels: (a) the product, i.e., source code and module level, and (b) the process, i.e., developer collaboration level. We identify a set of graph metrics that capture interesting properties of these graphs. Second, we study the evolution of eleven open source programs, including Firefox, Eclipse, MySQL, over the lifespan of the programs, typically a decade or more. Third, we show how our graph metrics can be used to construct predictors for bug severity, high-maintenance software parts, and failure-prone releases. Our work strongly suggests that using graph topology analysis concepts can open many actionable avenues in software engineering research and practice.
Year
DOI
Venue
2012
10.1109/ICSE.2012.6227173
ICSE
Keywords
Field
DocType
software system,collaborative software system,software reliability,software development,software engineering research,graph-based analysis,software evolution,capture software structure,graph metrics,bug severity,high-maintenance software part,topology,collaboration,maintenance engineering,source code,software maintenance,public domain software,graph theory,software engineering,graph topology,software quality,software systems,complex system,measurement,groupware,empirical studies,empirical study
Software analytics,Systems engineering,Software engineering,Computer science,Software system,Software metric,Software maintenance,Software construction,Software visualization,Software evolution,Software development
Conference
Volume
ISSN
ISBN
2
0270-5257
978-1-4673-1067-3
Citations 
PageRank 
References 
65
1.77
33
Authors
4
Name
Order
Citations
PageRank
Pamela Bhattacharya11997.89
Marios Iliofotou247618.49
Iulian Neamtiu3174182.96
Michalis Faloutsos45288586.88