Computing with Services

insidiousbehaviorSecurity

Nov 3, 2013 (3 years and 9 months ago)

56 views

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

2

Highlights of this Chapter

(1) Visions for the Web

(2) Open Environments

(3) Services Introduced

(4) The Evolving Web

(5) Standards Bodies

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

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

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

7

Brief History of Information
Technology

8

System Architectures: Centralized

Mainframe

Terminal

3270

Terminal

Terminal

Terminal

Terminal

Terminal

Terminal

Terminal

Terminal

Terminal

Terminal

9

System Architectures: Client
-
Server

E
-
Mail

Server

Web

Server

Database

Server

PC

Client

PC

Client

PC

Client

Workstation

Client

Master
-
Slave

10

System Architectures: Peer
-
to
-
Peer

E
-
Mail

System

Web

System

Database

System

Application

Application

Application

Application

11

System Architectures: Cooperative

E
-
Mail

System

Web

System

Database

System

Application

Application

Application

Application

(Mediators, Proxies, Aides, Wrappers)

Agent

Agent

Agent

Agent

Agent

Agent

Agent

Agent

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 Internet

When we talk about Internet computing or Web
services, we consider all of the above as possible
environments

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

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

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
systems

Best not to assume homogeneity

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

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

18

(3) Services Introduced

Historical View of Services over the Web

Generation

Scope

Technology

Example

First

All

Browser

Any HTML page

Second

Programmatic

Screen
scraper

Systematically

generated HTML

content

Third

Standardized

Web services

Formally
described service

Fourth

Semantic

Semantic
Web services

Semantically
described service

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

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

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

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)

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

24

Standards for Web Services

BPEL4WS
OWL-S Service
Model
ebXML
CPA
Process and workflow
orchestrations
QoS: Service
descriptions and bindings
Contracts and
agreements
XLANG
WSCL
WSDL
ebXML
CPP
ebXML
BPSS
XML, DTD, and XML Schema
HTTP, FTP, SMTP, SIP, etc.
SOAP
ebXML
messaging
OWL
UDDI
ebXML
Registries
WSCL
WSCI
WS-Coordination
WS-AtomicTransaction and WS-
BusinessActivity
OWL-S Service
Grounding
OWL-S Service
Profile
BTP
BPML
Discovery
Messaging
Transport
QoS: Conversations
QoS: Choreography
QoS: Transactions
Encoding
WS-Policy
WS-Security
WS-Reliable
Messaging
PSL
RDF
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


26


eXtensible Markup Language (
XML
)


Simple Object Access Protocol (
SOAP
)


Web Services Description Language
(
WSDL
)


Directory Services


Universal Description, Discovery, and
Integration (
UDDI
)


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