所选主题:缺陷预测
论文题目:Graph-Based Analysis and Prediction for Software Evolution
作者:Bhattacharya, P. ; ; ;
会议:Software Engineering (ICSE), 2012 34th International Conference on
DOI: 10.1109/ICSE.2012.6227173
Publication Year: 2012 , Page(s): 419 - 429
Cited by: Papers (10)
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 softwarereliability. 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 graphmetrics 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 ourgraph 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 topologyanalysis concepts can open many actionable avenues in softwareengineering research and practice.