1. A method for determining a structure of a computer program project, the project having one or more compilable units, the method comprising: a) optionally receiving program structure information from a user; b) analyzing at least one of the compilable units to identify compiler commentary contained therein; c) discovering information about the program structure from the compiler commentary; and d) reconciling the information obtained from steps a) and c).