Abstract
In this chapter, we describe a model-based approach to the analysis of service interactions for web service choreography and their coordinated compositions. The move towards implementing web service choreography requires both design time verification and execution time validation of these service interactions to ensure that service implementations fulfil requirements of multiple interested partners before such compositions and choreographies are deployed for use. The approach employs several formal analysis techniques and perspectives, and applies these to the domain of web service choreographies and the compositional implementations that each role in these choreographies must satisfy. Our approach models the service interaction designs of choreographies (in the form of Message Sequence Charts), the service choreography descriptions (in WS-CDL – the Web Service Choreography Description Language) and the service composition processes (in BPEL4WS – the Business Process Language for Web Services). We translate models between UML and Web service specifications using the Finite State Process algebra notation. Where interactions deviate from choreography rules, the interaction sequences can be shown back to the user of the approach in an easy and accessible way, in the UML form. The described approach is supported by a suite of cooperating tools, formal modelling, simulation, animation and providing verification results from choreographed web service interactions. The tool suite and related papers are available for download at http://www.doc.ic.ac.uk/ltsa/eclipse/wsengineer.
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
Tony Andrews, Francisco Curbera, Hitesh Dholakia, Yaron Goland, Johannes Klein, Frank Leymann, Kevin Liu, Dieter Roller, Doug Smith, Satish Thatte, Ivana Trickovic, and Sanjiva Weerawarana. Business process execution language for web services version 1.1, 2004.
David Booth, Hugo Haas, Francis McCabe, Eric Newcomer, Michael Champion, Chris Ferris, and David Orchard. Web services architecture (ws-a) - w3c working group note 11 february 2004, 2004.
O. Bukhres and C.J. Crawley. Failure handling in transactional workflows utilizing corba 2.0. In 10th ERCIM Database Research Group Workshop on Heterogeneous Information Management, Prague, 1996.
Erik Christensen, Francisco Curbera, Greg Meredith, and Sanjiva Weerawarana. Web services description language (wsdl) 1.2, 2003.
Jonathan E. Cook. Software process analysis: integrating models and data. SIGSOFT Softw. Eng. Notes, 25(1):44, 2000.
Christophe Damas, Bernard Lambeau, Pierre Dupont, and Axel van Lamsweerde. Generating annotated behavior models from end-user scenarios. IEEE Trans. Software Eng., 31(12):1056–1073, 2005.
W. Damm and D. Harel. “LSCs: Breathing Life into Message Sequence Charts.”. FMSD, 19(1):45–80, 2001.
Howard Foster. A Rigorous Approach to Engineering Web Service Compositions. PhD thesis, Univeristy of London, Imperial College London, UK, Jan 2006.
Howard Foster, Sebastian Uchitel, Jeff Magee, and Jeff Kramer. Compatibility for web service choreography. In 3rd IEEE International Conference on Web Services (ICWS), San Diego, CA, 2004a. IEEE.
Howard Foster, Sebastian Uchitel, Jeff Magee, and Jeff Kramer. Tool support for model-based engineering of web service compositions. In 3rd IEEE International Conference on Web Services (ICWS2005), Orlando, FL, 2005. IEEE.
Howard Foster, Sebastian Uchitel, Jeff Magee, and Jeff Kramer. Ws-engineer:tool support for model-based engineering of web service compositions and choreography. In IEEE International Conference on Software Engineering (ICSE2006), Shanghai, China, 2006. IEEE.
Howard Foster, Sebastian Uchitel, Jeff Magee, Jeff Kramer, and Michael Hu. Using a rigorous approach for engineering web service compositions: A case study. In 2nd IEEE International Conference on Services Computing (SCC2005), Orlando, FL, 2005. IEEE.
Xiang Fu, Tevfik Bultan, and Jianswen Su. Wsat: A tool for formal analysis of web services. In 16th International Conference on Computer Aided Verification (CAV), Boston, MA, 2004.
Peter Graubmann. Describing interactions between msc components: the msc connectors. The International Journal of Computer and Telecommunications Networking, 42(3):323–342, 2003.
Robert J. Hall. Open modeling in multi-stakeholder distributed systems: Model-based requirements engineering for the 21st century. In Proc. First Workshop on the State of the Art in Automated Software Engineering,, U.C. Irvine Institute for Software Research, 2003.
Rachid Hamadi and Boualem Benatallah. A petri net-based model for web services composition. In 3rd IEEE International Conference On Web Services (ICWS), San Diego, CA, 2004.
C.A.R. Hoare. Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs, New Jersey, 1985.
Tad Hogg and Bernardo A. Huberman. Controlling chaos in distributed systems. IEEE Transactions on Systems Management and Cybernetics, 21:1325–1332, 1991.
ITU. Message sequence charts. Technical report, Recommendation Z.120, International Telecommunications Union. Telecommunication Standardisation Sector, 1996.
I Jacobson, J Rumbaugh, and G Booch. The Unified Software Development Process. Addison-Wesley, Harlow, UK, 1999.
Nickolas Kavantzas, David Burdett, Gregory Ritzinger, Tony Fletcher, and Yves Lafon. Web services choreography description language version 1.0 - w3c working draft 17 december 2004, 2004.
Kai Koskimies and Erkki Mükinen. Automatic synthesis of state machines from trace diagrams. Software Practice and Experience, 24(7):643–658, 1994.
I Krüger. Distributed system design with message sequence charts. PhD thesis, Technische Universität, 2000.
Ingolf Krüger. Capturing overlapping, triggered, and preemptive collaborations using mscs. In Mauro Pezzè, editor, FASE, volume 2621 of Lecture Notes in Computer Science, pages 387–402. Springer, 2003.
A. Larrson and I. Crnkovic. New challenges for configuration management. In Software Configuration Management Workshop, Toulouse, France, 1999.
Frank Leymann. Web services flow language (wsfl 1.0). Technical report, IBM Academy Of Technology, 2001.
E. C. Lupu and M. S. Sloman. Conflict analysis for management policies. In Proceedings of the 5th IFIP/IEEE International Symposium on Integrated Network management IM’97, San Diego, CA, 1997.
J. Magee and J. Kramer. Concurrency - State Models and Java Programs. John Wiley, 1999.
Jeff Magee, Jeff Kramer, and D. Giannakopoulou. Analysing the behaviour of distributed software architectures: a case study. In 5th IEEE Workshop on Future Trends of Distributed Computing Systems, Tunisia, 1997.
R. Milner. Communication and Concurrency. Prentice-Hall, London, 1989.
Shin Nakajima. Model-checking verification for reliable web service. In OOPSLA 2002 Workshop on Object-Oriented Web Services, Seattle, Washington, 2002.
Srini Narayanan and Shela A. Mcllraith. Simulation, verification and automated composition of web services. In Eleventh International World Wide Web Conference (WWW-11), Honolulu, Hawaii, 2002.
OMG. Unified modelling language. Technical report, Object Modelling Group, 2002.
C. Ouyang, W.v.d Aalst, S. Breutel, M. Dumas, A.t. Hofstede, and H. Verbeek. Formal semantics and analysis of control flow in ws-bpel (revised version) bpm-05-15. Technical report, BPMcenter. org, 2005.
G. Salalün, L. Bordeaux, and M. Schaerf. Describing and reasoning on web servicesusing process algebra. In 3rd IEEE International Conference On Web Services (ICWS), San Diego, CA, 2004.
S Uchitel, J. Magee, and J. Kramer. Detecting implied scenarios in message sequence chart specifications. In 9th European Software Engineering Conferece and 9th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (ESEC/FSE’01), Vienna, Austria, 2001.
S. Uchitel and J. Kramer. A workbench for synthesising behaviour models from scenarios. In the 23rd IEEE International Conference on Software Engineering (ICSE’01), Toronto, Canada, 2001.
S. Uchitel, J. Kramer, and J. Magee. “Incremental Elaboration of Scenario-Based Specifications and Behaviour Models using Implied Scenarios”. ACM TOSEM, 13(1), 2004.
Sebastian Uchitel, Robert Chatley, Jeff Kramer, and Jeff Magee. Fluent-based animation: exploiting the relation between goals and scenarios for requirements validation. Requirements Engineering Journal, 10(4), 2005.
A Valmari. The state explosion problem. In Lectures on Petri nets: advances in Petri nets, volume 6, Berlin,Heidelberg, 1998. Springer-Verlang.
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
Foster, H., Uchitel, S., Magee, J., Kramer, J. (2007). WS-Engineer: A Model-Based Approach to Engineering Web Service Compositions and Choreography. 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_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-72912-9_4
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)