BuildPredictor: more accurate missed dependency prediction in build configuration files

Bo Zhou, Xin Xia, David Lo, Xinyu Wang

Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

11 Citations (Scopus)

Abstract

Software build system (e.g., Make) plays an important role in compiling human-readable source code into an executable program. One feature of build system such as make-based system is that it would use a build configuration file (e.g., Make file) to record the dependencies among different target and source code files. However, sometimes important dependencies would be missed in a build configuration file, which would cause additional debugging effort to fix it. In this paper, we propose a novel algorithm named Build Predictor to mine the missed dependncies. We first analyze dependencies in a build configuration file (e.g., Make file), and establish a dependency graph which captures various dependencies in the build configuration file. Next, considering that a build configuration file is constructed based on the source code dependency relationship, we establish a code dependency graph (code graph). Build Predictor is a composite model, which combines both dependency graph and code graph, to achieve a high prediction performance. We collected 7 build configuration files from various open source projects, which are Zlib, putty, vim, Apache Portable Runtime (APR), memcached, nginx, and Tengine, to evaluate the effectiveness of our algorithm. The experiment results show that compared with the state-of-the-art link prediction algorithms used by Xia et al., our Build Predictor achieves the best performance in predicting the missed dependencies.

Original languageEnglish
Title of host publicationProceedings - IEEE 38th Annual International Computers, Software and Applications Conference, COMPSAC 2014
Subtitle of host publication27–29 July 2014 Västerås, Sweden
EditorsCarl K. Chang, Yan Gao, Ali Hurson, Mihhail Matskin, Bruce McMillin, Yasuo Okabe, Cristina Seceleanu, Kenichi Yoshida
Place of PublicationPiscataway NJ USA
PublisherIEEE, Institute of Electrical and Electronics Engineers
Pages53-58
Number of pages6
ISBN (Electronic)9781479935741
DOIs
Publication statusPublished - 2014
Externally publishedYes
EventInternational Computer Software and Applications Conference 2014 - Vasteras, Sweden
Duration: 27 Jul 201429 Jul 2014
Conference number: 38th
https://www.computer.org/web/compsac/2014/home
https://ieeexplore.ieee.org/xpl/conhome/6898627/proceeding (Proceedings)

Conference

ConferenceInternational Computer Software and Applications Conference 2014
Abbreviated titleCOMPSAC 2014
Country/TerritorySweden
CityVasteras
Period27/07/1429/07/14
Internet address

Keywords

  • Build Graph
  • Build System
  • Code Graph
  • Link Prediction
  • Makefile

Cite this