A method for executing program builds is described comprising: analyzing
file dependency information contained within a first file; scheduling
jobs for a program build based on the analysis of the dependency
information; executing the jobs according to the schedule; collecting
file usage information from each of the jobs; and supplementing the file
dependency information with the file usage information.