26
1 Computing with Services CS 696 – Services Computing Fall 2008 Chapter 1, Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005

Computing with Services CS 696 – Services Computing Fall 2008

  • Upload
    makala

  • View
    44

  • Download
    0

Embed Size (px)

DESCRIPTION

Computing with Services CS 696 – Services Computing Fall 2008. Chapter 1, Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005. Highlights of this Chapter. (1) Visions for the Web (2) Open Environments (3) Services Introduced - PowerPoint PPT Presentation

Citation preview

Page 1: Computing with Services CS 696 – Services Computing  Fall 2008

1

Computing with ServicesCS 696 – Services Computing

Fall 2008

Chapter 1, Service-Oriented Computing: Semantics,

Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005

Page 2: Computing with Services CS 696 – Services Computing  Fall 2008

2

Highlights of this Chapter

(1) Visions for the Web(2) Open Environments(3) Services Introduced(4) The Evolving Web(5) Standards Bodies

Page 3: Computing with Services CS 696 – Services Computing  Fall 2008

3

(1) Visions for the Web- The Web As Is Designed for people to get

information Sources are independent and

heterogeneous Limitations

HTML describes how things appear HTTP is stateless Processing is asynchronous client-server No support for integrating information No support for meaning and

understanding

Page 4: Computing with Services CS 696 – Services Computing  Fall 2008

4

Web Semantics “The Semantic Web” is Tim Berners-Lee’s vision Human Machine Agents Client-Server P2P Cooperative Syntax Semantics Mutual Understanding

Pragmatics and Cognition Data Services Processes

Syntax, Language, and Vocabulary- FIPA ACL

Semantics and Understanding- Ontologies, OWL

Pragmatics (getting work done)- Workflows, BPEL4WS

Distributed Cognition- Decisions and Plans

Current Web Services:focus on individual and small group

Future Web Services:focus on organization and society

Page 5: Computing with Services CS 696 – Services Computing  Fall 2008

5

What is a Web Service?

"… a piece of business logic accessible via the Internet using open standards…“ (Microsoft)

Encapsulated, loosely coupled, contracted software functions, offered via standard protocols over the web (DestiCorp)

A set of interfaces, which provide a standard means of interoperating between different software applications, running on a variety of platforms and/or frameworks (W3C)

Our working definition: A WS is functionality that can be engaged over the Web

Page 6: Computing with Services CS 696 – Services Computing  Fall 2008

7

Brief History of Information Technology

Page 7: Computing with Services CS 696 – Services Computing  Fall 2008

8

System Architectures: Centralized

Mainframe

Terminal3270

Terminal

Terminal

Terminal

Terminal

TerminalTerminal

Terminal

Terminal

Terminal

Terminal

Page 8: Computing with Services CS 696 – Services Computing  Fall 2008

9

System Architectures: Client-Server

E-MailServer

WebServer

DatabaseServer

PCClient

PCClient PC

Client

WorkstationClient

Master-Slave

Page 9: Computing with Services CS 696 – Services Computing  Fall 2008

10

System Architectures: Peer-to-Peer

E-MailSystem

WebSystem

DatabaseSystem

Application

ApplicationApplication

Application

Page 10: Computing with Services CS 696 – Services Computing  Fall 2008

11

System Architectures: Cooperative

E-MailSystem

WebSystem

DatabaseSystem

Application

ApplicationApplication

Application

(Mediators, Proxies, Aides, Wrappers)

Agent

Agent

Agent

Agent

Agent

Agent

Agent

Agent

Page 11: Computing with Services CS 696 – Services Computing  Fall 2008

12

Kinds of Networks

Internet Intranet: network restricted within an

enterprise Extranet: private network restricted to

selected enterprises Virtual Private Network (VPN): a way to realize

an intranet or extranet over the InternetWhen we talk about Internet computing or Web

services, we consider all of the above as possible environments

Page 12: Computing with Services CS 696 – Services Computing  Fall 2008

13

(2) Open Environments- Characteristics

Cross enterprise boundaries or administrative domains

Comprise autonomous resources that Involve loosely structured addition and removal Range from weak to subtle consistency

requirements Involve updates only under local control Frequently involve nonstandard data

Have intricate interdependencies

Page 13: Computing with Services CS 696 – Services Computing  Fall 2008

14

Autonomy (Usage)

The Components in an environment function solely under their own control.

Independence of business partners (users) Political reasons

Ownership of resources Control, especially of access privileges Payments

Technical reasons Opacity of systems with respect to key

features, e.g., precommit

Page 14: Computing with Services CS 696 – Services Computing  Fall 2008

15

Heterogeneity (Construction)

Independence of component designers and system architects

Political reasons Ownership of resources

Technical reasons Conceptual problems in integration Fragility of integration Difficult to guarantee behavior of integrated

systemsBest not to assume homogeneity

Page 15: Computing with Services CS 696 – Services Computing  Fall 2008

16

Dynamism (Configuration)

Independence of system administrators

Needed because the parties change Architecture and implementation Behavior Interactions

Make configurations dynamic to improve service quality and maintain flexibility

Page 16: Computing with Services CS 696 – Services Computing  Fall 2008

17

Locality

Global information (data, schemas, constraints) causes

Inconsistencies Anomalies Difficulties in maintenance

Global information is essential for coherence Locations of services or agents Applicable business rules

Relaxation of constraints works often Obtain other global knowledge only when needed Correct rather than prevent violations of constraints:

often feasible When, where, and how of corrections must be

specified, but it is easier to make it local

Page 17: Computing with Services CS 696 – Services Computing  Fall 2008

18

(3) Services IntroducedHistorical View of Services over the Web

Generation

Scope Technology

Example

First All Browser Any HTML page

Second Programmatic

Screen scraper

Systematicallygenerated HTMLcontent

Third Standardized

Web services

Formally described service

Fourth Semantic Semantic Web services

Semantically described service

Page 18: Computing with Services CS 696 – Services Computing  Fall 2008

19

(4) The Evolving Web

Near Web: conventional mouse-keyboard-monitor interaction with a personal computer, typically for purposes such as surfing the Web

Far Web: interaction with a computer from across a room as with a TV remote control, typically for entertainment, such as listening to music or viewing a movie

Here Web: interaction with a mobile device, with narrow bandwidths for input and output

Page 19: Computing with Services CS 696 – Services Computing  Fall 2008

20

The Evolving Web (conti)

Weird Web: interaction through emerging interface technologies, such as voice and wearable computing

B2B Web: dealing with the supply networks of business-to-business electronic commerce

Pervasive Web: dealing with device-to-device interactions

Page 20: Computing with Services CS 696 – Services Computing  Fall 2008

21

Applications of Services

Services should be composable Provided independently Used in novel, unanticipated ways

Portals Organized by topic or affinity Best when personalized

E-commerce Legacy system integration Virtual enterprises Grid computing

Page 21: Computing with Services CS 696 – Services Computing  Fall 2008

22

(5) Standards Bodies The following are the most important stanards

bodies and initiatives for services. IETF – The Internet Engineering Task Force TCP/IP Suite and URIs, HTTP, SIP, SMTP OMG – The Object Management Group UML, CORBA, MDA W3C – The World Wide Web Consortium XML, XML Schema, WSDL, SOAP, and WSCI OASIS – The Organization for the Advancement

of Structured Information Standards Universal Business Language (UBL), UDDI, and the

Business Process Execution Language for Web Services (BPEL4WS)

Page 22: Computing with Services CS 696 – Services Computing  Fall 2008

23

Standards Bodies (Conti)

UN/CEFACT – The United Nations Center for Trade Facilitation and Electronic Business - ebXML

WS-L – The Web Services Interoperability Organization - BP 1.0

BPMLorg - The Business Process Management Initiative - Business Process Modeling Language (BPML)

WfMC - The Workflow Management Coalition FIPA – The Foundation for Intelligent Physical

Agents promotes technologies and specifications

Page 23: Computing with Services CS 696 – Services Computing  Fall 2008

24

Standards for Web Services

BPEL4WSOWL-S Service

Model

ebXMLCPA

Process and workfloworchestrations

QoS: Servicedescriptions and bindings

Contracts andagreements

XLANG

WSCL

WSDLebXML

CPP

ebXMLBPSS

XML, DTD, and XML Schema

HTTP, FTP, SMTP, SIP, etc.

SOAPebXML

messaging

OWL

UDDIebXML

Registries

WSCLWSCI

WS-Coordination

WS-AtomicTransaction and WS-BusinessActivity

OWL-S ServiceGrounding

OWL-S ServiceProfile

BTP

BPML

Discovery

Messaging

Transport

QoS: Conversations

QoS: Choreography

QoS: Transactions

Encoding

WS-Policy

WS-Security

WS-ReliableMessaging

PSL

RDF

Page 24: Computing with Services CS 696 – Services Computing  Fall 2008

25

XML Web Service Foundation

Open and with broad industry support

Publish, Find, Use Services UDDI

Service Interactions SOAP

Universal Data Format XML

Description Language WSDL

Ubiquitous Communications TCP/IP, HTTP, SMTP, SIP, Reliable messaging

Security (authentication and authorization) WS-Security, SAML

Page 25: Computing with Services CS 696 – Services Computing  Fall 2008

26

eXtensible Markup Language (XML)

Simple Object Access Protocol (SOAP)

Web Services Description Language (WSDL)

Directory Services Universal Description, Discovery,

and Integration (UDDI)

Page 26: Computing with Services CS 696 – Services Computing  Fall 2008

27

Summary

Evolving perspectives on the Web Evolutions in IT architectures Key aspects of open environments

Autonomy Heterogeneity Dynamism

Services, if understood correctly, can support IT in open environments