Web Services: Principles and Technology (Paperback)

Michael Papazoglou

  • 出版商: Addison Wesley
  • 出版日期: 2007-09-23
  • 售價: $1,007
  • 語言: 英文
  • 頁數: 784
  • 裝訂: Paperback
  • ISBN: 0321155556
  • ISBN-13: 9780321155559
  • 下單後立即進貨 (約5~7天)

買這商品的人也買了...

商品描述

Description

Web services, usually including some combination of programming and data, are made available from a business's web server for web users and other web connected programs. The accelerating creation and availability of these services is a major computing trend as software becomes increasingly distributed and web-based. Web services are the next logical step for web-based computing and will have a profound impact on the way in which business is conducted on the web in the future. As they involve many different systems communicating with each other, they are particularly important following the proliferation in the range of computing devices (PDA's mobile telephones, hand held computers etc).  

Table of Contents

PART 1           BASICS

Chapter 1        Introduction to Web Services

1.1       Introduction

1.1.1    What Are Web Services?

1.1.2    Typical Web Services Scenarios

1.2       The Concept of Software as a Service

1.3       A More Complete Definition of Web Services

1.4       Characteristics of Web Services

            1.4.1    Types of Web Services

                        1.4.1.1Simple or Informational Services

                        1.4.1.2Complex Services or Business Processes

1.4.2    Functional and Non-Functional Properties

1.4.3    State Properties

1.4.4    Loose Coupling

1.4.5    Service Granularity

1.4.6    Synchronicity

1.4.7    Well-definedness

1.4.8    Service Usage Context

1.5       Service Interface and Implementation

1.6       The Service Oriented Architecture (SOA)

1.6.1    Roles of Interaction in the Service Oriented Architecture

                        1.6.1.1Web Services Provider

1.6.1.2Web Services Requestor

1.61.3  Web Services Registry

1.6.2    Operations in the Service Oriented Architecture

1.6.2.1The Publish Operation

1.6.2.2The Find Operation

1.6.2.3The Bind Operation

1.6.3    SOA: an Example Involving Complex Services

1.6.4    Layers in an SOA

1.7       The Web Services Technology Stack

1.8       Quality of Service

1.9       Web Services Interoperability  

1.10     Web Services versus Components

1.11     Impact and Shortcomings of Web Services

1.12     Summary

            Review Questions and Exercises

 
PART 2           ENABLING INFRASTRUCTURE

Chapter 2        Distributed Computing Infrastructure

2.1       Distributed Computing and Internet Protocols

2.1.1    Internet Protocols

2.1.1.1The Open Systems Interconnection Reference Model

2.1.1.2The TCP/IP Network Protocol

2.1.2    Middleware

2.2       The Client/Server Model

2.3       Characteristics of Inter-Process Communication

2.3.1    Messaging

2.3.2    Message Destinations and Sockets

2.3.3    Synchronous and Asynchronous Forms of Message Communication

2.4       Synchronous Forms of Middleware

2.4.1    Remote Procedure Calls

2.4.2    Remote Method Invocation

2.5       Asynchronous Forms of Middleware

2.5.1    Store and Forward Messaging

2.5.2    Publish/Subscribe Messaging   

2.5.3    Event-Driven Processing Mechanisms

2.5.4    Point-to-point Queuing

2.6       Request/Reply Messaging

2.7       Message Oriented Middleware

2.7.1    Integration Brokers

2.7.2    The Java Message Service (JMS)

2.8       Transaction Oriented Middleware

2.9       EnterpriseApplication and e-Business Integration

2.10     Summary

            Review Questions and Exercises

 
Chapter 3        Brief Overview of XML

3.1       XML Document Structure

3.1.1    XML Declaration

3.1.2    Elements

3.1.3    Attributes

3.2       URIs and XML Namespaces

3.3       Defining Structure in XML Documents

3.3.1    The XML Schema Definition Language

3.3.2    The XML Schema Document  

3.3.3    Type Definitions, Element and Attribute Declarations

3.3.3.1Element Declarations

3.3.3.2Attribute Declarations

3.3.1    Element Declarations

3.3.2    Attribute Declarations  

3.3.4    Simple Types

3.3.5    Complex Types

3.4       XML Schema Reuse

3.4.1    Deriving Complex Types

3.4.1.1Complex Type Extensions

3.4.1.2Complex Type Restrictions

3.4.1.3Polymorphism

            3.4.2    Importing and Including Schemas

3.5       Document Navigation and Transformation

3.5.1    The XML Path Language

3.5.2    Using XSLT to Transform Documents

3.6       Summary

            Review Questions and Exercises

 
PART 3           CORE FUNCTIONALITY AND STANDARDS

Chapter 4        SOAP: Simple Object Access Protocol

4.1       Inter-Application Communication and Wire Protocols

4.1.1    SOAP as a Wire Representation

4.2       SOAP as a Messaging Protocol

4.3       Structure of a SOAP Message 

4.3.1    SOAP Envelope

4.3.2    SOAP Header

4.3.2.1SOAP Intermediaries

4.3.3    SOAP Body

4.4       The SOAP Communication Model

4.4.1    RPC-style Web Services

4.4.2    Document (Message)-style Web Services

4.4.3    Communication Modes and Massaging Exchange Patterns

4.5       Error Handling in SOAP

4.6       SOAP over HTTP

4.7       Advantages and Disadvantages of SOAP

4.8       Summary

            Review Questions and Exercises

 
Chapter 5        Describing Web Services

5.1       Why is a Service Description Needed?

5.2       WSDL: Web services Description Language    

5.2.1    Web Service Interface Definition

5.2.2    WSDL Implementation

5.2.3    WSDL Message Exchange Patterns

5.3       Using WSDL to Generate Client Stubs

5.4       Non-functional Descriptions in WSDL

5.5       Summary

            Review Questions and Exercises

 
Chapter 6        Registering and Discovering Web Services

6.1       Service Registries

6.2       Service Discovery

6.3       UDDI: Universal Description, Discovery, and Integration                                  

6.3.1    UDDI Data Structures 

6.3.1.1Service Provider Information

6.3.1.2Web Service Information

6.3.1.3Web Service Access Information

6.3.1.4The Publisher Assertion Structure

6.3.2    WSDL to UDDI Mapping Model

6.3.2.1Publishing Service Interfaces and Service Bindings

6.3.2.2Publishing Service Implementations

6.3.2.3Summary of WSDL to UDDI Mapping Model

6.3.3    The UDDI Application Programming Interface

6.3.3.1Enquiry API

6.3.3.2Publishing API

6.3.4    Querying the UDDI Model

6.3.5    UDDI Usage Model and Deployment Variants

6.4       Summary

            Review Questions and Exercises

 
PART 4: EVENT NOTIFICATION AND SERVICE ORIENTED ARCHITECTURES

 
Chapter 7        Reliable Messaging and Notification

7.1       Web Services and Stateful Resources  

7.2       Introduction to the WS-Resource Framework

7.2.1    Web Services Addressing

7.2.2    WS-Resource

7.2.3    Resource Properties

7.2.4    Resource Lifecycle

7.2.5    Service Groups

7.3       Web Services Notification

7.3.1    Peer-to-peer Notification

7.3.1.1WS-BaseNotification Interfaces

7.3.1.2Subscription Filtering   

7.3.2    Notification Topics

7.3.3    Brokered Notification

7.4       Web Services Eventing

7.5       Summary

            Review Questions and Exercises


Chapter 8        Service-Oriented Architectures

8.1       What is a Software Architecture

8.1.1    System Quality Attributes

8.1.2    Common Architectural Concerns

8.2       The Service Oriented Architecture Revisited     

8.3       Service Roles in an SOA

8.4       Reliable Messaging

8.4.1    Definition and Scope of Reliable Messaging

8.4.2    WS-Reliable Messaging

8.4.2.1Structure of WS-Reliable Messaging

8.4.2.2WS-Reliable Messaging Examples

8.5       The EnterpriseService Bus

8.5.1    The Event-Driven Nature of SOA

8.5.2    Key Capabilities of an EnterpriseService Bus

8.5.3    ESB Integration Styles

8.5.4    Elements of an EnterpriseService Bus Solution

8.5.4.1Integration Brokers

8.5.4.2Application Servers

8.5.4.3Business Process Management

8.5.4.4Enterprise Service Bus Transport-level Choices

8.5.5    Connectivity and Translation Infrastructure

8.5.6    Leveraging Legacy Assets

8.5.7    Scalability Issues in an EnterpriseService Bus

8.5.8    Integration Patterns using an Enterprise Service Bus

8.6       The Extended Service Oriented Architecture

8.7       Summary

            Review Questions and Exercises


PART 5: SERVICE COMPOSITION AND SERVICE TRANSACTIONS

 
Chapter 9        Web Services and Workflows

9.1       Business Processes and their Management

9.1.1    Characteristics of Business Processes   

9.2       Workflows

9.3       Business Process Integration and Management

9.4       Cross-enterprise Business Processes

9.5       Service Composition Meta-model

9.5.1    Flow Modelling Concepts

9.5.2    Composing Web Services

9.6       Web Services Orchestration and Choreography

9.6.1    Orchestration versus Choreography

9.7       The Business Process Execution Language (BPEL)

9.7.1    BPEL Structure

9.7.1.1Abstract and Executable Processes

9.7.1.2Message Flow

9.7.1.3Control Flow

9.7.1.4Data Flow

9.7.1.5Process Orchestration

9.7.1.6Message Correlation

9.7.1.7Fault Handling

9.7.1.8Event Handling

9.7.2    A Simple Example in BPEL

9.8       Choreography

9.8.1    Uses of Choreography Description

9.8.2    Web Services Choreography Description Language

9.9       Other Initiatives and Languages

9.10     Summary

            Review Questions and Exercises


Chapter 10      Web Services Transactions

10.1     What is a Transaction?

10.1.1  Properties of Transactions

10.1.2  Concurrency Control Mechanisms

10.2.    Distributed Transactions

10.2.1  Distributed Transaction Architectures

10.2.2  Two-Phase Commit Protocol

Phase I: Preparation

Phase II: Commitment/Abortion

10.3.    Nested Transactions

10.3.1  Closed Nested Transactions

10.3.1.1           Two-phase Commit Protocol for Nested Transactions

10.3.1.2           Concurrency Control

10.3.2  Open Nested Transactions

10.3.2.1           Transactional Workflows

10.3.2.2           Recovery Mechanisms

10.4.    Transactional Web Services

10.4.1  Definitions and General Characteristics of Web Services Transactions

10.4.2  Operational Characteristics of Web Services Transactions

10.4.3  Web Services Transaction Types

10.4.3.1           Atomic Actions

10.4.3.2           Long-duration Transactions

10.4.4  Consensus Groups and Interposition

10.4.5  States of Web Services Transactions

10.4.6  Web Services Transaction Frameworks

10.5.    Web Services Coordination and Transaction

10.5.1  WS-Coordination

10.5.1.1           Coordination Context

10.5.1.2           Activation Service

10.5.1.3           Registration Service

10.5.1.4           Typical Message Exchange between two Applications

10.5.2  WS-Transaction

10.5.2.1           Atomic Transaction

10.5.2.2           Business Activity

10.6.    Web Service Composite Application Framework

10.6.1  Web Service Context

10.6.2  Web Service Coordination Framework

10.6.3  Web Services Transaction Management

10.7.    Summary

            Review Questions and Exercises

                         
PART 4: SERVICE SECURITY AND POLICIES

Chapter 11      Web Services Security

11.1     Web Services Security Considerations

11.1.1  Security Threats for Web Services

11.1.2  Countermeasures

11.2     Network Level Security Mechanisms

11.2.1  Firewalls

11.2.1.1           Firewall Architectures  

11.2.2  Intrusion Detection Systems and Vulnerability Assessment

11.2.3  Securing Network Communications

11.2.3.1           Symmetric Encryption

11.2.3.2           Asymmetric Encryption

11.2.3.3           Digital Certificates and Signatures

11.3     Application Level Security Mechanisms

11.3.1  Authentication  

11.3.1.1           Protection Domains

11.3.1.2           Web Resource Protection

11.3.2  Authorization

11.3.3  Integrity and Confidentiality

11.3.4  Non-repudiation

11.3.5  Auditing

11.3.6  Application Level Security Protocols

11.3.6.1           Secure Sockets Layer (SSL)

11.3.6.2           Internet Protocol Security (IPSec)

11.3.6.3           Kerberos

11.3.7  Security Infrastructures

11.3.7.1           Public Key Infrastructure

11.3.7.2           Directory Services

11.4     Security Topologies

11.5     XML Security Standards

11.5.1  XML Signature

11.5.2  XML Encryption

11.5.3  XML Key Management Specification (XKMS)

11.5.3.1           XML Key Information Service Specification (X-KISS)

11.5.3.2           XML Key Registration Service Specification (X-KRSS)

11.5.4  Security Assertions Markup Language

11.5.5  XML Access Control Markup Language

11.6     Securing Web Services

11.6.1  Web Services Application-level Security Challenges

11.6.2  Web Services Security Roadmap

11.6.3  Web Services Security Model  

11.6.4  Web Services Security

11.6.4.1           A Use Case for Web Services Security

11.6.4.2           Integrating Web Services Security in Service Oriented Architectures

11.6.4.3           WS-Security Key Features

11.6.5  Managing Security Policies

11.6.6  Managing Secure Sessions

11.6.7  Managing Trust

11.6.8  Managing Privacy

11.6.9  Managing Federated Identities

11.6.10            Managing Authorization

11.7     Summary

Review Questions and Exercises


Chapter 12      Service Policies and Agreements

12.1     What are Policies and why are they Needed?

12.1.1  Characteristics of Policies

12.1.2  The Need for a Policy Language

12.2     Types of Policies

12.3     Policies and Web Services Standards

12.4     WS-Policy Framework

12.4.1  WS-Policy Overview

12.4.1.1           Policy Expressions

12.4.1.2           Policy Assertion Usage Types

12.4.2  Combining and Comparing Policies

12.4.2.1           Merging Policies

12.4.2.2           Policy Intersection

12.4.3  Policy Attachments

12.4.3.1           WSDL Policy Attachment

12.4.3.2           External Policy Attachment

12.5     Service Agreements

12.5.1  WS-Agreement Structure

12.5.2  Agreement Language

12.6.    Summary

Review Questions and Exercises


PART 7: SERVICE SEMANTICS AND BUSINESS PROTOCOLS

 
Chapter 13      Semantics and Web Services

13.1     The semantic Interoperability Problem

13.2     The Role of Metadata

13.3     Resource Description Framework

13.3.1  The RDF Data Model

13.3.2  RDF Syntax

13.3.3  The RDF Schema

13.4     Richer Schema Languages

13.5     WS-Metadata Exchange

13.6     Summary

Review Questions and Exercises

Chapter 14      Business Protocols

14.1     The Supply Chain Business EcoSystem

14.2     Semantic Problems at the Business Process-Level

14.3     Business Standards and Protocols

14.3.1  Electronic Data Interchange (EDI)

14.3.2  RosettaNet

14.3.2.1           The RosettaNet Business Architecture

14.3.2.2           RosettaNet and Web Services 

14.3.3  The Electronic Business XML Initiative

14.3.3.1           ebXML Reference Architecture

14.3.3.2           ebXML Functional Phases

14.3.3.3           ebXML and Web Services

14.4     XML in Vertical Organizations

14.5     Summary         

Review Questions and Exercises

PART 8: SERVICE DESIGN AND DEVELOPMENT

Chapter 15      Web Services Development Lifecycle

15.1     Why is a Web Services Development Methodology Needed?

15.2     Web Services Development and Related Methodologies

15.3     System Development Life Cycle

15.4     Properties of Service-oriented Design and Development

15.5     Service-Oriented Design and Development Milestones

15.6     The Qualities of Service-Oriented Design and Development      

15.6.1  Service Coupling

15.6.2  Service Cohesion

15.6.3  Service Granularity

15.7     Web Services Development Life Cycle

15.7.1  The Planning Phase

15.7.2  The Analysis Phase

15.7.2.1           “As-is” Process Model Analysis

15.7.2.2           Business Service Identification

15.7.2.3           Business Service Scoping

15.7.2.4           Business Service Gap Analysis

15.7.2.5           Business Service Realization Analysis

15.8     The Service Design Phase

15.8.1  Service Design Concerns

15.8.1.1           Managing Service and Component Granularity

15.8.1.2           Designing for Service Reusability

15.8.1.3           Designing for Service Composability    

15.8.2  Specifying Services

15.8.2.1           Structural and Behavioral Service Specification

15.8.2.2           Service Programming Style

15.8.3  Specifying Business Processes

15.8.3.1           Describing the Business Process Structure

15.8.3.2           Describing Business Roles

15.8.4  Specifying Service Policies

15.8.5  Services Integration Model

15.9     The Service Construction Phase

15.9.1  Constructing a Service: The Provider Perspective

15.9.2  Constructing Services: The Client Perspective

15.10   The Service Test Phase

15.11   The Service Provisioning Phase

15.11.1            Service Governance

15.11.2            Service Certification

15.11.3            Service Metering and Rating

15.12   The Service Deployment Phase

15.13   The Service Execution Phase

15.14   The Service Monitoring Phase

15.15   Summary

            Review Questions and Exercises

PART 9: SERVICE MANAGEMENT

Chapter 16      Web Services Management

16.1     Managing Distributed Systems

16.1.1  Purpose of Distributed Systems Management

16.1.2  Distributed Management for Web Services

16.2     EnterpriseManagement Frameworks

16.3     Conceptual Management Architecture

16.3.1  Management Capabilities and Functions

16.4     Standard Distributed Management Frameworks

16.4.1  Simple Network Management Protocol

16.4.2  Web-based Enterprise Management/Common Information Model

16.4.3  Java Management Extensions

16.5     Web Services Management

16.5.1  Features of Web Services Management

16.5.2  Functional Characteristics of Web Services Management

16.5.3  Service Management Architectural Approaches

16.5.4  Management Infrastructure Services

16.5.5  Connecting Service Management and Application Channels      

16.6     The Web Services Distributed Management Initiative

16.6.1  Management Using Web Services (MUWS)

16.6.2  Management of Web Services (MOWS)

16.7     Summary

            Review Questions and Exercises

PART 10: EMERGING TRENDS

Chapter 17      Recent Trends and Developments

17.1     Grid Computing

17.1.1  A Brief Overview of Grid Computing

17.1.2  Features and Requirements of Grid Systems

17.1.3  Grid Application Considerations

17.1.4  Grid Services

17.2     Mobile Computing

17.2.1  Elements of MobileInfrastructure

17.2.2  Wireless Protocols

17.2.3  Mobile Web Services

17.2.3.1           Mobility Considerations

17.2.3.2           Field Web services

17.2.4  Mobile Web Services Standard Initiatives

17.2.4.1           The Open MobileAllianceInitiative

17.2.4.2           Mobile Web Services Framework

17.3     Summary

            Review Questions

References

Index

商品描述(中文翻譯)

描述

Web服務通常包括程式和數據的組合,從企業的Web服務器提供給Web用戶和其他Web連接的程序。隨著軟件越來越分散和基於Web,這些服務的創建和可用性加速發展,是一個重要的計算趨勢。Web服務是Web計算的下一個邏輯步驟,將對未來Web上的業務進行深遠的影響。由於它們涉及許多不同的系統之間的通信,它們在計算設備的範圍擴大(PDA、手機、手持電腦等)後尤其重要。

目錄

第1部分 基礎知識
第1章 網絡服務簡介
1.1 簡介
1.1.1 什麼是網絡服務?
1.1.2 典型的網絡服務場景
1.2 軟件即服務的概念
1.3 網絡服務的更完整定義
1.4 網絡服務的特點
1.4.1 網絡服務的類型
1.4.1.1 簡單或信息服務
1.4.1.2 複雜服務或業務流程
1.4.2 功能和非功能屬性
1.4.3 狀態屬性
1.4.4 鬆散耦合
1.4.5 服務粒度
1.4.6 同步性
1.4.7 定義明確性
1.4.8 服務使用上下文
1.5 服務接口和實現
1.6 服務導向架構(SOA)
1.6.1 服務導向架構中的交互角色
1.6.1.1 Web服務提供者
1.6.1.2 Web服務請求者
1.6.1.3 Web服務註冊表
1.6.2 服務導向架構中的操作
1.6.2.1 公共```