Date of Award

May 2015

Degree Type


Degree Name

Master of Science


Computer Science

First Advisor

Ethan V. Munson

Committee Members

Ryan Hardt, Tian Zhao


Ant, Build Maintenance, Formiga, Version Control


The task of build maintenance consists of creating, configuring, and updating the build system of a software engineering project. A project of sufficient size and scope is likely to have some sort of build system due to the complexity and time required to create a finished product. Build maintenance has been shown to greatly increase the cost of developing software due to the common need to modify a build system at the same time as the source code. Unfortunately, there is little in the way of tool support to assist developers with build maintenance.

Formiga is a build maintenance and dependency discovery tool developed by Hardt. Formiga provides support for build refactoring, dependency identification, and automatic build updating based on modifications to source code. This thesis expands upon the original Formiga tool by investigating what kind of hurdles would be involved in integrating it with a production-quality version control system. An initial implementation of version control integration is built on top of the Formiga IDE plugin. It makes use of a mock version control system to keep track of file and file dependency history. This work, while not integrating with a production-quality version control system, lays a basis on which to perform that full integration in future iterations of Formiga.