Home
Contact us
Technology Skills
Comparisions
Interview Q & A
Management Skills
Free SMS Collection
Entertainment
Set as Homepage | Add to favorites


Bestest Blog of All- Time

Service Oriented Architecture

Service Oriented Architecture (SOA)

A Service Oriented Architecture (SOA) is set of principles that define an architecture that is loosely coupled and comprised of service providers and service consumers that interact according to a negotiated contract or interface. These services provide the Interfaces to Applications in the IT landscape. The primary goal of SOA is to expose application functions in a standardized way so that they can be leveraged across multiple projects. This approach greatly reduces the time, effort and cost it takes to maintain and expand solutions to meet business needs.
It is important to note that SOA is not an off-the-shelf technology; rather it is a way of architecting and organizing IT infrastructure and business functionality. SOA is a paradigm for designing, developing, deploying and managing discrete units of logic i.e. services, within a computing environment, and has the following attributes:

• Functionality is organized as a set of modular, reusable shared services
• Services have well-defined interfaces and encapsulate key business processes
• Customer facing solutions serve as customized views of these services for different segments, and can access these shared services as needed.
• The reusable shared services are built without making any assumptions of who (portal or another service) will consume these services

SOA is vital to an enterprise as an architecture paradigm because it allows the business to become agile and respond rapidly to changes and challenges it faces internally and externally from its customers, stakeholders and various federal mandates and regulations to accomplish mission critical objectives.

Benefits of SOA

SOA promotes loose coupling of software resulting in services that are easier to integrate as they utilize lower-cost tools and have standards based exchange formats and interface. Some of the key benefits that an enterprise can achieve from SOA are:
Agility to collaborate – SOA provides ability to securely and easily share information, with partners and stakeholders by presenting a standard coarse grained service which any authorized business partner can use, there by extending the enterprise.
Agility to adapt – SOA promotes the ability to rapidly reconfigure the business process by selecting from the available set of services, thereby providing the agility to adapt to the business requirements introduced by stakeholders and business partners.
Reduction of cost - SOA primitives are standards based For example, WSDL, SAML, SOAP & UDDI, providing a modular architecture, thereby enabling sharing and reuse of services.
Improvement in efficiency - SOA promotes a modular enterprise, promising a high degree of reusability of business services, ensuring consistency.
Better business operations: SOA based services enable a common architecture and approach to be pervasive in an enterprise containing heterogeneous legacy systems.
Ease of introducing new technologies – SOA’s coarse grain modularity allows enhancements to service by introducing new more efficient technologies as they are introduced without actually changing the service interface.

A service oriented architecture (SOA) can be evolved based on existing system investments rather than requiring a full-scale system rewrite. Organizations that focus their development effort around the creation of services, using existing technologies, combined with the component-based approach to software development will realize several benefits:

• Leverage existing assets
• Infrastructure, a commodity
• Faster time-to-market
• Reduced cost
• Risk mitigation
• Continuous Business Process improvement
• Process-centric architecture

Principles and Definitions

Priciples
Services share a formal contract
Services are loosely coupled
Services abstract underlying logic
Services are composable
Services are reusable
Services are stateless
Services are discoverable

Definition

SOA is an architectural style whose goal is to achieve loose coupling among interacting software agents. A service is a unit of work done by a service provider to achieve desired end results for a service consumer. Both provider and consumer are roles played by software agents on behalf of their owners.

Collection of services
These are services that communicate with each other

Challenges
• Business Service Security
• Business Service Governance & Auditing
• Service Level Compliance
• Business Service Lifecycle Management

Key Components of SOA
• Service
• Message
• Dynamic Discovery
• Web Service

SOA lifecycle

Difference between SOA & Webservices
Service-Oriented Architecture is an IT business system design methodology that is focused on reusability, breaking down silos, and enabling rapid and on-going optimization of business processes.
An SOA can be implemented using any number of technologies. However, in practice the Web services standards and technologies (XML, SOAP, WSDL, WS-Security, WS-Policy, etc.) are at the heart of forming every organization's SOA implementation.