This step-by-step approach also limits the implementation failure and any associated costs. If the implementation of a module is considered unsuccessful, an application or a module from another provider could be implemented or the implementation could be dropped completely. In addition, the implementation's goals can also be modified and the time frame adapted in order to avoid major set backs and to consolidate what has already been successfully implemented.