ure 3 corresponding to process switch (!o[c], scope
(!o[a], [{(b, empty)}, (4, empty), {}]) ): a process
starting by a
switch such that one branch of this
switch starts with a scope process and another
branch does not activate a timing constraint is de-
tected as an ambiguous service. Indeed in one branch
there is an active clock whereas in the other there is
none.
In a discrete time framework, the previous (com-
plete) method (Haddad et al., 2004b) produces a
client. Indeed the time elapsing is symbolized by an
action (χ) and we implicitly work at a (discrete) TTS
level. Here we work at a higher level (the TA one).
Thus incompleteness is the price to pay in order to
obtain a more compact representation of the client.
5 CONCLUSION
We have shown that the interaction with a Web service
requires a theoretical development relative to its se-
mantics. Extending a previous work in discrete time,
we have proposed in this paper a dense time semantics
for BPEL: from the definition of a service - an abstract
process - we build a timed automaton corresponding
to its formal semantics. Then we have defined an
interaction relation between client and service con-
sidering them as timed transition systems. We have
also designed an algorithm synthetising a determinis-
tic timed automaton (the client) when this is possible
and detecting ambiguous service otherwise.
This approach is implemented in our framework
ICIS and will be soon reachable from the net. For sake
of simplicity, we have considered a perfect communi-
cation channel (no loss and no delay). We are cur-
rently working on the generalization of our approach
by including the specification of the channel charac-
teristics.
REFERENCES
Alur, R. and Dill, D. L. (1994). A theory of timed automata.
Theoretical Computer Science, 126(2):183–235.
Alur, R., Fix, L., and Henzinger, T. A. (1999). Event-clock
automata: a determinizable class of timed automata.
Theoretical Computer Science, 211(1–2):253–273.
Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein,
J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte,
S., Trickovic, I., and Weerawarana, S. (2003). Busi-
ness process execution language for web services.
Bergstra, J. and Klop, J. (1984). Process algebra for syn-
chronous communication. Information and Control,
60(1-3):109–137.
Foster, H., Uchitel, S., J.Magee, , and J.Kramer (2003).
Model-based verification of web service composi-
tions. In Proc. of. the 18th Int. Conf. on Automated
Software Eng.
Fu, X., Bultan, T., and Su, J. (2004a). Analysis of interact-
ing bpel web services. In Proc. of the 13th Interna-
tional World Wide Web Conference (WWW’04), USA.
ACM Press.
Fu, X., Bultan, T., and Su, J. (2004b). Wsat: A tool for
formal analysis of web services. In Proc. of the 16th
International Conference on Computer Aided Verifi-
cation (CAV’04).
Haddad, S., Melliti, T., Moreaux, P., and Rampacek, S.
(2004a). A dense time semantics for Web services
specifications languages. In Proc. of the 1st Int. Conf.
on Information & Communication Technologies: from
Theory to Applications (ICTTA’04), pages 647–648,
Damascus, Syria. IEEE France.
Haddad, S., Melliti, T., Moreaux, P., and Rampacek, S.
(2004b). Modelling web services interoperability. In
Proc. of the 6th Int. Conf. on Enterprise Information
Systems (ICEIS04), Porto, Portugal.
Hoare, C. (1985). Communicating Sequential Processes.
Prentice Hall, Englewood Cliffs, NJ, USA.
Juric, M. (2005). BPEL and Java. On line journal theserver-
side.com. http://www.theserverside.com/
articles/article.tss?l=BPELJava.
Juric, M., Sarang, P., and Mathew, B. (2005). Business
Process Execution Language for Web Services. Packt
Publishing.
Melliti, T. and Haddad, S. (2003). Synthesis of agents for
web services interaction. In Workshop Semantic Web
Services for Enterprise Application Integration and E-
Commerce of the Fifth International Conference on
Electronic Commerce, Pittsburgh, USA.
Milner, R. (1989). Communication and Concurrency.
Prentice-Hall, Englewood Cliffs, NJ, USA.
Nicollin, X. and Sifakis, J. (1994). The algebra of timed
processes, atp: theory and application. Inf. Comput.,
114(1):131–178.
Staab, S., van der Aalst, W., Benjamins, V., Sheth, A.,
Miller, J., Bussler, C., Maedche, A., Fensel, D., and
Gannon, D. (2003). Web services: Been there, done
that? IEEE Intelligent Systems, 18:72–85.
Thatte, S. (2001). Xlang: Web services for busi-
ness process design. World Wide Web page.
http://www.gotdotnet.com/team/xml/wsspecs/xlang-
c/default.htm.
Tidwell, D. (2000). Web services - the web’s next revolu-
tion. IBM developerWorks.
Turner, K. J. (2005). Formalising web services. In Proc.
of Formal Techniques for Networked and Distributed
Systems (FORTE 2005), volume LNCS 3731, pages
473–488, Taipei, Taiwan. Springer.
WSDL (2001). Web services description language (wsdl)
1.1. Technical report, World Wide Web Consortium.
http://www.w3.org/TR/wsdl.
ICEIS 2006 - SOFTWARE AGENTS AND INTERNET COMPUTING
26