1. A computer implemented method of supporting multiple deployment models for enterprise business applications, the method comprising: designating pillars associated with an enterprise business application, each of the pillars including application units, wherein the pillars comprise logical groupings for the application units to be used in an enterprise business application; utilizing a single database schema which is used for each deployment model, wherein the single database schema allows for an optimized implementation by having each of the pillars running within a single database instance; determining which of the application units are dependent to more than one of the pillars; determining which replication interface and service interfaces to use to resolve the dependencies; based on the determinations, generating deployment code associated with the dependent application units which is configured to be deployment model independent; receiving, at deployment time, a deployment model designation indicating the deployment model selected to be used for the enterprise business application; and deploying the enterprise business application according to the designated deployment model using the generated deployment code.