Professional Documents
Culture Documents
302
routing tables and receives notifications from other web service is developed with two sub models; one
state coordinators. It is also responsible for invoking with class diagrams that model the interface of the
services once all the pre-conditions are met. and web service and the other using activity diagrams
notifying other state-coordinators once the execution that model the composition operations. Web services
is complete. The types of messages exchanged are are identified by textual description and names. The
‘control-flow notifications’, in which the messages WSDL descriptions of the candidate services are
are exchanged between the coordinators, and extracted and are transformed to UML. UML
‘service invocation messages’, in which the Profiles are used to tag necessary information like
messages are exchanged between the coordinator Input/Output messages and operation signatures.
and the component services. The work is explained Control and data flows can also be properly
by taking Travel Planning Service as a Case study. represented. Transformation from this UML profile
The paper provides an important technique for web model to XML document is performed. The XML
service compositions using statecharts. However, it document is used as input to the execution engine.
does not address service composition patterns and Such transformations can be performed by various
does not cater static aspects of the composition. transformation tools. Finally, the interface of new
web service is modeled and its corresponding WSDL
Pathak et al [9] propose a framework for is generated. The methodology has been applied on
modeling web service composition. Specifications gas dispersion emergency case as a case study.
are provided using UML state machines. These
UML state machines can be annotated with Numerous approaches have been discussed in
appropriate domain ontologies and non-functional literature that model BPEL4WS with UML, since it
requirements. They are then translated to Finite State is a widely accepted language for web service
Automata (FSA). Service providers publish their composition. Gardner et al [7] [14] provide UML 1.4
services using OWL-S and WSDL. These are also profile for BPEL 1.0 covering most of the aspects of
translated to FSA and analyzed based on user Web Service Composition. Ambühler [15] extends
feedback. End-user can refine their specifications this profile and propose UML profile for UML 2.0.
using the feedback. This is an iterative process. In an He also presents the implementation of the profile in
extension to this work [10], Phathak et al discuss in Rational Software Modeler and transformation rules
detail service composition in MoSCoE using are implemented using transformation engine as an
Symbolic Transition System. However, this Eclipse plug-in.
approach does not cover modeling in UML at a
broader level. The approach only discuses writing Thone et. al [8] discuss and evaluate BPEL4WS.
specifications in UML state machines that are later They propose UML-WSC profile which is mainly
translated into STS. based on activity diagrams. UML activity diagrams
represent dynamic part of the composition, whereas,
UML profile for OWL-S is presented by Timm static part is represented by UML class diagrams.
and Gannod in [11]. Developers can model their States are stereotyped as service states, transform
OWL-S descriptions in UML. The XMI states and object flow states. ‘Object flow states’
specifications of the UML models are translated into represent flow of XML messages, ‘Transform states’
OWL-S using XSLT transformations. It is specified represent structural transformation on messages and
for atomic processes. This work is extended by ‘Service states’ represent call operations.
Barrett and Pahl in [12] for web service composition. Stereotyped UML class diagrams are used to
Interfaces are modeled as activity diagrams from describe operations and parameters of available web
UML models and distribution patterns are applied on services.
them. Semantic matching is done and model is
executed. TOPMAN is presented as a tool for this Gronmo and Jaeger [18] describe four phases for
approach. This approach caters semantics of web development of web service composition. These
phases include modeling, discovery, selection and
service compositions but is dependent on a profile. It
also does not cater feedback mechanism. deployment of composite web service. UML activity
models show control and data flow whereas
ontology concepts and QoS characteristics are
Hybrid WSC modeling represented by class models. UML profiles are used
to capture domain ontologies. Services are
The section covers the approaches that cater both discovered on matchmaking of semantic descriptions
structural and behavioral aspects of web service and are ranked based on QoS characteristics. Finally
composition in their model. a concrete composition model is generated that
contains different descriptions of it. The paper also
In the approach discussed by Skogan et. al [2] presents an overview of automated transformations
initially a preliminary model of the new (composite) involved in the methodology.
303
Orriens et al in [17] introduce a model driven
approach for development and management of
dynamic web service composition. It provides a 3. Comparison Of Approaches
phased approach starting from abstract definition,
scheduling, construction and execution. First the In our study, we have discussed various
required information is modeled as classes in approaches that employ UML as modeling tool in
Information Model. OCL is used to specify business Web Service composition. The classification
rules. In scheduling phase, the abstract composition proposed is useful in analyzing similarities and
is made more concrete by correlating messages and relations between different approaches.
structuring activities. These are made unambiguous Based on our discussion of the approaches, a
in Construction phase by associating activities with comparison table can now be established. The
roles and selecting concrete services. . Finally, in attributes used are explained below:
execution phase executable format of structured
service composition is derived. a- Artifacts Used
This attribute tells about the UML artifacts that
B´ezivin et al in [19] talks about MDA approach
for development of Web Services and their are employed in modeling the composition.
compositions. Business processes are shown by b- Categorization
activity diagrams and static structures by UML class It tells about the classification under which the
diagrams. Authors have shown mapping from UML approach falls.
to BPEL4WS, WSDL and Java Platform. c- Use of Profile
It tells that in order to cater various
In [4], Xu et. al use aspects for web service requirements of the domain, has the author
composition using UML. Web service composition proposed/used any UML Profile.
is modeled using UML. . The static part of the d- Feedback/Refinement
composition i.e., interfaces with their operations’
Web Service Composition is not a trivial task.
signatures and message types are modeled using
Different web services which are developed by
class diagrams. The standard UML elements of
activity diagram are extended to show the control different organizations/ developers and under
flow and data flow of the composition. Aspects are different circumstances are combined to form a
used to separate crosscutting concerns and they new composite web services. Many problems
provide ‘pluggable’ behaviors. These are also may arise in this process. This attribute is
modeled using UML. UML profile is used to model important as user feedback can help in finding
aspects. This UML profile shows aspects, pointcuts, and eliminating the conflicts in the composition
web service interfaces and binding relationships. of a new web service and provides control to
This paper is a first effort towards modeling of web developer over the composition of required
service compositions using aspects. The paper uses composite service.
UML profile, addresses control and data flow and e- Use of Ontology
provides modeling at meta-model level. However, it Work on developing semantic web is gaining
does not provide any tool support and does not momentum. Some approaches have used
address web service composition patterns. ontologies to provide semantics in developing
John and Gerald [20] use UML profile to specify composite web services.
semantic web service compositions using model- f- Addresses Service composition patterns:
driven approach. In this approach, the software Various Patterns have been identified in SOA
developer specifies the structure of the composite world. These patterns describe problems which
web service using UML class diagrams and the occur again and again in an environment. This
compositions are shown using UML Activity attribute specifies whether the particular
diagrams. The pre- and post-conditions are specified approach caters service composition patterns in
using OCL. UML specifications are transformed to its model or not.
OWL-S specifications. A grounding tool is used to g- Addresses Control conflicts
specify input/output messages and operations in a This parameter shows whether the control
WSDL file from OWL-S specifications. This conflicts that arise during composition of a web
approach is supported by a tool and is well presented service are addressed at modeling level or not.
with a case-study. The approach lacks any feedback h- Addresses Data Conflicts
mechanism to developer and use web service Data Conflicts can also be addressed at model
composition patterns, which address common level in order to avoid the errors that may come
composition behaviors.
at later stage i.e. at execution level. It is better
304
to address such conflicts at model level since aspects of the composition. The field, however, lacks
discovering and fixing the error at a later stage a standard UML modeling profile. There is a need to
is expensive in terms of time and cost. define a modeling approach that covers all the
i- Modeling at Meta-Model level: aspects needed to provide a valid composite service.
Meta-Model level is at a higher level of
abstraction. Some approaches cater different
domain specific modeling requirements at a References
meta-model level. This attribute shows that the
modeling of composite of web services is [1] Castro, V., Marcos, E. and Sanz, M. L. Service
addressed at meta-model level and hence Composition Modeling: A Case Study, Seventh Mexican
semantics of the modeling are also catered. International Conference on Computer Science (ENC'06)
j- Automatable:
[2] Skogan, D., Grønmo, R. and Solheim, I. Web Service
Automation of an approach tells whether a tool Composition in UML, presented at The 8th International
can be developed for it so that minimum human IEEE Enterprise Distributed Object Computing
interaction is needed. Some techniques are Conference (EDOC), Monterey, California, USA., 2004.
automatable but do not have tool support
available yet. [3] Grønmo, R. and Solheim, I. Towards Modeling Web
k- Tool Support Service Composition in UML, presented at The 2nd
This attribute represents maturity of the International Workshop on Web Services: Modeling,
technique and serves as its proof of concept. Architecture and Infrastructure (WSMAI-2004), Porto,
l- Case Study Portugal, 2004.
It provides a practical example about the [4] Xu, Y., Tang, S., Xu, Tang, Z. Towards Aspect
application of the approach. A case study Oriented Web Service Composition with UML, 6th
strengthens the work as it highlights the IEEE/ACIS International Conference on Computer and
practical nature of the work. Information Science (ICIS 2007).
Based on these attributes, Table 1 summarizes [5] Benatallah, B., Sheng, Q. Z. and Dumas, M. The Self-
the analysis of various approaches discussed above. Serv Environment for Web Services Composition. IEEE
Internet Computing 7(1): 40-48 (2003).
305
[11] Timm, J. and Gannod, G. A Model-Driven Approach
for Specifying Semantic Web Services. In 3rd Intl. [21] Formal UML Specifications. The Unified Modeling
Conference on Web Services, pages 313–320. IEEE press, Language (UML), Available at: http://www.uml.org.
2005. 2003
[22] UML 2.0 Superstructure Specification, Object
[12] Barrett, R. and Pahl C. Semi-Automatic Distribution Management Group, Framingham, Massachusetts,
Pattern Modeling of Web Service Compositions using October 2004.
Semantics, In Proceedings of the 10th IEEE International
Enterprise Distributed Object Computing Conference [23] Benatallah, B., Dijkman, R. M., Dumas, M. and
(EDOC'06) Maamar, Z. Service Composition: Concepts, Techniques,
Tools and Trends, Eds. Service-Oriented Software
[13] Booth, D., Haas, H., McCabe, F., Newcomer, E., Engineering: Challenges and Practices, chapter 3, pages
Champion, M., Ferris, C. and Orchard, D. Web Services pp. 48-66. IDEA Group-2005.
Architecture, W3C Working Group Note 11, February,
W3C Technical Reports and Publications, Available at [24] Web Services Flow Language (WSFL 1.0).
http://www.w3.org/TR/ws-arch/. Available at:
http://www306.ibm.com/software/solutions/webservices/p
[14] Amsden, J., Gardner, T., Griffin, C. and Iyenger, S. df/WSFL.pdf
Draft UML 1.4 Profile for Automated Business Processes
with a mapping to the BPEL 1.0. IBM alphaWorks [25] XLANG. Web Services for Business Process Design.
(2003). Available at Available at:
http://dwdemos.alphaworks.ibm.com/wstk/common/wstk http://www.gotdotnet.com/team/xml_wsspecs/xlang-
doc/services/demos/ uml2bpel/README.htm c/default.htm, 2004.
[15] UML 2.0 Profile for WS-BPEL with Mapping to [26] Andrews, T., Curbera, F., Dholakia, H., Goland, Y.,
WS-BPEL, Available at http://elib.uni- Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D.,
stuttgart.de/opus/volltexte/2005/2487/index.html Thatte, S., Trickovic, I. and Weerawarana, S. Business
Process Execution Language for Web Services, Version
[16] Dustdar, S. and Schreiner, W. A Survey on Web 1.1.Specifcation, BEA Systems, IBM Corp., Microsoft
Services Composition. International Journal on Web and Corp., SAP AG, Siebel Systems, 2003.
Grid Services, 1(1):1–30, 2005.
[27] Rao, J. and Su, X. A survey of automated web
[17]. Orriens, B., Yang, J. and Papazoglou, M. P. Model service composition methods. In: Proc. of the 1st Int.
Driven Service Composition, ICSOC, LNCS 2910, Workshop on Semantic Web Services and Web Process
Springer-Verlag Berlin Heidelberg, pp.75–90. Composition, SWSWPC2004, LNCS, San Diego, USA.
(2004)
[18] Grønmo, R. and Jaeger, M. Model-driven semantic
web service composition. In Proc. 12th Asia-Pacific [28] Hull, R and Su, J. Tools for Composite Web
Software Engineering Conference (APSEC 2005), Taipei, Services: A Short Overview. SIGMOD Record, 34(2):86–
Taiwan, 2005. 95, 2005.
[19] B´ezivin, J., Hammoudi, S., Hammoudi, S., Lopes, [29] Frankel, D. and Parodi, J. Using Model-Driven
D. and Jouault, F. Applying MDA Approach for Web Architecture to Develop Web Services. Technical Report,
Service Platform. The 8th IEEE International Enterprise IONA Technologies PLC, April 2002
Distributed Object Computing Conference (EDOC’04),
2004.
306
Table 1 - Comparison Table Of UML based Modeling Approaches for WSC
Addresses Modeling
Service Addresses Addresses at Meta-
Use of Feedback / composition Use of Control Data model Tool Case
Technique Categorization Artifact Profile refinement patterns Ontology Conflicts Conflicts level Automatable Support Study
Medical
Use Case, Image
Castro et.al Behavior Based Activity Yes No No No No No Yes Yes Yes Management
307
Class, Gas
Skogan et.al Hybrid Activity Yes No Yes No Yes Yes No Yes Yes explosion
Class,
Thöne et.al Hybrid Activity Yes No No No Yes Yes No Yes Yes E-Business