Goal of Service-Oriented Architecture
Increasingly fragmented and complex infrastructures are limiting IT's ability to deliver on business needs. Many organizations have inherited disjointed legacy systems and packaged applications, a large proportion of which were never designed for information interoperability, integration, and reuse. The result of this is that most of the IT budget goes into maintenance of the current IT infrastructure and only a small amount is available for new functionalities to drive new business opportunities. The major portion of budget for new capabilities goes into the cost of integrating new functionality into the existing systems that offer poor support for interoperability.
Traditionally, business information systems have been developed with a functional orientation often resulting in silos of information. The fundamental problem with this approach is that end-to-end business processes, which span silos, are not adaptable to change as business needs evolve. The processes become fragmented and embedded deep within systems. Enterprise application integration (EAI) and other traditional middleware solutions partially address this by enabling systems to communicate with each other, but they do not fully solve the problem. Their ability to create cross application business processes is inadequate, and they allow only limited business process adaptability. Moreover, these traditional solutions come at a high cost. The majority of EAI and traditional middleware solutions use proprietary technology, which causes dependency on specialized skills and to that single vendor's products. In addition, the systems become tightly coupled, so if an interface change occurs in one system, all other systems need to be adjusted. Not only does the technology make it difficult to make changes, it can become cost-prohibitive to do so.
Service-oriented architecture (SOA) helps address the fragmented IT landscape and addresses the difficulties associated with silos of IT infrastructure and applications.