To effectively deal with the current business pressures of increased competitive threats in a globalized environment with increased volatility and regulatory pressures, every company must transform itself into a leaner, faster and more agile enterprise. The existing rigid and inflexible information technology (IT) structure becomes a hindrance to any organization trying to achieve and maintain agility. A service-oriented architecture (SOA) solution, which streamlines and modernizes existing IT structures while addressing legacy system and application issues with minimal disturbance to an existing business, is the right approach.
SOA is more than an IT solution. SOA is fundamentally about describing, building, using and managing enterprise IT environment with a focus upon the services it provides, rather than upon the technology it uses. When enterprises or functional divisions/departments within an enterprise adopt a service-oriented architecture they describe their IT investment in terms of modular services, each delivering specific value. A well architected, governed and managed SOA environment allows enterprises to quickly create, combine and deploy services to respond to rapidly changing business needs.
In an enterprise SOA environment, business users create application functionality by building and managing business processes. Also, the SOA architecture should abstract the underlying technology, so that developers who formerly were concerned with connecting systems and applications can now concern themselves with building services. As a result, the entire IT mindset must then shift from the integration mindset to the mindset of building business services that abstract IT functionality.
Our SOA services can be categorized into:
- SOA and Integration Architecture – Analysis, architecture and design of the standards and models required to implement and manage the SOA environment and the underlying enterprise application integration (EAI) for an enterprise.
- Design & Development – The identification, build and implementation of services with the supporting applications infrastructure. This may begin with implementing or extending the EAI environment
- Management – The maintenance, monitoring and administration of the SOA and integration environments.
As enterprises look to implement SOAs, and software vendors work to produce solutions that enable such architectures, it is very important to have a uniform approach for integrating disparate, heterogeneous information and systems in the enterprise, an approach that meets the requirements for loosely coupled, coarse grained, asynchronous services with the existing infrastructure.
Approach that contributes to an optimal SOA implementation is the use of an Enterprise Service Bus (ESB) to provide an infrastructural element to distributed services on the network. The ESB approach to integration considers systems as discrete, distributed services that connect to each other via an asynchronous, message-oriented communications infrastructure. The message-oriented infrastructure allows loosely coupled, document-oriented exchanges between independent systems.
Though standard JMS based middleware components supplied by vendors like TIBCO, IBM, Microsoft and Oracle can be configured to form this Enterprise Service Bus, the actual integration and seamless information flow between different existing and new systems and information sources is a very tedious process, where the smooth flow could be interrupted any time any unplanned changes are made to any component. Hence, the ongoing maintenance is as critical as the initial implementation. Xoriant’s middleware services has 3 components:
- Technology Integration Services: Custom packaging, roll-outs, upgrade services, migration services and quality assurance
- Adapter Framework Services: Develop custom adapters and protocol transformers for EAI implementations. Integrate custom systems and databases into the EAI environment
- Monitoring and Sustenance Services: Framework for monitoring to manage distributed application and information sources. Sustenance of technology and application environment through multiple software releases of different components