How does ESA provide for easier adaptation and a better requirements fit?
Historically, filling in the gaps between a company's IT needs and the out-of-the-box functionality of any given enterprise application required any number of steps. Configuration of the application using metadata might address some needs, and tighter integration with preexisting applications and their processes would address others. If those were not enough, IT was expected to create extensions—new components welded onto the application—or even customized code written by the company's developers.
As depicted in Figure 4-9, these efforts gradually narrowed the gaps between the customer's requirements for the application and its actual functionality, but at a growing cost of complexity, and its corresponding costs of developer time and resources.

Figure 4-9. How requirements are satisfied
Enterprise services fill more of these gaps by creating the reusable building blocks that companies can combine easily to meet new requirements. As mentioned earlier in this chapter, the phrase loosely coupled describes enterprise services' characteristic of interacting in well-defined ways without needing to know each other's inner workings. This means that the service's functionality can change without affecting the services that use it, as long as the behavior described in its interface remains the same—that is, as long as it ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access