Service-oriented Computing - Distributed Systems Group

advertisement
Open Research Challenges in
Service-Oriented Computing
Schahram Dustdar
Distributed Systems Group
Institute of Information Systems
TU Wien
http://www.infosys.tuwien.ac.at/Staff/sd/
SOA in the Past
Web as Global SOA
deploy
invoke
Service
Development
register
Designer
Browser
Service
Registry
discover
copy &
paste
Consumer
SOA Evolution
 SOA triangle based on static provider/consumer
roles
 Web 2.0 trends




User centric
Participative
Web-based composition tools
Flexible interaction
 Research trends and issues
 Human Provided Services
 Self-Healing
 Trust and Reputation
SOA as of Now
Atom RSS
SOAP REST
Web as Global SOA
Service
Registry
XML
invoke
Integration - Glue
Service
Development
Designer
Search Engine
Browser
Consumer
JSON
Current SOA Research
human
service
activity scopes
invo
ke
Service
Registry
Integration - Glue
Humans and services
interact to perform work
described by activities.
Self-Healing
invo
ke
X
Run-Time Environment
Adaptation
Monitoring
Deployment with
Dependecy
Management
Process Design
Self-Healing
Policies
Trust and Reputation
Monitoring
I. invoII.
ke
Run-Time Environment
Selection
Updated
Network Data
Configuration of
Trust Constraints
Trust Management Framework
Trust Management
Policies
Agenda
 Service Oriented Computing Research Roadmap
 Theme#1:Service Foundations
 Theme#2:Service Composition/Assemblies
 Theme#3:Service Management
 Theme#4:Service Engineering
 Summary
8
Some papers to start with…

Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F. (2007). ServiceOriented Computing: State of the Art and Research Challenges, IEEE
Computer, November 2007, p 64 - 71.

Papazoglou, M., Traverso, P., Dustdar, S., Leymann, F. (2008). ServiceOriented Computing: A Research Roadmap, International Journal of
Cooperative Information Systems, 17(2), 1-33.

Dustdar, S., Papazoglou, M. (2008). Services and Service Composition - An
Introduction. it - Information Technology, April 2008, (c) Oldenbourg
Wissenschaftsverlag
9
Extended SOA (xSOA)
Modelling,
Design & Development
Methodologies
Service operator
Management &
Monitoring
Market maker
Market
Certifica
tion
Rating
OpeS
raLtiAosn
Auditing s
SC
up
opm
ortpos
it
ion
Manage
d service
Compos
ite
Coordin
ati
Conform on
a
Transac nce
tions
Service provider
Role actions
rvices
Publication
Discovery
Selection
Binding
Service client
performs
publishes
uses
becomes
services
Basic se
(Archite
Founda
cture, D
tion
escripti
on & ba
sic ope
rations
)
Capability
Interface
Behaviou
r
Semantics
Non-functional characteristics
QoS
s
Service aggregator
10
Research Challenges

Methods and Models for Design, Development, and
Evolution
 Service Composition for open complex and dynamic
systems
 Model-driven development for compliant SOC Systems
 Context-based service composition

Service Discovery in Registries






Dynamic Binding in Registries
Retrieval languages for humans and software services
Transient service providers and registries
Papazoglou, M.P., Traverso, P.,
Central/decentral/hybrid architectures
Dustdar, S., Leymann, F. (2007).
Service-Oriented Computing: State
Protocols for Coordination and Interaction
of the Art and Research
Challenges,
 Coordination of dynamic services
 Analyses of Service-Interactions (Mining, Patterns,
IEEE Computer, November 2007,
Algorithms for optimization)
 Interaction models and protocols (e.g., Policies, etc.) p 64 - 71.
QoS-optimized Internet-scale Processes
 Performance monitoring & management of service
compositions and networked open dynamic systems
 Metrics (e.g., Team forms, Orchestration Complexity,
11
Coupling metrics)
Research Themes
 Service Foundations: runtime infrastructure, architectures, e.g.,
Enterprise Service Bus, modes of service delivery = mobile, palm tops,
hand held devices, networks.
 Service Composition/Assemblies: service composition, QoS composition,
SLA composition, etc.
 Service Management: support for discovering, introspecting, securing,
and invoking resources, management functions, measurement,
performance indicators, management infrastructure services and
toolsets.
 Service Development Life Cycle (or Service Design and Development):
service analysis, design methodologies, implementation techniques,
construction and testing, provisioning, deployment, execution and
monitoring, business process modelling tools.
 Cross-cutting concerns: QoS, semantics, non-functional characteristics,
security, business transactions, etc.
12
Agenda
 Service Oriented Computing Research Roadmap
 Theme#1:Service Foundations
 Theme#2:Service Composition/Assemblies
 Theme#3:Service Management
 Theme#4:Service Engineering
 Summary
13
State of the Art
 The requirements to provide an appropriately
capable and manageable integration
infrastructure for Web services & SOA are
coalescing into the concept of the Enterprise
Service Bus (ESB).
 There are two key ideas behind this approach:
 loosely couple the systems taking part in the
integration and
 break up the integration logic into distinct easily
manageable pieces.
14
What is an Enterprise Service Bus?
 ESB is a standards-based IT backbone that leverages Messaging
Oriented Middleware functionality throughout the entire business value
chain, connecting heterogeneous components and systems.
 A way of building and deploying enterprise SOAs
 Combines features from different types of middleware into one package
 Facilitates the deployment of Web services and solves integration
problems
 Key features




Web Services: SOAP, WSDL, UDDI
Event-based, asynchronous delivery
Transformation
Routing: Publish/Subscribe, content-based, itinerary
 Platform neutral
 Connect to anything in the enterprise:
15 Java,.NET, legacy, WS-*, ..
Service
orchestration –
based custom
applications
Portals
Reliable Asynchronous Secure Messaging
service
interface
service
container
Distributed
query engine
Web
Services
Adapters
JMS/
J2EE
WebSphere, Java apps
.NET apps
Data sources
MQ
gateway
Mainframe
& legacy
apps
Multi-platform
support
Enterprise
applications
Enterprise service bus connecting diverse applications & technologies
16
The Container Model
 The basic (core) functions of the container are as follows:
 establishing connectivity and Message Exchange Patterns (MEPs)
 providing support and provision facilities such as transactions,
security, performance metrics, etc, in a declarative and composable
manner,
 providing support for dynamic configuration,
 monitoring of internal behaviour and state to management systems
(services)
 performing data and protocol adaptation,
 providing support for services discovery.
17
Key capabilities of an ESB
 Service Communication Capabilities
 Ability to route service interactions through a variety of protocols,
and to transform from one protocol to another.
 Dynamic Connectivity Capabilities
 ability to connect to Web services dynamically without using a
separate static API or proxy for each service.








Topic and Content-based Routing Capabilities
Endpoint Discovery with Multiple QoS Capabilities
Leveraging Existing (Legacy) Assets
Integration & Transformation Capabilities
Security Capabilities
Business Orchestration & Long Running Transaction Capabilities
Management & Monitoring Capabilities
Scalability Capabilities
18
Clients
service client
service client
service client
WSDL/SOAP
WSDL/SOAP
WSDL/SOAP
WSDL/SOAP
WSDL/SOAP
WSDL/SOAP
Topic-based and Content-based Publish and Subscribe Mechanisms
Process Orchestration, Transformation, Security, Management, Transport
(WS-ReliableMessaging, WS-Notification, WS-Topics)
ESB
Components
DNS Router
Internet
DNS Router
WSDL/SOAP
interface
interface
interface
WSDL/SOAP
interface
interface
interface
WSDL/SOAP
interface
interface
interface
Adapter
Adapter
Adapter
Adapter
Adapter
Adapter
Proprietary
interfaces
Proprietary
interfaces
Proprietary
interfaces
Legacy
Applications
ERP System19
Existing EIS &
Middleware
Platforms
Data
Warehouse
Procurement
Supplier order
service
Order
application
Supplier order
service
Replenishment
service
Supplier order
service
Inventory
Supplier order
service
broker
broker
Supplier order
service
broker
SOAP/
HTTP
Enterprise
Service
Bus
the vendor
of choice.
SOAP/
JMS
XML/
JMS
Purchase Order
service
Credit check
service
Invoicing
service
JCA
connector
ERP
Supplier
Legacy cc
application
Finance
Scaling services in an20enterprise service bus.
Invoice
application
Research Challenges
 Requirements for the foundations/container:







is the container model appropriate for SOC?
dynamic configuration
provisioning mechanisms, e.g., security, transactions, etc.
discovery
monitoring
composition of policies
end-to-end QoS
 Dynamically (re-)configurable run-time architectures:
 The run-time service infrastructure should be able to configure itself and be
optimized automatically in accordance with specific application requirements &
high-level policies (representing business-level objectives)
 Plug-in Architecture to deal with extensible set of QoS properties:
 How do we deal with: end-to-end security solutions, multiple SLAs,
business transactions, flexible pricing schemes, etc.
 Support for Evolvable Agreements and Negotiation
21
Research Challenges (cntd)
 Topic and content-based routing capabilities: run-time
infrastructure should be equipped with routing mechanisms
to facilitate not only topic-based routing but also, more
sophisticated, content-based routing.
 Infrastructure support for:
 Application integration
 Data integration
 Process integration
 Semantically enhanced service discovery: use of automated
means for accurate discovery of services in a manner that
demands minimal user involvement.
22
Our research - Human provided Services (HpS)
 Humans can publish “themselves” as
services, e.g.,:
 Review service
 Consulting service (consultant pattern)
 These services are integrated into
activities, e.g.,:
 ”send for review“
 ”get expert opinion“
 New opportunities for (human)
interaction pattern discovery through
improved semantics
23
Schall D., Gombotz R., Dorn C.,
Dustdar S. (2007). Human Interactions
in Dynamic Environments through
Mobile Web Services. IEEE 2007
International Conference on Web
Services (ICWS), July 9-13, 2007, Salt
Lake City, Utah, USA.
Schall, D., Truong, H.-L., Dustdar, S.
(2008). Unifying Human and Software
Services in Web-Scale Collaborations,
IEEE Internet Computing, May/June
2008
Registries - SOA Theory vs. Practice
 SOA Model intends 3 actors
using Find-Bind-Execute cycle:




Provider registers the service
Consumer finds the service...
...binds to the service provider
...and executes the service
 SOA Practice: Often no registry
 Public registries did not succeed
 Existing registry standards (UDDI
and ebXML) are to heavy-weight
 ”Best practice“: Exchange WSDLs
and endpoints per email
24
Our research – VRESCO
 Current registry standards did not succeed
 Registries should be more than just a lookup service
 Dynamic SOA needs support for:
 Dynamic (late) Binding: Linking abstract services to concrete service
implementations
 Service Composition using Quality of Service (QoS) attributes and
metadata (e.g., pre-/post-conditions)
 Notifications when certain events occur (e.g., new service is published,
QoS of services change, etc.)
 Service Versioning, Search, Service Metadata, Complex Event
Processing, etc.
Michlmayr, A. Rosenberg, F., Platzer, C., Treiber, M., Dustdar, S. (2007). Towards
Recovering the Broken SOA Triangle - A Software Engineering Perspective,
25
In Proceedings of the 2nd International Workshop on Service-oriented
Software
Engineering (IW-SOSWE'07), Dubrovnik, Croatia, September 2007, ACM Press.
Agenda
 Service Oriented Computing Research Roadmap
 Theme#1:Service Foundations
 Theme#2:Service Composition/Assemblies
 Theme#3:Service Management
 Theme#4:Service Engineering
 Summary
26
State of the Art
 On the industry front: Initiatives for developing business process
definition specifications, which aim to define and manage business
process activities and business interaction protocols comprising
collaborating services (“orchestration” and “choreography”).
 On the research front activities have mainly concentrated on:
 dynamic compositions
 modularizing compositions
 enhancing service descriptions (with, for instance, compositional
assertions) so that compositions can be assessed and formally verified
&
 on providing context-aware services to enable compositions.
 In the AI field work is mainly in the area of applying AI planning
techniques to automate the retrieval and composition of Web services.
 Lack of support for the evolution, adaptation & versioning of
business processes.
27
Research Challenges
 Composability analysis for replaceability, compatibility, and
conformance/compliance for dynamic and adaptive processes.
 Adaptive and emergent service compositions.
 Autonomic composition of services:
 Self-configuring compositions e.g., composite services capable of
automatically discovering new partners to interact with, automatically select
among available suppliers, to choose among different options available for
contracts, etc.
 Self-optimizing service compositions that automatically select partners and
options to maximize benefits and reduce costs.
 Self-healing compositions to automatically detect that some business
composition requirements are no longer satisfied by the implementation and
react to requirement violations.
 Self-adapting service compositions are able to function in spite of changes in
behaviours of external composite services, they should reduce as much as
possible the need of human intervention for adapting services to subsequent
evolutions.
28
Research Challenges (cntd)
 QoS-aware service compositions: to be able to understand &
respect each other’s policies, performance levels, security
requirements, SLA stipulations, and so forth.
 Separation of business-driven versus systems-level
compositions:
 business-driven automated compositions should exploit business and
system level separation in service compositions.
29
Our Research Methodology
• Emerging problems
• Runtime behavior
• Metrics/model dependencies
• Performance and reliability
Sensors
Effectors
Analyze
Monitor
• QoS model
• Interaction patterns and
metrics
• Context model and sharing
• Service evolution model
• Human/team metrics
• Trade-off models
• Domain-specific languages
Plan
Knowledge
Sensors
• Service Composition
• Service selection
• Activity ranking
• Human selection
• Reliable processes
• Process mashup
•
Execute
Effectors
• Individual service
• Flows and processes
• Teamwork
• Middleware
• In-situ adaptation
30
Service Evolution
Treiber, M., Truong, H.L., Dustdar, S. (2008). SEMF - Service Evolution
Management Framework, 34th EUROMICRO Conference on Software
31
Engineering and Advanced Applications (SEAA) 2008,
IEEE Computer
Society.
Trust and Reputation in SOC
Motivation
 Open and dynamic Mixed Systems
 humans and (Web) services (mixed)
 joining/leaving the environment dynamically
 performing activities and tasks
 Massive Collaboration in SOA
 large sets of humans and services
 dynamic compositions
 distributed communication and coordination
 Decisions for future interactions, collaboration
partner selection, data sharing..?
 TRUST
33
Assumptions
 Context-aware collaboration
 context models describing the activity scopes
 Connecting widely distributed actors
 Service-oriented Architectures (SoA)
 Dynamically find and use services
 need for trust in services
 Dynamically find and collaborate with humans
 need for trust in humans
34
Mixed Flexible Collaboration Environment
User perspective
Network perspective
Humans and services interacting
to perform work described by activities.
35
human
service
activity scopes
Challenges
 Identify fundamental concepts of trust in SOA
 Enable automatic determination of trust due
to the potential large sets of entities in SOA
 Identify data influencing trust
 Approach enabling collecting, managing and
analyzing data for trust determination
One uniform platform to manage trust
between humans and services in distributed
service-oriented environments.
36
Foundational Concepts (1/2):
Flexible Ad-hoc Collaboration
GenericResource
0..1
-URI
applies -Type
*
1
*
Action
describes
ActivityTemplate
-Type
*
in
Activity
-Name
parent -Description
-Progress
-StartAt
-Duration
child -Priority
-Tags
0..*
InvolvementRole
-Type
-Responsibilities
*
Requirements
-ProfileRequirements
-TrustRequirements
involved
as
* -Type
-ExecutedBy
-Receivers
-UsedResources
-Timestamp
exhibits
Actor
*
1 has 1
Profile
HPS
Software Service
-Skills
-Features
-Competencies
Human
37
HumanProfile
-Name
-Contact
*
Capabilities
ServiceProfile
-URI
-Vendor
-FOAF
has
 Activities
 describe work that
dynamically emerges
during collaboration
 are performed
collaboratively
 determine the context
of interactions
 are a means to
structure information in
flexible collaboration
environments
Activity
Foundational Concepts (2/2):
Mixed System
 Mixed System
 Mix of human- and software services collaboration
 Humans provide services using SOA concepts
 Human-Provided Services (HPS)
 User contributions as services
 Service description with WSDL
 Communication via SOAP messages
 Example: Document Review Service
 Input: document, deadline
 Output: review comments
[EEE]
D. Schall, H.-L. Truong, S. Dustdar. The Human-Provided Services Framework. IEEE 2008
Conference on Enterprise Computing, E-Commerce and E-Services (EEE), Crystal City,
Washington, D.C., USA, 2008. IEEE.
38
Definition of Trust
 Trust reflects an expectation
 based on previous interactions
 one entity has about another’s future
behavior
 to perform activities dependably,
securely, and reliably
 within a specified scope.
[WEBIST] F. Skopik, H.-L. Truong, S. Dustdar. VieTE – Enabling Trust Emergence in Service-oriented
Collaborative Environments. 5th International Conference on Web Information Systems and
Technologies (WEBIST). Lisbon, Portugal, 2009. INSTICC.
39
The Cycle of Trust
Analyzing Interactions
Establishing Trust Network
Trust-aware
collaboration planning
trust
scope
Con
AcAc
vi vi ti- tity ty
Con
WSDL
WSDL
WSDL
WSDL
Resources
Monitoring
Collaboration
interaction
context 1
Ac
vi tity
WSDL
Executing
Activities/Tasks
Resources
interaction
context 2
Ac
vi tity
WSDL
WSDL
WSDL
WSDL
[ICWE09] F. Skopik, H.-L. Truong, S. Dustdar. Trust and Reputation Mining in Professional Virtual
Communities. 10th International Conference on Web Engineering (ICWE). San Sebastian,
Spain, 2009. Springer.
40
Trust, Recommendation, Reputation

Interpretative Personal Trust Determination
 Monitor interactions (e.g., SOAP calls)
 Calculate and interpret metrics
 Second-Hand Recommendations
 Concept of transitivity
 Recommendation != Personal Trust
(not based on evidence)
 Global Reputation

“Wisdom of the crowd”
41
Use Case in the Area of Software
5. trust relation(s) wrt. to SW
Development
implementation; relation
1. delegate
the creation of
whitebox test
cases for
module X;
trust of Fred in
Jane = ?
4. previous interactions:
only rare e-mail contact,
and one joint meeting
7. recommendation
Fred
between testing and impl.?
Software
implementation
?
3. profile: BSc in
Computer Science,
3 years experience
in SW development
Jane
Software
testing
2. project structure,
required skills and
knowledge etc..
6. partner of
Jane in another
software testing
activity
Tom
8. profiles of
recommenders
42
9. relationships
of indirect
recommenders
-> reputation
’others’
Agenda
 Service Oriented Computing Research Roadmap
 Theme#1:Service Foundations
 Theme#2:Service Composition/Assemblies
 Theme#3:Service Management
 Theme#4:Service Engineering
 Summary
43
Service Mgt & Monitoring
 Composite service developments need mechanisms that
provide insights into the health of systems that implement Web
services & into the status and behaviour patterns of loosely
coupled applications.
 Failure or change of a single application component can bring down
many interdependent enterprise applications.
 The addition of new applications or components can overload existing
components, causing unexpected degradation or failure of seemingly
unrelated systems.
 Application performance depends on the combined
performance of cooperating services & their interactions.
44
Service Mgt & Monitoring (cntd)
 To counter such situations, enterprises need to
constantly monitor the health of their applications.
 The performance should be in tune at all times and under all
load conditions.
 Service management spans a range of activities from
installation and configuration to collecting metrics and
tuning to ensure responsive service execution:
 Service-Level Agreement (SLA) negotiation, management,
auditing, monitoring, and troubleshooting, service lifecycle/state
management, performance management, services and
resources provisioning, & aspects like scalability, availability and
extensibility and others.
45
State of the Art
 Service operations management gathers info about:
 the managed service platform, services and business processes and
managed resource status and performance, and supporting specific
management tasks (e.g., root cause failure analysis, SLA monitoring
and reporting, service deployment, and life cycle management and
capacity planning).
 Service operations management
 provides global visibility of running processes, comparable to that
provided by Business Process Management tools.
 defines & supports active capabilities versus traditional passive
capabilities e.g., rather than merely raising an alert when a given
service is unable to meet the performance requirements of a given
service-level agreement, is able to take corrective action itself.
 provides global visibility of running processes, comparable to that
provided by Business Process Management tools
46
WSDL
Business
Application
(Credit Validation)
Service
Interface
Mgmt
Interface
Business
Application
(Shipping Service)
Service
Interface
Management
Application
(WSDM)
Mgmt
Interface
Enterprise 1
Service
Interface
Application Channel
WSDM
Management
Channel
Enterprise 2
Service
Interface
Mgmt
Interface
Business
Application
(Order Processing)

Service
Interface
Mgmt
Interface
Business
Application
(Inventory)
Service
Interface
WSDL
Management
Application
(WSDM)
WS Distributed Mgt is an interoperability protocol mgt info & capabilities in a
distributed environment via Web services. WSDM focuses:
 Management Using WS (MUWS) uses Web services technologies as the foundation of a
modern distributed systems mgt. It defines how to describe manageability capabilities of
resources using WSDL documents.
 Management of WS (MOWS) addresses the specific requirements for managing Web
services themselves just like any other resource.
47
State of the Art (cntd)
 On the research front activities have mainly concentrated on:
 on assessing the impact of service execution from a business perspective
and, conversely, to adjust and optimize service executions based on stated
business objectives.
 Service mgt entails monitoring. Here research activities
focus on:
 dynamic monitoring techniques that are capable of employing
monitoring rules governing the control of composite services, e.g.,
BPEL processes.
 capturing and monitoring negotiations that incorporate security
policies and policy models that facilitate service life-cycle
management.
 Also research on QoS metrics for selecting Web services
and for establishing trust between trading partners.
48
Research Challenges
 Autonomic management of services:
 Self-configuring mgt services configure themselves automatically to adapt to
different environments & optimize for particular kinds of use.
 Self-adapting mgt services adapt dynamically to changes in the environment,
market and so on, using policies provided by the distributed platform
administrator.
 Self-healing mgt services can discover, diagnose and react to disruptions.
Corrective action could involve a product altering its own state or effecting
changes in other components in the environment.
 Self-optimizing mgt services can monitor and tune resources automatically to
meet end-user or business needs, e.g., reallocating resources in response to
dynamically changing workloads to improve overall utilization, or ensure that
business transactions are completed in a timely fashion.
 Self-protecting management services can anticipate, detect, identify and protect
against threats, e.g., unauthorized access and use, virus infection and
proliferation, etc & take corrective actions to make themselves less vulnerable.
49
Autonomic Services – our approach
50
Autonomic Service Adaptation
Services react (passive) to changes and to anticipate (pro-active) changes

Based on BPEL monitoring and runtime services adaptation (e.g., degradation
of QoS, based on replacement strategies and transformers)
Moser, O., Rosenberg, F., Dustdar, S., (2008). Non-Intrusive Monitoring and Adaptation for WS-BPEL.
Proceedings of the 17th International World Wide Web Conference (WWW'08), 21-25. April 2008,
Beijing, China.
Rosenberg, F., Platzer, C., Dustdar, S., (2006). Bootstrapping Performance and Dependability
Attributes of Web Services. IEEE International Conference on Web Services (ICWS'06), 18. - 22.
September 2006, Chicago, USA.

Based on activity patterns (mining of activities)
Dustdar, S., Hoffmann, T. (2007). Interaction pattern detection in process oriented information
systems, Data and Knowledge Engineering, Elsevier, 62 (2007) 138–155

Based on service patterns (e.g., mining of service dependencies)
Dustdar, S., Gombotz, R. (2007). Discovering Web service workflows using Web services Interaction
Mining. International Journal of Business Process Integration and Management (IJBPIM), pp. 256-266.
51
Finding Patterns in Ad-hoc Team Interactions
 Proxy
 1:1 relation to original
 e.g., secretary, assistant
a)
 e.g., person who is
responsible to answer all
client requests
4 7 10 15 29 34
jb:Person
10
4 7 10 15 29 34
39
15
42
38
mr:Person
mr:Person
mr:Person
fb:Person
5
6 11
13
5
12
30 32
14 31
33
41
hk:Person
 “Master/Slave”
 More patterns…(ICEIS 2007)
jb:Person
ml:Person
19
request
of interest
ks:Person
 sending identical requests
to multiple recipients
 e.g., multiple participants
are requested to state their
cost estimates
c)
16
jb:Person
 Broker
b)
candidate for proxy,
master or slave
6 11
13
ks:Person
12
30 32
11
14 31
13
12
14
33
hk:Person
ks:Person
hk:Person
40
(a) Area of interest
around performer mr
(b) Remove interactions (c) Consider only
not causally related to
one kind of
any request
request
Dustdar, S., Hoffmann, T. (2007). Interaction
pattern detection in process oriented
Information systems, Data and Knowledge
Engineering, Elsevier, 62 (2007) 138–155
52
Service Interaction Mining
 Different scopes/levels for mining
 (1) Individual Services
 (2) Service Selection (A or B)
 (3) Service Dependencies (a set of services is always used in
combination with each other)
 (4) Workflow Mining (activities in a process)
Dustdar, S., Gombotz, R. (2007). Discovering Web service workflows using Web services
Interaction Mining. International Journal of Business Process Integration and Management
(IJBPIM), Vol. 1, pp. 256-266.
53
Context
is a
beast
Baldauf, M., Dustdar, S., Rosenberg, F. (2007). A Survey on Context Aware Systems. International Journal
of Ad Hoc and Ubiquitous Computing, Vol. 2, No. 4, pp. 263-277.
54
Context Tunneling – Context Scopes
 Based on our work in the inContext project http://www.in-context.eu/
 Tunneling is based on three notions of context scopes:
Individual Context
(Complex)
Activity Context
Team Context
  We need “integration” of context (e.g., individuals collaborate on
shared activities) -> processes
55
Context Management: distributed storage
 Context information
collected from different
sources
 Centralized context store is
not suitable
 Context information is
stored in different services
 Linked through a core model
56
WORKPAD EU Project
EU STREP FP/ WORKPAD
Pervasive Software Environments for Supporting Disaster Responses
WORKPAD Scenario
(IEEE Internet Computing 1/2008)
Vimoware: Vienna mobile middleware
Context and
Interaction
Mining interactions in disaster scenario
57
Self-Healing in SOA
Application of self-healing
 Support people with the complexity of current
systems




Avoid design errors
Avoid configuration errors
Replace failing service
Handle service invocation transparently to keep
system healthy
 Support service maintenance
Definition of self-healing
 A self-healing system should recover from the
abnormal (or “unhealthy”) state and return to the
normative (“healthy”) state, and function as it
was prior to disruption.
 A system with self-healing properties can be
identified as a system that comprises faulttolerant, self-stabilizing, and survivable system
capabilities and, if needed, must be human
supported.
Self-healing origins
 Fault-tolerant system refers to a system that
continues working at a reasonable degree in the
presence of faults
 Self-stabilizing system refers to a system that
continuously stabilizes the system from any
perturbations.
 Survivable systems sustain the unexpected
Self-healing research
 IBM's autonomic computing research envisions a
layered structure that can manage itself to given highlevel objectives from administrators.
 Motivated by the amount spent on and overwhelming
effort in system maintenance
 The research tries to cover all adaptable layers down to
network and operating system
 Defines 4 properties for a self-managing system (selfCHOP):
 self-configuring: The ability to readjust itself “on-the fly”
 self-healing: Discover, diagnose, and react to disruptions
 self-optimization: Maximize resource utilization to meet end-user
needs
 self-protection: Anticipate, detect, identify, and protect itself from
attacks.
Self-healing research
 Self-adaptive systems evaluate their behavior
and adapt on system irregularities or when
better functionality or performance is possible
 The research primarily covers the application
and the middleware layers and focuses on the
system as a whole.
 Includes also self-healing as
 a combination of self-diagnosing and self-repairing
with the capabilities to diagnose and recover from
malfunctions.
Self-healing characteristics

What:
 Continuous availability by
compensating the dynamics of
a running system.

Why:
 maintenance of health
momentarily and ...
 Enduring continuity by
resilience against unintentional
behavior

How:
 Detect disruptions
 Diagnose root cause
 Derive recovery strategy
Self-healing characteristics
 When:
 Continuously in a closedloop for timely reaction
 Who:
 System itself
 Human administrator by
configuration, e.g., set of
policies
 Where:
 Complex, unpredictably
behaving systems
Self-healing requirements





Closed loop with sensor and effector interfaces
Status knowledge and state recognition
Failure classification
Recovery policies
Fitness and evolutionary aspects
Self-healing loop



detecting: filters any
suspicious status
information
diagnosing: does root
cause analysis and
calculates appropriate
recovery
recovery: carefully applies
the planned adaptations
Self-healing states



Normal: Healthy system
that signalizes intentional
functioning of the system.
Broken: Unhealthy system
with unacceptable response
(failure)
Degraded: System is in a
fuzzy transition zone. Drift
from acceptable to failure.
Recognizable by
considerable loss on
performance. Provides
additional time for recovery.
Failure classification
 Assists root cause and resolving the failure.
 Failure types:






Crash failure: undetectable malign interruption
Fail-stop: detected benign interruption
Transient: instantaneous transparent with side-effects
Omission: message loss, transmission errors
Performance: violation of constrains in execution time
Arbitrary: any type of failure with no specific pattern
Failure classification
 The three different types are:
 Action policies: no learning and immediate response is expected.
 Goal Policies: define a set of desired states. Calculate the set of
actions for the transition from the current (failure affected) to a
desired state
 Utility Function Policies: the set of states is connected to an
utility. Problem solving includes history information, adaptation
knowledge and a comprehensive system awareness

Common recovery policies are:
 Replacement, balancing, isolation, persistence, redirection,
relocation, diversity.
Fitness and evolution
 Current systems, especially self-* enhanced, are
designed for long-term service.
 Issues:
 many requirements are not known a-priori but
expose themselves and evolve over time
 malicious failures might restrict parts of the system’s
functionality to essential services
 adaptation might reach its limits in resources
 Current solution: human assisted healing
Summarizing Self-Healing in SOA
 Why is it required. What's the motivation?




Increasing complexity of current systems causes
...escalating costs
...overwhelming effort in system maintenance
...system incomprehensibility
 How does self-healing work. What are the requirements?
 Sensor and effector interfaces provide the essential awareness
(self and environment)
 Closed loop with timely information flow
 State recognition: healthy, degraded, unhealthy
 Fault classification
 Policies with recovery strategies
Agenda
 Service Oriented Computing Research Roadmap
 Theme#1:Service Foundations
 Theme#2:Service Composition/Assemblies
 Theme#3:Service Management
 Theme#4:Service Engineering
 Summary
73
Business Process: Unit of Analysis
 Each process has deep knowledge and value for an enterprise
 Need to study and focus but there are generic properties also
 Business processes







Measures of success
Control features
Formal properties and descriptions
Real-world constraints
Decomposition and composition
Contractual and expectations of cost, quality, reliability
Can be internal or external to an organization
 Business process examples




Procurement
Order & Sales management
HR pension management
Electronic chip design
74
State of the Art
 Developers in their early use of SOA implement a thin
SOAP/WSDL/UDDI veneer on top of existing applications or
components & leave the underlying component untouched.
 Conventional s/w development methodologies such as ObjectOriented Development & Component Based Development do
not address the three key elements of an SOA:
 services,
 service assemblies (composition), and
 components realizing services.
 Early research activities concentrate on how to provide
sufficient principles & guidelines to specify, construct and
refine and customize business processes from a set of internal
and external services.
75
Research Challenges
 Engineering of Service Compositions:
 Associating a services engineering methodology with standard s/w
development & business process modelling techniques:
 NOT UML!!
 Rational Unified Process - analysis and design of iterative software
development.
 Supply Chain Operations Reference (SCOR) Framework (standard guidelines
for companies that examine the configuration of their supply chains, identify &
measure metrics in the supply chain.
 Automated, transparent user centred support to the entire
business process lifecycle of composed services.
 Design techniques for managing service versioning and adaptivity.
 Service Governance to govern end-to-end business processes
that are composed out of variety76of service fragments that need to
be maintained separately by different organizations.
Business Process Decomposition
 Focus on defining business services from the business process point of
view.
 Start with some business process & decompose it into increasingly
smaller sub-processes. The resulting smallest sub-processes then
become candidate business services for implementation.
 The more business processes decomposed in this way, the more
commonality across their sub-processes is achieved, thus building an
appropriate set of reusable Services.
 Simultaneously take existing business logic ingrained in app. code &
expose it as services that specify not the overall business process, but
rather the mechanism for implementing it. This yields two categories of
Services:
 business functionality services that are reusable across multiple processes,
and fine-grained
 utility services that can provide value to various services across the
organization.
77
Service Granularity Concerns I
 Service granularity refers to the scope of functionality
exposed by a service.
 Services may come at two levels of granularity:
 A coarse-grained interface might be the complete processing for a
given service, e.g., “SubmitPO” - the message contains all business
information needed to define a purchase order.
 A fine-grained interface might have separate operations for:
“CreateNewPO”, “SetShippingAddress”, “AddItem”, etc.
 Fine-grained services might be services that provide
basic data access or rudimentary operations. These
services are of little value to business applications.
 Coarse-grained services are composed from finer
grained services.
78
Service Granularity Concerns II
 The frequency of message exchange is an important factor. Sending &
receiving more info. in a single request is more efficient than sending many
fine-grained messages.
 Several redundant, fine-grained services leads to increased message traffic
& tremendous overhead & inefficiency.
 A small collection of coarser-grained services - each of which implements
a complete business process - that are usable in multiple scenarios is a
better option.
 Heuristics identify the right level of granularity for services, e.g., clearly
identifiable business concepts, highly usable and reusable concepts,
concepts that have a high-degree of cohesion and low-degree of coupling,
etc.
 Vertical sectors, e.g., automotive, travel industry, etc, standardize business
entities & processes by choosing their own levels of granularity.
79
Summary of research roadmap
 Research activities in SOC are very fragmented.
This necessitates that a broader vision and
perspective be established—one that permeates
and transforms the fundamental requirements of
complex applications that require the use of the
SOC paradigm.
 The SOC research roadmap launches four pivotal,
inherently related, research themes to SOC:




service foundations,
service composition,
service management and monitoring, and
service-oriented engineering.
80
Conclusion
 Autonomic and adaptive Services and environments ->
shift to runtime considerations
 Novel abstractions needed to model, monitor, predict, and
execute compositions and mashups (Top-down and
Bottom-up approaches)
 Interaction Mining and Pattern detection of activities and
services
 Context (reuse across services/applications)
81
Thanks for your attention!
Prof. Dr. Schahram Dustdar
Distributed Systems Group
Institute of Information Systems
Vienna University of Technology
Austria
http://www.infosys.tuwien.ac.at/Staff/sd/
82
Download