1. In a computer system, a method for managing a construction project, executed by a least one or more processors, said method comprising: receiving a plurality of identifiers from a user, each of said identifiers identifying a respective component of said construction project; associating an initial one of at least three predefined states with each of said identifiers, said predefined states indicating the construction status of the component identified by the associated identifier; writing records to a database, said records including said identifiers and said associated initial states; updating the states associated with said identifiers by writing records to said database associating different ones of said predefined states with said identifiers; and retrieving the updated states from said database to determine the status of said construction project; and wherein said step of updating said states associated with said identifiers depends on changes in the construction status of said components identified by said identifiers; and said step of updating said states includes retrieving said identifiers from said database, retrieving said predefined states from said database, presenting said identifiers and said predefined states to said user, receiving a selection of one of said identifiers to be updated from a list of identifiers from said user, receiving a selection of a state from a list of predefined states from said user, and writing a record to said database associating said selected identifier with said selected state.