Abstract
Conversations provide an intuitive and simple model for analyzing interactions among composite web services. A conversation is the global sequence of messages exchanged among the peers participating in a composite web service. Interactions in a composite web service can be analyzed by investigating the temporal properties of its conversations. Conversations can be specified in a top-down or bottom-up manner. In a top-down conversation specification, the set of conversationsis specified first, without specifying the individual behaviors of the peers. In a bottom-up conversation specification, on the other hand, behavior of each peer is specified separately and the conversation set is defined implicitly as the set of conversations generated by these peers. For both top-down and bottom-up specification approaches we are interested in the following: (1) Automatically verifying properties of conversations and (2) investigating the effect of asynchronous communication on the conversation behavior. These two issues are closely related since asynchronous communication with unbounded queues increases the difficulty of automated verification significantly.
In this chapter, we give an overview of our earlier results on analysis and verification of conversations. We discuss two analysis techniques for identifying bottom-up and top-down conversation specifications that can be automatically verified. Synchronizability analysis identifies bottom-up conversation specifications for which the conversation set remains the same for asynchronous and synchronous communication. Realizability analysis, on the other hand, identifies top-down conversation specifications which can be implemented by a set of finite state peers interacting with asynchronous communication. We discuss sufficient conditions for synchronizability and realizability analyses which are implemented in our Web Service Analysis Tool (WSAT). WSAT can be used for verification of LTL properties of both top-down and bottom-up conversation specifications.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
M. Abadi, L. Lamport, and P. Wolper. Realizable and unrealizable specifications of reactive systems. In Proc. of 16th Int. Colloq. on Automata, Languages and Programming, volume 372 of LNCS, pages 1–17. Springer Verlag, 1989.
L. D. Alfaro and T. A. Henzinger. Interface automata. In Proc. 9th Annual Symp. on Foundations of Software Engineering, pages 109–120, 2001.
R. Alur, K. Etessami, and M. Yannakakis. Inference of message sequence charts. In Proc. 22nd Int. Conf. on Software Engineering, pages 304–313, 2000.
R. Alur, K. Etessami, and M. Yannakakis. Realizability and verification of MSC graphs. In Proc. 28th Int. Colloq. on Automata, Languages, and Programming, pages 797–808, 2001.
Adam Bosworth. Loosely speaking. XML & Web Services Magazine, 3(4), April 2002.
Business Process Execution Language for Web Services (Version 1.0). http://www.ibm.com/developerworks/library/ws-bpel, 2002.
D. Brand and P. Zafiropulo. On communicating finite-state machines. Journal of the ACM, 30(2):323–342, 1983.
T. Bultan, X. Fu, R. Hull, and J. Su. Conversation specification: A new approach to design and analysis of e-service composition. In Proc. 12th Int. World Wide Web Conf., pages 403–410, May 2003.
T. Bultan, X. Fu, and J. Su. Analyzing conversations of web services. IEEE Internet Computing, 10(1):18–25, 2006.
M. Chiodo, P. Giusto, A. Jurecska, L. Lavagno, H. Hsieh, and A. San giovanni Vincentelli. A formal specification model for hardware/software codesign. In Proc. Intl. Workshop on Hardware-Software Codesign, October 1993.
E.M. Clarke, O. Grumberg, and D. A. Peled. Model Checking. The MIT Press, Cambridge, Massachusetts, 1999.
H. Foster, S. Uchitel, J. Magee, and J. Kramer. Model-based verification of web service compositions. In Proc. 18th IEEE Int. Conf. on Automated Software Engineering Conference, pages 152–163, 2003.
X. Fu. Formal Specification and Verification of Asynchronously Communicating Web Services. PhD thesis, University of California, Santa Barbara, 2004.
X. Fu, T. Bultan, and J. Su. Conversation protocols: A formalism for specification and verification of reactive electronic services. In Proc. 8th Int. Conf. on Implementation and Application of Automata, volume 2759 of LNCS, pages 188–200, 2003.
X. Fu, T. Bultan, and J. Su. Analysis of interacting web services. In Proc. 13th Int. World Wide Web Conf., pages 621 – 630, New York, May 2004.
X. Fu, T. Bultan, and J. Su. Conversation protocols: A formalism for specification and analysis of reactive electronic services. Theoretical Computer Science, 328(1-2):19–37, November 2004.
X. Fu, T. Bultan, and J. Su. Model checking XML manipulating software. In Proc. 2004 ACM/SIGSOFT Int. Symp. on Software Testing and Analysis, pages 252–262, July 2004.
X. Fu, T. Bultan, and J. Su. Realizability of conversation protocols with message contents. In Proc. 2004 IEEE Int. Conf. on Web Services, pages 96–203, July 2004.
X. Fu, T. Bultan, and J. Su. WSAT: A tool for formal analysis of web service compositions. In Proc. 16th Int. Conf. on Computer Aided Verification, volume 3114 of LNCS, pages 510–514, July 2004.
X. Fu, T. Bultan, and J. Su. Realizability of conversation protocols with message contents. International Journal of Web Services Research (JWSR), 2(4):68–93, 2005.
X. Fu, T. Bultan, and J. Su. Synchronizability of conversations among web services. IEEE Transactions on Software Engineering, 31(12):1042–1055, December 2005.
J. E. Hanson, P. Nandi, and S. Kumaran. Conversation support for business process integration. In Proc. of 6th IEEE Int. Enterprise Distributed Object Computing Conference, 2002.
C. A. R. Hoare. Communicating sequential processes. Communications of the ACM, 21(8):666–677, 1978.
G. J. Holzmann. The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Boston, Massachusetts, 2003.
IBM. Conversation Support Project. http://www.research.ibm.com/convsupport/.
Java Message Service. http://java.sun.com/products/jms/.
G. Kahn. The semantics of a simple language for parallel programming. In Proc. IFIP 74, pages 471–475. North-Holland, 1974.
Raman Kazhamiakin, Marco Pistore, and Luca Santuari. Analysis of communication models in web service compositions. In Proc. of 15th World Wide Web Conference (WWW), pages 267–276, 2006.
N. Lynch and M. Tuttle. Hierarchical correctness proofs for distributed algorithms. In Proc. 6th ACM Symp. Principles of Distributed Computing, pages 137–151, 1987.
R. Milner. Communicating and Mobile Systems: the $Ï€$-Calculus. Cambridge University Press, 1999.
Message Sequence Chart (MSC). ITU-T, Geneva Recommendation Z.120, 1994.
Microsoft Message Queuing Service. http://www.microsoft.com/windows2000/ technologies/communications/msmq/default.mspx.
Shin Nakajima. Model checking verification for reliable web service. In Proc. of the 1st International Symposium on Cyber Worlds (CW 2002), pages 378–385, November 2002.
S. Narayanan and S. McIlraith. Simulation, verification and automated composition of web services. In Proc. International World Wide Web Conference (WWW), 2002.
A. Pnueli and R. Rosner. On the synthesis of a reactive module. In Proc. 16th ACM Symp. Principles of Programming Languages, pages 179–190, 1989.
A. Pnueli and R. Rosner. On the synthesis of an asynchronous reactive module. In Proc. 16th Int. Colloq. on Automata, Languages, and Programs, volume 372 of LNCS, pages 652–671, 1989.
S. K. Rajamani and J. Rehof. A behavioral module system for the pi-calculus. In Proc. 8th Static Analysis Symposium, pages 375–394, July 2001.
S. Uchitel, J. Kramer, and J. Magee. Incremental elaboration of scenario-based specifications and behavior models using implied scenarios. ACM Transactions on Software Engineering and Methodology, 13(1):37–85, 2004.
Web Service Analysis Tool (WSAT). http://www.cs.ucsb.edu/ su/WSAT.
Web Service Choreography Description Language (WS-CDL). http://www.w3.org/TR/ws-cdl-10/, 2005.
Web Services Description Language (WSDL) 1.1. http://www.w3.org/TR/wsdl, March 2001.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Bultan, T., Fu, X., Su, J. (2007). Analyzing Conversations: Realizability, Synchronizability, and Verification. In: Baresi, L., Nitto, E.D. (eds) Test and Analysis of Web Services. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72912-9_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-72912-9_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-72911-2
Online ISBN: 978-3-540-72912-9
eBook Packages: Computer ScienceComputer Science (R0)