The highest costs related to business applications rely on the development project that is necessary to undertake to adapt them to the particular reality of each company and integrate them with the rest of preexisting applications. To reduce the terms and, therefore, the costs of this integration as much as possible is a fundamental purpose in the design of business applications architecture. For this purpose, the maximum flexibility is intended so that it ensures that the technological platform is not held back and can develop to adapt itself to changes in business needs, adjusting new applications in a dynamic and simple form, as necessary.

Not long ago, it was usual to develop separate applications for different business processes, which were not designed to be aware of the existence of other applications. This supposed that when there was a need for two applications to communicate between them or share the same structure of data, it was necessary to develop a specific interface, based typically on the APIs of both applications.
Currently, it is a usual practice to use standard interfaces for communication between applications, such as, Web Services. This enables the implementation of horizontal support applications to other applications which carry out common tasks for several business processes (for example, the application of bank accounting or the application of supply chain management of a distribution company).
The development of new applications is also widespread following a 3-tier model where the presentation, the logic of the application, and the data are clearly separated. This separation in tiers provides with a great flexibility and cost saving. It allows not only to consolidate each tier in a suitable server type for that task but also to reuse components among all the applications.
Separation and consolidation of each tier of data is especially significant since they allow to use all the company’s information in a single database, avoiding information duplicity or incoherence.
|