24 October 2003/Vol. 46, No. 10 COMMUNICATIONS OF THE ACM

Similar documents
Introduction to Service Oriented Architectures (SOA)

Service Computing: Basics Monica Scannapieco

Service-Oriented Computing and Software Agents

Introduction to Service-Oriented Architecture for Business Analysts

Service -Oriented Computing: Concepts, Characteristics and Directions

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Service-Oriented Architectures

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

Service Oriented Architecture

A standards-based approach to application integration

SERVICE ORIENTED ARCHITECTURE

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

NIST s Guide to Secure Web Services

Service Virtualization: Managing Change in a Service-Oriented Architecture

Oracle SOA Suite: The Evaluation from 10g to 11g

Multi-agent System based Service Oriented Architecture for Supply Chain Management System (MAS-SOA-SCM)

What is the Difference Between Application-Level and Network Marketing?

AquaLogic Service Bus

CONDIS. IT Service Management and CMDB

Toward Next Generation Distributed Business Information Systems: Five Inherent Capabilities of Service-Oriented Computing

HP SOA Systinet software

1 What Are Web Services?

Getting Started with Service- Oriented Architecture (SOA) Terminology

How To Understand A Services-Oriented Architecture

Government's Adoption of SOA and SOA Examples

Integration using IBM Solutions

Service-Oriented Architecture and Software Engineering

Oracle SOA Suite Then and Now:

Table of Contents. 1 Executive Summary SOA Overview Technology Processes and Governance... 8

Service-oriented architecture in e-commerce applications

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

Enterprise Application Designs In Relation to ERP and SOA

Improving Agility at PHMSA through Service-Oriented Architecture (SOA)

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

The OMA Perspective On SOA in Telecoms

Dagstuhl seminar on Service Oriented Computing. Service design and development. Group report by Barbara Pernici, Politecnico di Milano

Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

SOA CERTIFIED CONSULTANT

ebay : How is it a hit

Integrated Tourism Service Supply Chain Management System Based on SOA

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Extend the value of your core business systems.

1 What Are Web Services?

PUR1311/19. Request for Information (RFI) Provision of an Enterprise Service Bus. to the. European Bank for Reconstruction and Development

JOURNAL OF OBJECT TECHNOLOGY

Architectural Requirements for an SOA Based on Web Services. Jim Bole VP, Engineering Infravio, Inc. April 23, 2003

UDDI v3: The Registry Standard for SOA

Chapter 15. Web services development lifecycle

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

What You Need to Know About Transitioning to SOA

David Pilling Director of Applications and Development

Service Oriented Architecture for Net Centric Operations based on Open Source Technology

Business Rule Standards -- Interoperability and Portability

Ontological Identification of Patterns for Choreographing Business Workflow

Oracle SOA Reference Architecture

Web Services Software Architecture

SERVICE ORIENTED ARCHITECTURES (SOA) AND WORKFLOWS NEED FOR STANDARDISATION?

IMPLEMENTATION OF SERVICE ORIENTED ARCHITECTURE USING ITIL BEST PRACTICES

Service Oriented Architecture: A driving force for paperless healthcare system

Asset Management and EBU

A QoS-aware Method for Web Services Discovery

SOA Governance: What s Required To Govern And Manage A Service-Oriented Architecture. An Oracle White Paper October 2006

Clarity Assurance allows operators to monitor and manage the availability and quality of their network and services

SOA Planning Guide The Value Enablement Group, LLC. All rights reserved.

Service-oriented architectures (SOAs) support

Run-time Service Oriented Architecture (SOA) V 0.1

Chapter 2: Cloud Basics Chapter 3: Cloud Architecture

Service Oriented Architecture

SOA GOVERNANCE MODEL

SOA and Cloud in practice - An Example Case Study

Security Issues in Cloud Computing

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

ESB as a SOA mediator: Minimizing Communications Complexity

Chapter 6 Registering and Discovering. Web Serv vices: Web services

AquaLogic ESB Design and Integration (3 Days)

Towards Management of SLA-Aware Business Processes Based on Key Performance Indicators

SOA Myth or Reality??

SOA Best Practices (from monolithic to service-oriented)

Introduction to UDDI: Important Features and Functional Concepts

SOA REFERENCE ARCHITECTURE: SERVICE ORIENTED ARCHITECTURE

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Introduction to SOA governance and service lifecycle management.

Distributed systems. Distributed Systems Architectures

Analyses on functional capabilities of BizTalk Server, Oracle BPEL Process Manger and WebSphere Process Server for applications in Grid middleware

Developing SOA solutions using IBM SOA Foundation

OIT Cloud Strategy 2011 Enabling Technology Solutions Efficiently, Effectively, and Elegantly

ActiveVOS Server Architecture. March 2009

Research on the Model of Enterprise Application Integration with Web Services

Web Services Strategy

Creating Web Services in NetBeans

Architectural Decisions as Service Realization Methodology in Model-Driven SOA Construction

A Service Oriented Security Reference Architecture

A System for Interactive Authorization for Business Processes for Web Services

Enhancing A Software Testing Tool to Validate the Web Services

Policy Driven Practices for SOA

Contents Huntcliff, Suite 1350, Atlanta, Georgia, 30350, USA

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

Lesson 18 Web Services and. Service Oriented Architectures

secure intelligence collection and assessment system Your business technologists. Powering progress

Transcription:

24 October 2003/Vol. 46, No. 10 COMMUNICATIONS OF THE ACM

By M.P. Papazoglou and D. Georgakopoulos, Guest Editors SERVICE-ORIENTED COMPUTING Illustration by Peter Hoey Service-oriented computing (SOC) is the computing paradigm that utilizes services as fundamental elements for developing applications. SOC involves the service layers, functionality, and roles (see the sidebar Services Overview ) as described by the extended service-oriented architecture (SOA) depicted in the figure here. Basic services, their descriptions, and basic operations (publication, discovery, selection, and binding) that produce or utilize such descriptions constitute the SOA foundation. The higher layers in the SOA pyramid provide additional support required for service composition and service management. The service composition layer encompasses necessary roles and functionality for the consolidation of multiple services into a single composite service. The resulting composite services may be used by service aggregators as components (basic services) in further service compositions or may be utilized as applications/solutions by service clients. Service aggregators thus become service providers by publishing the service descriptions of the composite service they create. Service aggregators develop specifications and/or code that permit the compos- COMMUNICATIONS OF THE ACM October 2003/Vol. 46, No. 10 25

ite service to perform functions that include: Coordination: Control the execution of the component services, and manage dataflow among them and to the output of the component service (by specifying workflow processes and using a workflow engine for runtime control of service execution). Monitoring: Subscribe to events or information produced by the component services, and publish higherlevel composite events (by filtering, summarizing, and correlating component events). Conformance: Ensure Role actions performs publishes uses becomes Coordination Conformance Monitoring QoS the integrity of the composite service by matching its parameter types with those of its components, impose constraints on the component services (to ensure enforcement of business rules), and performing data fusion activities. Quality of Service (QoS) composition: Leverage, aggregate, and bundle the component s QoS to derive the composite QoS, including the composite service s overall cost, performance, security, authentication, privacy, (transactional) integrity, reliability, scalability, and availability. Overview of Services Service provider Market-maker tion is reached. The organization responsible for performing such operation management functions is known as the service operator, which may be a service client or aggregator, depending on the application requirements. Another aim of SOA s service management layer is to provide support for open service marketplaces. Sev- Management Market Certification Rating SLAs Operations Assuranace Support Composition Description and Basic Operations Capability Interface Behavior QoS Service client Publication Discovery Selection Binding Managed services Service aggregator Service operator Composite services Basic services Extended service-oriented architecture: Service layers, functionality, and roles. To manage critical applications/solutions and specific markets, SOA provides managed services in the service management layer depicted at the top of the SOA pyramid. In particular, SOA s operations management functionality is aimed at supporting critical applications that require enterprises to manage the service platform, the deployment of services and the applications. Operations management functionality may provide detailed application performance statistics that support assessment of the application effectiveness, permit complete visibility into individual business transactions, and deliver application status notifications when a particular activity is completed or when a decision condi- Services are self-describing, open components that support rapid, low-cost composition of distributed applications. Services are offered by service providers organizations that procure the service implementations, supply their service descriptions, and provide related technical and business support. Since services may be offered by different enterprises and communicate over the Internet, they provide a distributed computing infrastructure for both intraand cross-enterprise application integration and collaboration. Service descriptions are used to advertise the service capabilities, interface, behavior, and quality. Publication of such information about available services provides the necessary means for discovery, selection, binding, and composition of services. In particular, the service capability description states the conceptual purpose and expected results of the service (by using terms or concepts defined in an application-specific taxonomy). The service interface description publishes the service signature (its input/output/error parameters and message types). The (expected) behavior of a service during its execution is described by its service behavior description (for example, as a workflow process). Finally, the Quality of Service (QoS) description publishes important functional and nonfunctional service quality attributes, such as service metering and cost, performance metrics (response time, for instance), security attributes, (transactional) integrity, reliability, scalability, and availability. Service clients (end-user organizations that use some service) and service aggregators (organizations that consolidate multiple services into a new, single service offering) utilize service descriptions to achieve their objectives. c 26 October 2003/Vol. 46, No. 10 COMMUNICATIONS OF THE ACM

eral vertical industry marketplaces currently exist, including those for the semiconductor, automotive, travel, and financial services industries. Open service marketplaces operate much in the same way as vertical marketplaces, however, they are open. Their purpose is to create opportunities for buyers and sellers to meet and conduct business electronically, or aggregate service supply/demand by offering added-value services and grouping buying power (similar to a co-op). The scope of such a service marketplace would be limited only by the ability of enterprises to make their offerings visible to other enterprises and establish industry-specific protocols by which to conduct business. Open service marketplaces typically support supply chain management by providing to their members a unified view of products and services, standard business terminology, and detailed business process descriptions. In addition, service marketplaces must offer a comprehensive range of services supporting industry trade, including services that provide business transaction negotiation and facilitation, financial settlement, service certification and quality assurance, rating services, service metrics such as number of current service requesters, average turnaround time, and manage the negotiation and enforcement of service level agreements (SLAs). SOA s service management layer includes market management functionality, as illustrated in the figure, which is intended to support these marketplace functions. The marketplace is created and maintained by a market-maker (a consortium of organizations) that brings the suppliers and vendors together. The market-maker assumes the responsibility of marketplace administration and performs maintenance tasks to ensure the administration is open for business. The application of SOC on the Web (including several aspects of the SOA) is manifested by Web services. A Web service is a specific kind of service that is identified by a URI, whose service description and transport utilize open Internet standards. Interactions between Web services typically occur as SOAP calls carrying XML data content. Interface descriptions of the Web services are expressed using Web Services Definition Language (WSDL). The Universal Description, Discovery, and Integration (UDDI) standard defines a protocol for directory services that contain Web service descriptions. UDDI enables Web service clients to locate candidate services and discover their details. Service clients and service providers utilize these standards to perform SOA s basic operations shown in the figure. Service aggregators may use the Business Process Execution Language for Web Services (BPEL4WS) to create new Web services by defining corresponding compositions of the interfaces and SINCE SERVICES MAY BE OFFERED BY SPECIFIC PROTOCOLS AND COMMUNICATE OVER THE INTERNET, THEY PROVIDE A DISTRIBUTED COMPUTING INFRASTRUCTURE FOR BOTH INTRA- AND CROSS-ENTERPRISE APPLICATION INTEGRATION AND COLLABORATION. COMMUNICATIONS OF THE ACM October 2003/Vol. 46, No. 10 27

SOA S OPERATIONS MANAGEMENT FUNCTIONALITY IS AIMED AT SUPPORTING CRITICAL APPLICATIONS THAT REQUIRE ENTERPRISES TO MANAGE THE SERVICE PLATFORM, THE DEPLOYMENT OF SERVICES, AND THE APPLICATIONS. internal processes of existing services. This section focuses on Web services, particularly issues that relate to Web service standards, their formal aspects, composition approaches, transactions involving Web services, and the application of Web services in business solutions. In the first article, Curbera et al. describe how Web services are evolving from the basic operations in the SOA foundation layer to support robust business interactions in the composition layer. The authors explain the capabilities currently enabled by the specifications of BPEL, WS-Coordination, and WS-Transaction, illustrating how they can be used together in the composition layer. Yang introduces the concept of a service component that raises the level of abstraction in Web service compositions. Service components represent modularized service-based applications that associate service interfaces with business logic into a single cohesive conceptual module. Service components can be extended, specialized, and generally inherited, to facilitate the creation of applications. Meredith and Borg also concentrate on the SOA composition layer and examine the complexity problem of distributed heterogeneous applications (assuming that service connectivity has been addressed). They propose a formal approach based on the development of type systems for the specification and automatic verification of crucial properties of service behavior. Transactions involving Web services are examined in the article by Little. Such transactions differ from traditional transactions in that they execute over long periods, they require commitments to the transaction to be negotiated at runtime, and isolation levels must be relaxed. Little further describes an extended transaction model that builds on existing Web service standards and defines an interoperable transaction protocol and message flows that negotiate cross-enterprise transactional guarantees at the composition layer. In the final article, Casati et al. shift attention to the management layer of the SOA and more specifically to operations management. The proposed businessoriented management of Web services is an attempt to assess the impact of service execution from a business perspective and, conversely, to adjust and optimize service executions based on stated business objectives. This is a crucial issue as corporations strive to align service functionality with business goals. c M.P. Papazoglou (mikep@uvt.nl) is a professor at Tilburg University in The Netherlands. D. Georgakopoulos (dimitris@research.telcordia.com) is a senior research scientist at Telcordia in Austin, TX. 2003 ACM 0002-0782/03/1000 $5.00 28 October 2003/Vol. 46, No. 10 COMMUNICATIONS OF THE ACM