Title: Introduction to Wimax
1A Model-driven Approach to Describe and Predict
the Performance of Composite Services
Authors Andrea DAmbrogio and Paolo
Bocciarelli Department of Computer Science,
Systems and Production, University of Roma Tor
Vergata, Roma, Italy. Published
2007 Presentation for Course (SYSC 510) Professor
Majumdar
Presented By Pragash Rajeswaran
2Presentation Outline
- Introduction
- Related Works
- Focus of the research document
- Concept Overview
- Model-driven Performance Prediction of Composite
Services - Example Application
- Implementation Validation Issues
- Conclusion
- QA
3Introduction
- Distributed applications are rapidly converging
towards the adoption of a computing paradigm
based on service-oriented architectures (SOA). - Service Is a self-describing, open component
that supports rapid composition of distributed
applications. - Composite service Can be seen as a set of
services that cooperate to execute a process that
defines the collaboration workflow. -
- Service providers problems
- Problems of predicting the level of quality
of service (QoS) that can be offered - to service consumers
- Dynamically managing the QoS at execution
time - Why service providers face the above problems?
- Interested to describe the performance
characteristics of offered services - To predict the level of performance that can be
offered to service consumers - May want to explore several alternatives
configurations of composite service during
design and execution process -
4Related Works
- Several approaches have been proposed in
literature that dealt with performance aspects of
web services and their composition. Some of the
related work are given below - Queuing-based models have been used to identify
performance problems in web services or web
applications. - LQN models are used to calculate the response
time of a clinical decision support system based
on web services. - Performance models of LQN type are used to
mitigate performance penalties that have to be
paid when exposing a legacy application as a web
service. - LQN models are used to evaluate the impact of web
services on the overall system performance. - Contributions that deals at a larger extent
(i.e., not limited to queuing-based modeling) - An approach to trigger re-planning opportunities
during composite service execution is proposed. - Simulation techniques are used for analyzing the
performance of composite web services.
5Focus of research document
- Introduced a model-driven approach for
integrating performance prediction into service
composition processes carried out by use of
Business Process Execution Language (BPEL) for
Web Services. -
- In addition it focuses on,
- Use of LQN models for predicting the performance
of composite web services - Introduces a method for automatically building a
LQN model from UML models of BPEL-based service
composition processes. - Characteristic of the method introduced
- Method makes use of a WSDL extension that allows
service providers to describe the performance
characteristics of the services they offer. - Method can be fully automated
- Method could be applied both to static and
dynamic composition of web services. - Static composition The services to be composed
are chosen at design time, - Dynamic composition The services are chosen at
execution time. ( LQN models can be used as an
on-line tool system)
6Presentation Outline
- Introduction
- Related Works
- Focus of the research document
- Concept Overview
- Composite Service
- BPEL
- P-WSDL
- Model-driven Performance Prediction of Composite
Services - Example Application
- Implementation Validation Issues
- Conclusion
- QA
7Composite Services Overview
- Composite service can be seen as a set of
services that cooperate to execute a process that
defines the interaction workflow. -
- Two different styles of collaboration between
services - Orchestration represents the control from the
perspective of one party, which is the central
authority (or coordinator) that controls the
execution of component web services. - Choreography much more collaborative and does
not rely on a central coordinator that controls
the execution of the overall process. - Overview of Business Process Execution language
(BPEL) - BPEL represents a convergence of the ideas in
XLANG (a block structured process language) and
WSFL (a graph-based process language)
specifications, which have been superseded by the
BPEL specification. - BPEL process is an XML document typically
generated with graphical design tools by business
analysts rather than programmers. (BPEL process
is executed by an orchestration) - BPEL is intended for modeling two types of
processes abstract and executable processes. - BPEL is essentially a layer on top of WSDL, with
WSDL defining the specific operations allowed and
BPEL defining how the operations can be
sequenced.
8 P-WSDL Overview
- WSDL description is an XML document that contains
all the information about service capabilities
and invocation mechanisms. - WSDL document only addresses the functional
aspects of a web service without containing any
useful description of non-functional or quality
of service characteristics. - WSDL extension has been introduced in for the
description of performance characteristics of a
web service, such as response time, throughput,
utilization, etc
The proposed approach is lightweight, so that
existing WSDL documents can easily be extended
without altering their original content, and
automated, in order to effectively support its
adoption.
9 P-WSDL Overview Cont
10Presentation Outline
- Introduction
- Related Works
- Focus of the research document
- Concept Overview
- Model-driven Performance Prediction of Composite
Services - Example Application
- Implementation Validation Issues
- Conclusion
- QA
11Model-driven Performance Prediction of Composite
Services
- Steps
- 1 - Composite service is initially specified as a
workflow of abstract services. The composite
service specification produces as output an
abstract model. - 2 - Service discovery is then carried out to bind
each abstract service to one of the several
concrete services matching the abstract service
interface. - Two alternative service selection approaches
- Local optimization approach
- Global planning approach.
- 3 - The annotated AD is then transformed both
into a performance model of LQN type (LQN) and
into a BPEL document. - 4 - The LQN model is given as input to the LQN
solver that carries out the model evaluation step
and yields as output the predictions about the
performance of the composite web service.
12Model-driven Performance Prediction of Composite
Services Cont
13Convert BPEL to LQN
14Presentation Outline
- Introduction
- Related Works
- Focus of the research document
- Concept Overview
- Model-driven Performance Prediction of Composite
Services - Example Application Travel Planning Composite
Service - Implementation Validation Issues
- Conclusion
- QA
15Travel Planning Service
- Travel Planning System Specification
- Looking for flight and hotel room availability
(according consumer request) - Obtaining information about car renting.
- The travel plan should also include information
about transportation from the airport to the
hotel. (According to user preferences) - The plan may include either a timetable of
airport shuttles or an estimated cab fare. - The travel plan is finally presented to the
customer for approval and booking. - Note
- Assumption an average 70 of customers prefer a
cab rather than an airport shuttle. - The performance requirement on the overall
composite web service is specified in terms of
the response time of the entire scenario, which
should not exceed 3 seconds.
16Travel Planning example Cont
- The abstract model of the composite web service
are build. - Service discovery activity is then carried out
to bind each abstract service to a specific
concrete service matching the abstract service
interface. - Performance data annotated by use of the SPT
profile are extracted from the P-WSDL documents
of component web services. - Table 2 summarizes the sizes of input/output
messages, for each invocation of external web
services.
The abstract model is then transformed to an
executable model, as illustrated by the annotated
AD in this figure 8 (Given at next Slide).
17Travel Planning example Cont
18Travel Planning LQN Model
19Impact of Two TM Services
Question The service provider may want to
explore the impact on overall performance of two
alternative transportation manager (TM) services
that provide different performance
characteristics.
This table summarizes performance data extracted
from the PWSDL documents of the two alternative
services, namely TMA and TMB.
20Impact of Two TM Services Cont
- This figure 9 illustrates,
- The performance prediction obtained by
- evaluating the LQN models of the two alternative
composite web services. - It is easy to see that the composite service that
binds the flight manager service to TMB is more
scalable than the one using TMA.
- Note
- The composite web service with TMA satisfies the
established performance requirements for a number
of users not exceeding 25. - In this case, the transportation manager service
itself is the system bottleneck, as shown in
Table 4, - Which describes the utilization of invoked
services in the two alternatives for 25 users of
the composite web services.
21Presentation Outline
- Introduction
- Related Works
- Focus of the research document
- Concept Overview
- Model-driven Performance Prediction of Composite
Services - Example Application
- Implementation Validation Issues
- Conclusion
- QA
22Implementation Validation Issues
- The use of a standard data format is
essential for enabling model interoperability, or
the easy interchange of models between
distributed and heterogeneous tools and
repositories. - The required transformations can be
specified effectively by use of declarative or
imperative model transformation languages, and
then executed by use of a transformation engine
that takes as input the source XML file with the
transformation rules and yields as - output the target XML file.
- The main advantage of this solution
- The transformation rules are specified at an
abstract level - Automatically mapped to a specific
implementation technology - Without specifying details about how the
transformation has to be carried out - Without implementing a transformation engine
from scratch. - Note
- Full-featured transformation engines are not yet
available - The transformations in the proposed approach
have been implemented by use of standard
XML-based languages and tools, such as XSLT.
23Implementation Validation Issues Cont..
- Prototype Validating process
- The component web services that implement the
core functions of various - BPEL processes have been developed by use of the
Java platform and are - Locally hosted, as well as the resulting
composite web service. - Existing load on component web services has been
emulated by use of multi-threaded application
clients acting as existing service consumers. - The approach has been validated by comparing the
response time and the - utilization level predicted by the model with
real data monitored on the composite - web service.
- Testing Implementation not included on the
paper - Static service composition in real world
environment - Dynamic service composition was not tested
- Nevertheless, the high degree of
automation and interoperability of the proposed
approach can be considered as a first step toward
such an attractive solution
24Conclusion
- Key points
- A model-driven approach for integrating
performance prediction into service composition
processes described by use of BPEL is introduced. - The proposed approach is founded on P-WSDL
(Performance-enabled WSDL) - A performance-oriented extension of WSDL, the
language for describing - the information about service capabilities and
invocation mechanisms. - The main feature of the approach is the use of a
model transformation method to - automatically build LQN models of BPEL processes
described by use of appropriately - annotated UML models.
- The method enables service providers to
effectively predict if the composite service - meets the performance requirements formalized in
the service level agreement. - The approach currently support static service
composition and is illustrated by use - of an example application to a composite web
service for travel planning. - Future work
- An extended validation of the proposed approach,
by use of publicly hosted web services - Its extension to other QoS attributes, by use of
QoS-aware descriptions of component - web services (Dynamic Service composition)
25Presentation for Course SYSC 5101 Professor
Majumdar
Pragash Rajeswaran