Improving the build architecture of legacy c/c++ software systems

  • Authors:
  • Homayoun Dayani-Fard;Yijun Yu;John Mylopoulos;Periklis Andritsos

  • Affiliations:
  • IBM, Canada;University of Toronto;University of Toronto;University of Toronto

  • Venue:
  • FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

The build architecture of legacy C/C++ software systems, groups program files in directories to represent logical components. The interfaces of these components are loosely defined by a set of header files that are typically grouped in one common include directory. As legacy systems evolve, these interfaces decay, which contribute to an increase in the build time and the number of conflict in parallel developments. This paper presents an empirical study of the build architecture of large commercial software systems, introduces a restructuring approach, based on Reflexion models and automatic clustering, and reports on a case study using VIM open source editor.