Service Oriented Architecture (SOA) is an architectural strategy that helps achieve tighter Business-IT alignment by taking a three-dimensional perspective of the enterprise, viz. technology, people and processes. It uses standards-based interfaces to facilitate need-based access to IT resources spread over an enterprise network. SOA instills agility - a crucial quality for sustained business competitiveness - into enterprises by helping create flexible business processes and providing practical and cost-effective means of integration.
At Object One, our SOA Center of Excellence solve many, often-recurring, business processes; from delivering information between applications within disparate environments to enabling the cost-effective reuse of existing technology assets.
E-business solutions require the ability to efficiently deliver maximum performance to a highly variable number of users. In the world of cost reductions, building significant excess capacity into the infrastructure is not an option; capacity needs to continuously adjust to the volume. Object One does just that. Minimizing the cost associated with managing these environments is one of our top priorities.
Our ebusiness solutions leverage those platforms and enable those tools that are easy to deploy, have the ability to automatically add capacity as needed and deliver low cost of ownership through an integrated management framework.
Web Services solutions and ebusiness solutions emerge as catalysts for Service-Oriented Architecture (SOA), the next generation architectural model that extends the flexibility and reach of existing IT infrastructure in enterprises. SOA brings many organizational benefits, including:
Flexibility on account of separation of interfaces and implementations, enhanced reuse in terms of shared services across multiple applications, business models, geographies etc.
Interoperability leading to automation of application to application communication
Preservation of investment in legacy
Control in the hands of business stakeholders instead of IT stakeholders, due to contractual
Open Source J2EE Platforms (JBoss etc) for reducing total cost of wnership (TCO) of J2EE based solutions interfaces of IT implementations.
In addition to the above, SOA provides certain advantages owing to standardization and virtualization. Key advantages include:
Cost-effective integration of applications as compared to conventional EAI solutions
Platform neutrality and agnosticism makes them the ideal choice for solutions involving data and information aggregation from heterogeneous sources across enterprises
Enablement of cross-enterprise business processes
Forming the basis for futuristic enterprise IT trends like grid computing, pervasive computing and Business Process Management (BPM).
Layers of SOA solution
End users (humans or partner businesses) use business applications, which can be rich-client, mobile, portlet-based, or Web-based to invoke business processes. A business process is created by the composition and choreography of business services provided by service components. Service components may interact with other operational or legacy systems within the enterprise to acquire the requested information or perform a business task. Services are at the heart of this multilayer architecture and are components that realize service flows and processes. There's a notion of a service consumer and a service provider. Integration (through the ESB), a security and monitoring infrastructure, data architecture, and governance are depicted as foundational layers of capability underpinning an SOA solution
SOA application's life Cycle
Model: Gather requirements, model business processes, and perform design work.
Assemble: Discover or construct the necessary services, connect those services to the business process model, establish the key performance indicators (KPIs) that will be used to monitor the process, and test the application.
Deploy: Integrate people, processes, and activities required to deploy the application into the production runtime environment.
Manage: Collect and display application, process, and service-level metrics in various tools used by business and IT staff to ensure that the applications and processes are performing as expected. These same metrics can then be fed back into the model stage, enabling continuous improvement of applications and processes.