Benefit / Cost Analysis
Service Mashups orchestrate WSDL-based Web services and RESTful Web services in
a coequal way. Some of these services require more time to execute, others
perform faster and respond earlier to requests. Beside time, other
characteristics might influence the overall performance and quality of the
resulting Service Mashups. To provide a simple abstraction of different
characteristics we deploy a Benefit / Cost modeling approach to map Service
characteristics to Benefit / Cost parameter value pairs. The following section applies a
simple Benefit / Cost Analysis to exemplify the approach and outline the
benefits for the Service Mashup designer.
 |
|
Figure 1: Weather Service Mashup [published as BC Example 1] |
The Service Mashup illustrated in figure 1 describes actions performed to
query weather information from different Web services. Prepare and Check
are abstract Activities to map the cost and benefit of preparation - and checking
-
actions performed before requesting the actual weather information. We weighted
these activities in the following way:
- Prepare: Benefit 10 / Cost 30
- Check: Benefit 50 / Cost 60
- Get Weather: Benefit 50 / Cost 80
- Get Latest Weather: Benefit 90 / Cost 30
- Output: Benefit 90 / Cost 10
The Benefit / Cost Analysis traverses the modeled Service Mashup
and assembles for each element type the absolute and the relative number of
occurrence.
 |
|
Figure 2: Starting Benefit / Cost Analysis |
To start the Benefit / Cost Analysis use the newly created Menu Item
Tools > Process analysis > Benefit / Cost Analysis as illustrated
in figure 2. This triggers the Benefit / Cost Analysis of the currently loaded
Service Mashup.
 |
|
Figure 3: Benefit / Cost Analysis applied |
Figure 3 illustrates the results from the analysis applied on the
Service Mashup example. The analysis counted 2 Activities, 3 Copies, 2 Invokes
and 2 WSDLs correctly.
Results
The two Activities are Prepare and Check. The three Copies are separated into:
- two generated Copies injected by the integration of the Get Weather WSDL Web
service and
- the Output copy copying the result of the Get Latest Weather call to
the output Variable.
The Service Invokes are integrating WSDL based Web services. Finally the total
costs are summarized to 210 units and the total benefit is summarized to 290
units.
The Benefit / Cost Analysis weights the overall Service Mashup by
extracting the costs from the benefit which results in 80 units.
You can reuse the example illustrated above by adding the public Service Mashup
BC Example 1 to your processes. Simple apply the Benefit / Cost analysis on the
Service Mashup to receive the same results.