Support Contact Us
Service-oriented architecture

In computing, the term Service-Oriented Architecture (SOA) expresses a perspective of software architecture that defines the use of services to support the requirements of software users. In an SOA environment, resources on a network are made available as independent services that can be accessed without knowledge of their underlying platform implementation

Service Oriented Architecture was first proposed by Roy W. Schulte and Yefim V. Natis who are Gartner analysts. They specified SOA as "a style of multi-tier computing that helps organizations share logic and data among multiple applications and usage modes."

SOA is usually based on Web services standards (e.g., using SOAP or REST) that have gained broad industry acceptance. These standards (also referred to as Web service specifications) also provide greater interoperability and some protection from lock-in to proprietary vendor software. However, one can implement SOA using any service-based technology.

SOA can also be regarded as a style of Information Systems architecture that enables the creation of applications that are built by combining loosely coupled and interoperable services. These services inter-operate based on a formal definition (or contract, e.g., WSDL) which is independent of the underlying platform and programming language. The interface definition hides the implementation of the language-specific service. SOA-compliant systems can therefore be independent of development technologies and platforms (such as Java, .NET etc). For example, services written in C# running on .Net platforms and services written in Java running on Java EE platforms can both be consumed by a common composite application. In addition, applications running on either platform can consume services running on the other as Web services, which facilitates reuse.

SOA can support integration and consolidation activities within complex enterprise systems, but SOA does not specify or provide a methodology or framework for documenting capabilities or services

High-level languages such as BPEL and specifications such as WS-Coordination extend the service concept further by providing a method of defining and supporting orchestration of fine grained services into coarser grained business services, which in turn can be incorporated into workflows and business processes implemented in composite applications or portals.

SOA definitions

The OASIS SOA Reference Model group defines SOA as

Integration Strategy

Integration Strategy services help our customers to formalize their integration and SOA vision and strategy, develop a high level integration architecture, and craft an integration roadmap that defines their path to success.

Service Oriented Architecture is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. It provides a uniform means to offer, discover, interact with and use capabilities to produce desired effects consistent with measurable preconditions and expectations.

There are multiple definitions of SOA but currently only the OASIS group has created a formal definition with depth which can be applied to both the technology and business domains.

  • OASIS SOA Reference Model definition
  • What Is Service-Oriented Architecture? (XML.com)
  • Webopedia definition
  • TechEncyclopedia definition
  • Object Management Group (OMG ) SOA Special Interest Group definition
  • WhatIs.com definition
  • SearchWebServices.com Numerous SOA definitions by industry experts

Though many definitions of SOA limit themselves to technology or just Web Services, this is predominantly pushed by technology vendors; in 2003 they talked just of Web Services, while in 2006 the talk is of events and process engines.

Why SOA?

Enterprise architects believe that SOA can help businesses respond more quickly and cost-effectively to the changing market conditions. This style of architecture promotes reuse at the macro (service) level rather than micro levels (eg. objects). It can also simplify interconnection to and usage of existing IT (legacy) assets.

In some respects, SOA can be considered an evolution in architecture, not a revolution. It captures many of best practices or actual use of the architectures that came before it. In communications systems, for example, there has been little development in recent years of solutions that use truly static bindings to talk to other equipment in the network, but by formally embracing an SOA approach, solutions are better positioned to stress the importance of well-defined, highly interoperable interfaces

Some have queried whether SOA is just a revival of modular programming (1970s), event-oriented design (1980s) or interface/component-based design (1990s). SOA promotes the goal of separating users (consumers) from the service implementations. Services can therefore be run on various distributed platforms and be accessed across networks. This can also maximise reuse of services.

Service-oriented design and development

The modelling and design methodology for SOA applications has become known by the terms service-oriented analysis and design and SODA. The SOA functions as much as a software development framework as it does as a delivery framework. In order for a firm to incorporate SOA in their environment successfully, the services that firm render must be identified. These services become candidates of the integral service components. Development of services and systems that use/reuse service requires a long-term commitment by both business sponsors and I.T. staff. As a new paradigm, the service model must be employed in all phases of planning to execution.

Services that are available at the business can be used to orchestrate the business process. Having loosely coupled and fine grained services help this by creating the processes on the fly. This alleviates the need or redoing the service each time process changes. Therefore it is required to differentiate the processes and the services that business perform.

TIBCO's SOA Approach and Advantage

Service-oriented architecture (SOA) is an IT strategy that is designed to breakdown monolithic applications into discrete business services that can be shared and reused across the enterprise using standards that improve their interoperability. Evidence shows that a successful SOA can accelerate the application delivery cycle by 40%, which speeds a company’s time-to-market, as well as reduces the total cost of IT by more than 20%.

TIBCO believes that SOA is the key to increasing business agility and IT efficiency while future-proofing the myriad of IT systems needed to support large, complex organizations. TIBCO can help deliver SOA which enables organizations to orchestrate services as part of processes that span not only internal departments but supplier and trading partners in B2B scenarios.

Simply put – enterprises can use SOA to simplify IT complexity, open their infrastructure to new standards and technologies, and accelerate the delivery of business applications.

Simplify

Manage IT complexity

Open

Reduce risk and cost

Accelerate

Speed time-to-market
Independent integration backbone: Extends across heterogeneous application platforms. Standards-based framework: Reduces risk through freedom of choice. Accelerate application deployment: Reuse and assemble services into composite applications.
No rip-and-replace: Leverages existing IT assets and exposes them as reusable services. Embrace technology innovation: Adaptable infrastructure enables adoption of emerging standards and technologies. Reduce project delays: Bridge communication gaps by aligning IT with business.
Incremental adoption: Start small and grow as needed with proven and scalable infrastructure. Reduce costs: Leverage existing developer skillsets by eliminating need to learn proprietary scripting languages. Deliver SOA today: Leverage best practices and methodology of TIBCO Accelerated Value Framework

TIBCO is Your Trusted Advisor to Help Deliver SOA Today

TIBCO has helped thousands of large organizations deploy their enterprise-wide SOA, providing proven software technologies as well as professional guidance in the areas of SOA planning, architecture design and implementation:

Pioneer and Leader of SOA Infrastructure

  • Inventor of The Information Bus: Distributed messaging and event-driven SOA
  • Leader in Integration Backbone Software, BPM and Web Services Platforms

Proven Enterprise-grade Reliability

  • Thousands of production deployments in high volume, mission-critical environments
  • Distributed technology ensures unparallel performance, reliability and scalability

Application Platform Independence

  • Integration heritage across highly heterogeneous environments
  • Ability to treat all legacy systems as first class citizens – not just newer Web services

Innovation and Standards

Methodology and Best Practices for Successful SOA

  • Accelerated Value Framework (AVF) for SOA: Best practices captured from successful customer deployments that can be leveraged to deliver SOA today