what is a service?

advertisement
From service-oriented
architecture to serviceoriented enterprise
Marten van Sinderen
Keynote lecture I-WEST 2009
Sofia, Bulgaria, 29 July 2009
Agenda
1. SOA
• motivation
• definition
• principles
• architectural elements
2. Web Services
3. Service-oriented enterprises
4. Summary
29 July 2009
I-WEST 2009
2
Agenda
1.
2.
3.
4.
SOA
Web Services
Service-oriented enterprises
Summary
29 July 2009
I-WEST 2009
3
Motivation for SOA
Business needs
• dynamic and competitive marketplace → need for
business model and IT architecture that can
rapidly change to support business model and its
objectives
• high IT investments → need for increased
leverage through standard integration solutions
that can turn existing applications into reusable
services
29 July 2009
I-WEST 2009
4
Motivation for SOA
IBM commissioned global CEO survey (2006)
• 78% of CEOs believe that integrating business
and technology is fundamental for innovation
• 90% of CEOs believe that their organization does
not have the ability to be very responsive to
changing market conditions
Need for rapid and flexible integration of IT systems
aligned with business goals
29 July 2009
I-WEST 2009
5
Motivation for SOA
Integration deficiencies of IT architectures
• monolithic (silo) applications
effective for the specific purpose they were
created
difficult to change and integrate with other
applications within and between interprises →
requires custom coded connections
• component-based applications
provide units of business logic as services
flow of control and transformation of data
formats is bound into the business logic
29 July 2009
I-WEST 2009
6
SOA – definition of terms
service orientation?
service?
Repeatable business task
Way of integrating your
business as linked
services
service oriented
architecture (SOA)?
composite
application?
IT architectural style that
supports service
orientation
Set of ‘wired’ services that
support a business
process
29 July 2009
I-WEST 2009
7
Intermezzo: what is a service?
• repeatable business task (IBM Redbooks 2006)
• all economic activity whose output is not a
physical product or construction (Brian et al 1987)
• an activity ... provided as a solution to customer
problems (Gronroos 1990)
• non-material equivalent of a good (Wikipedia 2006)
• external and internal business services
• business services vs IT services
• application services vs communication services
29 July 2009
I-WEST 2009
8
SOA principles
SOA is an IT architectural style that supports
service orientation – integration of your business
as linked services
• loosely coupled
• implementation-independent
• protocol-independent
• standards-based
• reusable
• composable
• hierarchical
29 July 2009
I-WEST 2009
9
SOA principles
The SOA architectural style entails the composed
and/or coordinated interaction of services,
associated with messages and governed by
policies
Focus shifted to business processes
• business process as a service
• business process as a driver of collaboration
through services
29 July 2009
I-WEST 2009
10
Basic SOA pattern
Service
Broker
Find
Publish
Services
Service
Requestor
29 July 2009
Bind/Invoke
I-WEST 2009
Service
Provider
11
Basic message exchange
Example
operation
getBookPrice
isbn
Client
price
message
BookQuote
Service
message
29 July 2009
I-WEST 2009
12
Integration with SOA
How is integration solved?
enterprise application integration
business to business (B2B) integration
29 July 2009
I-WEST 2009
13
Enterprise Application Integration
Virtual Component
Service
<<implements>>
<<implements>>
<<implements>>
Stored
Proc.
EJB
J2EE
DBMS
Assembly
.NET
Concrete Component
29 July 2009
I-WEST 2009
14
Basic SOA pattern
Service
Broker
Find
Publish
Services
Service
Requestor
Bind/Invoke
Service
Provider
Backend Systems
J2EE
CORBA
JMS
Firewall
29 July 2009
I-WEST 2009
15
B2B Integration
Example of required peer-to-peer interaction
Partner1
Partner2
A
B
O
C
Q
R
S
D
T
E
U
29 July 2009
I-WEST 2009
16
B2B Integration
Public processes and SOA-based message exchange
Partner2
Partner1
A
A
B
O
O
C
Q
C
R
R
S
D
T
E
E
T
U
Private
Process
29 July 2009
Public
Process
Public
Process
I-WEST 2009
Private
Process
17
Business processes between services
Business
processes
operations
Service
provider 1
C
D
Service
provider 2
E
Services
29 July 2009
I-WEST 2009
18
Business processes as services
A1
A2
Service
…
An
29 July 2009
I-WEST 2009
19
Hierarchical process structures
F
P
V
W
X
Y
Z
O
29 July 2009
P
K
C
P2
Partner
Processes
L
M
D
E
H
Top-level
Process
A
B
P1
P3
P4
R
S
N
I-WEST 2009
Q
T
U
20
Distribution
Business (service)
Domain
Order Management
Purchasing
Inventory
Business Processes
create, modify, suspend,
cancel orders,
schedule orders,
create, modify, delete
bulk orders,
order progress
Business Services
Infrastructure Services
Applying
SOA to
achieve
business
goals
ComponentComponent-based service realizations
CRM
Operational Systems
29 July 2009
ERP
Databases
Packaged
Applications
I-WEST 2009
Legacy
Applications
Taken from Papazoglou2008
21
Analysis and design with SOA
• analysis should lead to identification and
description of business processes, and select
processes where SOA can contribute to
improvements and adding value → business
services
• design must result in definition of interfaces for
conceptual services, prior to their implementation
‘atomic’ services
business services/process
policies
non-functional service characteristics
29 July 2009
I-WEST 2009
22
SOA elements organized in a platform
29 July 2009
I-WEST 2009
23
Agenda
1.
2.
3.
4.
SOA
Web Services
Service-oriented enterprises
Summary
29 July 2009
I-WEST 2009
24
Web Services
Collection of standards that can be used to
implement SOA
Self-contained, modular applications that can be
described, published, located and invoked over
networks
Introduced as a technology to support B2B
integration using standard web-based protocols
29 July 2009
I-WEST 2009
25
Web services vs other middleware
B2B, Global Enterprise
Program
Inside one
Se
rv
ic
es
ed
process
Tight
29 July 2009
W
eb
Inside one
application
(more than
one process)
as
Application
Integration
between
domains
O
R
B
-b
Single
Domain(Enterprise)
Complex Application
between application
(inside one domain)
I-WEST 2009
Coupled
Loose
26
Core elements
Simple Object Access Protocol (SOAP)
• internet protocol for applications to communicate
Web Service Service Description Language (WSDL)
• language for specifying the interface of web
services
Universal Description, Discovery and Integration
(UDDI)
• framework for describing and discovering web
services
Extensible Markup Language (XML) underlies most
of the specifications used for web services
29 July 2009
I-WEST 2009
27
Basic Web Services pattern
Firewall
UDDI/ebXML
registered to
WSDL
WSDL
WSDL
behaviour discovery
29 July 2009
J2EE
Web Services provider
discovery
Web
Services
Client
description
Back- end
Systems
SOAP /
HTTP(S)
invocations
Web
Services
Runtime
I-WEST 2009
CORBA
JMS
28
SOAP
Internet protocol for applications to communicate
• runs on top of other standard internet protocols
(typically HTTP)
Defines how messages are structured and
processed in a platform-independent way
Two message exchange patterns
• One-way
• Request-response
29 July 2009
I-WEST 2009
29
WSDL
Language for specifying the interface of web
services
Used to provide a description of the service for the
(potential) clients
Which messages are related to each operation
supported by the service?
How are these messages related?
e.g., operation input and output
How are SOAP messages exchanged?
29 July 2009
I-WEST 2009
30
WSDL
Types
Messages
Operations
Port Types
Bindings
Protocol – HTML, SMTP
Encoding
Ports
Service
29 July 2009
I-WEST 2009
“interface” definition
(abstract part)
“endpoint” definition
(concrete part)
31
Limitations of SOAP/WSDL
WSDL allows to define the format and structure of
the messages
Operations (and related messages) can be grouped
in an interface
WSDL does not allow to describe the sequence and
conditions of the operations of such an interface
WSDL geared towards a stateless C/S-model of
interaction
no mechanism for correlating exchanged
messages
no notion of instance regarding service
invocation
29 July 2009
I-WEST 2009
32
Composition and coordination
Orchestration (composition)
An executable business process describing an
execution flow from the perspective and under
control of a single endpoint (commonly:
Workflow)
Choreography (coordination)
The observable public exchange of messages,
rules of interaction and agreements between
two or more business process endpoints
29 July 2009
I-WEST 2009
33
WS-BPEL
WS-BPEL: Business Process Execution Language
for Web Services
• supports the specification of composition
schemas as well as coordination protocols
• composition schemas are executable process
specifications
implementation logic of a (composite) service
that can invoke or be invoked by other
services
29 July 2009
I-WEST 2009
34
... and many other WS standards
29 July 2009
I-WEST 2009
35
Agenda
1.
2.
3.
4.
SOA
Web Services
Service-oriented enterprises
Summary
29 July 2009
I-WEST 2009
36
Service-oriented enterprises
• major technology vendors have invested significant
effort in supporting and promoting SOA (WS)
• over time lack of SOA adoption will become a
competive disadvantage for most enterprises
(Gartner 2003)
• adoption of SOA for developing business systems
will impact organization as a whole (Luthria & Rabhi
2009) → service-oriented enterprises
29 July 2009
I-WEST 2009
37
Little knowledge about
impact on business
29 July 2009
I-WEST 2009
38
Focus on technical
challenges, rather than
organizational ones
Needed: Shift to businessinvolved service design
and engineering
29 July 2009
I-WEST 2009
39
Practical problems and limitations
• scalability: millions of services to register, search ...
• governance: compliance of evolving services
• trust/security/privacy:
can I trust my service, what is behind its facade?
who can access my info, is it well-protected?
what happens if I stop using the service?
• contracts: incorporation of legal aspects
• quality: definition and management of SLAs
• monitoring: do services behave as promised?
• control: what if not: reconfigure, sanction,
compensate?
29 July 2009
I-WEST 2009
40
Important developments
• context awareness: use location and other
context of business entities to align services to
needs
• semantic services: ontology-based techniques to
allow automated reasoning for automated
handling of services, e.g. in discovery and ...
• on-demand/dynamic composition: given a service
request and a collection of semantically
annotated services, develop a service
composition that fulfils the service request
29 July 2009
I-WEST 2009
41
Important developments
• business-IT aligned modelling: hand-in-hand
development of business models and IT models
using consistency rules or transformations
• cloud computing: scalable services delivery
platform based on SOA and virtualization and
targeted to sharing of resources (business-centric)
• internet of services: delivery platform for open
market services with contractually guanranteed
rights and obligations (consumer-centric)
29 July 2009
I-WEST 2009
42
Agenda
1.
2.
3.
4.
SOA
Web Services
Service-oriented enterprises
Summary
29 July 2009
I-WEST 2009
43
Summary
• SOA was motivated by business needs: flexibility
and reusability
• WS is the current de-facto implementation of SOA
widely supported by technology vendors
significant awareness in IT community
• little knowledge about impact on business
• focus shift from technology to business-involved
design and engineering
• several practical barriers still exist
• new developments to fill gaps: cloud computing
and internet of services
29 July 2009
I-WEST 2009
44
Summary
Future vision:
SOA provides a toolbox that allows rapid and
flexible assembly of IT solution, without intimate
knowledge of IT, aligned with business goals
29 July 2009
I-WEST 2009
45
References
[Fynes & Lally 2008] Brian Fynes and Ann Marie Lally (2008) Innovation in
services: from service concepts to service experiences. In Service
Science, Springer US.
[Gronroos 1990] Christian Gronroos (1990) Service management and
marketing. Lexington Books.
[Luthria & Rabhi 2009] Haresh Luthria and Fethi Rabhi (2009) Service oriented
computing in practice. J. of Theoretical and Applied Electronic Commerce
Research.
[Meyer Goldstein et al 2002] Susan Meyer Goldstein et al. (2002) The service
concept: the missing link in service design research? J. of Operations
Management.
[Minaei-Bidgoli & Rafati 2004] Behrouz Minaei-Bidgoli and Laleh Rafati (2004)
Business service modeling in service-oriented enterprises. NCM 2004
Conference
[Papazoglou 2008] Mike P. Papazoglou (2008) What’s in a service? Invited
keynote. ICSOFT 2008 Conference.
[Papazoglou et al 2006] Mike P. Papazoglou et al. (2006) Service-oriented
computing: a research roadmap. Int. J. Cooperative Information Systems.
[Vissers & Logrippo 1985] Chris A. Vissers and Luigi Logrippo (1985) The
importance of the service concept in the design of data communications
protocols. PSTV 1985 Conference.
29 July 2009
I-WEST 2009
46
Thank you!
Questions?
29 July 2009
I-WEST 2009
47
Download