From Implicit to Explicit Transitions in Business Protocols: A Semantic-Based Transformation

From Implicit to Explicit Transitions in Business Protocols: A Semantic-Based Transformation

Emad Elabd (Department of Computers and Information, Menoufia University, Shebin El Kom, Egypt), Emmanuel Coquery (, LIRIS, Department of Computer Sciences, University Claude Bernard Lyon 1, Villeurbanne, France) and Mohand-Said Hacid (LIRIS, Department of Computer Sciences, University Claude Bernard Lyon 1, Villeurbanne, France)
Copyright: © 2012 |Pages: 27
DOI: 10.4018/jwsr.2012100104
OnDemand PDF Download:
No Current Special Offers


Modeling Web services is a major step towards their automated analysis. One of the important parameters in this modeling, for the majority of Web services, is the time. A Web service can be presented by its behavior which can be described by a business protocol representing the possible sequences of message exchanges. To the best of the authors’ knowledge, automated analysis of timed Web services (e.g., compatibility and replaceability checking) is very difficult and in some cases it is not possible with the presence of implicit transitions (internal transitions) based on time constraints. The semantics of the implicit transitions is the source of this difficulty because most of well-known modeling tools do not express this semantics (e.g., epsilon transition on the timed automata has a different semantics). This paper presents an approach for converting any protocol containing implicit transitions to an equivalent one without implicit transitions before performing analysis.
Article Preview


Web Services and Business Protocols

Web services are loosely coupled applications designed to support interoperable machine-to-machine interaction over a network. It has an interface described using XML based technology for representation and communication across the Internet (specifically Web service description language WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards. Web services technology is emerging as main pillar of service-oriented architecture (SOA) (Papazoglou & van den Heuvel 2007) which is characterized by a loosely coupled nature. Therefore, all the information about the service that is needed by the client should be included in service description in order to allow the client to correctly interact with it. A business protocol of a Web service, that is the possible message exchange sequences supported by the service, should be included in the service descriptions (see, e.g., Benatallah, Casati et al., 2005). One of these aspects of information is the time. Lately, analysis of complex Web services is concerned with adding time as a major concept. For most of Web services, time is needed in many situations, e.g., time-out for receiving a message from the consumer. For instance, some Web services are made up of sessions having an associated time-out, as those that allow a user to check her/his bank account, or to participate to an online auction.

A business protocol (BP) of a service represents the possible sequences of message exchanges between this service and the other services. This protocol model is presented using a state chart which is a suitable model for describing behaviors. Figure 1 shows an example of a business protocol for a service providing access to some resources based on specific card. In this model, states represent the various stages that a service may go through while transitions are triggered when a message is received or sent. The positive polarity indicates that the message is an incoming message and the negative polarity indicates that the message is an outgoing message. There is a unique initial state (e.g., start) and one or more final states (e.g., FinishSUC and Fail). A business protocol displays two types of transactions: explicit transition which expresses the change of the service from one state to another state according to an interaction with the service by sending or receiving a message(e.g., the transition between the start state and the Logged state which has the login(+) message), and implicit transition which is triggered by timeout and expresses the change from one state to another without an interacting action with the other service (i.e., there is no message sent or received, e.g., the transition between the state CardWait and the state FailureACK with the time constraint T=50). Based on this definition of the explicit transition, the messages are presented with the explicit transitions only, and the implicit transitions are attached with time constraints. Time in this model is presented by clocks in which each clock is related to a transition. The number of clocks is based on the number of transitions which are used in time constraints by checking its time of triggering.

Figure 1.

A Web service business protocol P with implicit and explicit transitions


For instance, the clock T is related to the transition between the Logged state and the Card-Wait state, and reset when this transition is triggered. The implicit transition between the CardWait state and the FailureACK state has the constraint T=50, which means that this transition must be triggered when the value of the clock T equals to 50 when the service is in the state CardWait. There is another type of time constraints on the explicit transition which restrict the triggering of the transition to a specific time windows. For instance, the time constraint T1[0,4[ on the transition between the states CardVerfiy and FinishSUC means that the ResourceSent message can be sent only in the time interval from zero to four after the triggering of the transition T1.

Complete Article List

Search this Journal:
Volume 19: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 18: 4 Issues (2021)
Volume 17: 4 Issues (2020)
Volume 16: 4 Issues (2019)
Volume 15: 4 Issues (2018)
Volume 14: 4 Issues (2017)
Volume 13: 4 Issues (2016)
Volume 12: 4 Issues (2015)
Volume 11: 4 Issues (2014)
Volume 10: 4 Issues (2013)
Volume 9: 4 Issues (2012)
Volume 8: 4 Issues (2011)
Volume 7: 4 Issues (2010)
Volume 6: 4 Issues (2009)
Volume 5: 4 Issues (2008)
Volume 4: 4 Issues (2007)
Volume 3: 4 Issues (2006)
Volume 2: 4 Issues (2005)
Volume 1: 4 Issues (2004)
View Complete Journal Contents Listing