1. A computer program product including computer executable instructions stored onto a non-transitory computer readable medium which, when executed by a processor of a computer, causes the computer to perform a method for configuring an application, the instructions comprising: instructions to receive a definition of an enterprise; the enterprise definition including a hierarchical data structure, the hierarchical data structure comprising: an enterprise node that defines an enterprise; an asset node, wherein the asset node is a child node of the enterprise node, and wherein the asset node defines an asset of the enterprise; a process node, wherein the process node is a child node of the asset node, and wherein the process defines a process associated with the asset; a step node, wherein the step node is a child node of the property node, and wherein the step defines a step included in the process; and a progression logic node, wherein the progression logic node is a child node of the step node, and wherein the progression logic defines a result for the step.