1. A computer readable media having instructions stored thereon that, when executed by a processor, causes the processor to compliance check a software application during a software development process, the instructions causing the processor to: receive an object definition file of the software application comprising a definition of a plurality of objects; generate an object hierarchy that describes the plurality of objects; for each rule of a plurality of rules from a rule engine, apply the rule to the object hierarchy, and augment the object hierarchy based on one or more new objects that are generated; when all rules have been applied, generate a final object hierarchy; and convert the final object hierarchy into a predetermined output format.