1. A computer program product for object-oriented event simulation of a resource-constrained process including a resource entity object and a controlling entity object comprising a non-transitory machine-readable storage medium that includes instructions operable to cause a data processing apparatus to perform operations including: receiving a request for a resource entity object, wherein the request is associated with fulfilling a demand of a controlling entity for a resource, wherein the resource entity object is stored in a resource pool, and wherein the resource entity object includes one or more attributes corresponding to service providing capabilities of the resource; executing a query to the resource pool using one or more resource rules that describe the demand; determining that the resource entity object is configured to fulfill the demand, wherein the determination is made based upon the one or more attributes; allocating the resource entity object to a controlling entity object to form an entity object hierarchy when the one or more attributes of the resource entity object fulfills the one or more resource rules that describe the demand; scheduling an adjustment action of the resource entity object, wherein the adjustment action is associated with a change in a capacity attribute of the resource entity object or a change in an availability attribute of the resource entity object, and wherein adjustment actions include allocating the resource entity object to the controlling entity object or deallocating the resource entity object from the controlling entity object; and using the resource entity object in accordance with the adjustment action.