Abstract
We present an approach to design and validate RESTful composite web services based on user scenarios. We use the Unified Modeling Language (UML) to specify the requirements, behavior and published resources of each web service. In our approach, a service can invoke other services and exhibit complex and timed behavior while still complying with the REST architectural style. We specify user scenarios via UML Sequence Diagrams. The service specifications are transformed into UPPAAL timed automata for verification and test generation. The service requirements are propagated to the UPPAAL timed automata during the transformation. Their reachability is verified in UPPAAL and they are used for computing coverage level during test generation. We validate our approach with a case study of a holiday booking web service.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Code coverage measurement for Python - coverage, v. 3.6 (2013). https://pypi.python.org/pypi/coverage (Retrieved: 20 August 2013)
Nomagic MagicDraw, August 2013. webpage at http://www.nomagic.com/products/magicdraw/
Arnold, D., Corriveau, J.P., Shi, W.: A scenario-driven approach to model-based testing (2010)
Behrmann, G., et al.: Uppaal 4.0. In: QEST 2006 Proceedings of the 3rd international conference on the Quantitative Evaluation of Systems, pp. 125–126. IEEE Computer Society, Washington, DC (2006)
Birgit Demuth, C.W.: Model and object verification by using Dresden OCL. In: Proceedings of the Russian-German Workshop Innovation Information Technologies: Theory and Practice, pp. 81–89 (2009)
Biswal, B., Nanda, P., Mohapatra, D.: A novel approach for scenario-based test case generation. In: International Conference on Information Technology, ICIT 2008, pp. 244–247, December 2008
Bozkurt, M., et al.: Testing web services: a survey. Department of Computer Science, Kings College London, Technical report TR-10-01 (2010)
Cambronero, M.E., et al.: Validation and verification of web services choreographies by using timed automata. J. Logic Algebraic Program. 80(1), 25–49 (2011)
Cambronero, M., et al.: WST: a tool supporting timed composite web services model transformation. Simulation 88(3), 349–364 (2012)
Dıaz, G., et al.: Model checking techniques applied to the design of web services. CLEI Electron. J. 10(2) (2007)
Enoiu, E.P., Sundmark, D., Pettersson, P.: Model-based test suite generation for function block diagrams using the uppaal model checker. In: Proceedings of the 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2013, pp. 158–167. IEEE Computer Society, Washington, DC (2013). http://dx.doi.org/10.1109/ICSTW.2013.27
Fielding, R.T.: Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California (2000)
Fu, X., et al.: Synchronizability of conversations among web services. IEEE Trans. Softw. Eng. 31(12), 1042–1055 (2005)
García-Fanjul, J., et al.: Generating test cases specifications for BPEL compositions of web services using SPIN. In: International Workshop on Web Services-Modeling and Testing (WS-MaTe 2006), p. 83 (2006)
Guermouche, N., Godart, C.: Timed model checking based approach for web services analysis. In: IEEE International Conference on Web Services, ICWS 2009, pp. 213–221. IEEE (2009)
Holovaty, A., Kaplan-Moss, J.: The definitive guide to Django: web development done right. Apress (2009)
Holzmann, G.J.: The model checker SPIN. IEEE Trans. Softw. Eng. 23(5), 279–295 (1997)
Huang, H., et al.: Automated model checking and testing for composite web services. In: Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, ISORC 2005, pp. 300–307. IEEE (2005)
Ibrahim, N., Al Ani, I.: Beyond functional verification of web services compositions. J. Emerg. Trends Comput. Inf. Sci. 4, 25–30 (2013). Special Issue
Koskinen, M., et al.: Combining model-based testing and continuous integration. In: Proceedings of the International Conference on Software Engineering Advances (ICSEA 2013). IARIA, October 2013 (to appear)
Lallali, M., et al.: Automatic timed test case generation for web services composition. In: IEEE Sixth European Conference on Web Services, ECOWS 2008, pp. 53–62. IEEE (2008)
Larsen, K., Li, S., Nielsen, B., Pusinskas, S.: Scenario-based analysis and synthesis of real-time systems using uppaal. In: Design, Automation Test in Europe Conference Exhibition (DATE), pp. 447–452, March 2010
Larsen, K.G., et al.: UPPAAL in a nutshell. Int. J. Softw. Tools Tech. Transf. (STTT) 1(1), 134–152 (1997)
Larsen, K.G., et al.: CISS, BRICS. UPPAAL Tron user manual. Aalborg University, Aalborg (2009)
Part, I., Peschke, M.: Design and validation of computer protocols (2003)
Rauf, I.: Design and Validation of Stateful Composite RESTful Web Services. Ph.D. thesis (2014)
Rauf, I., et al.: An integrated approach for designing and validating rest web service compositions. In: Monfort, V., Krempels, K.H. (eds.) 10th International Conference on Web Information Systems and Technologies, vol. 1, p. 104–115. SCITEPRESS Digital Library (2014)
Richardson, L., Ruby, S.: RESTful web services. O’Reilly (2008)
Rusli, H.M., et al.: Testing web services composition: a mapping study. Commun. IBIMA 2007, 34–48 (2011)
Zhang, G., Shi, H., Rong, M., Di, H.: Model checking for asynchronous web service composition based on XYZ/ADL. In: Gong, Z., Luo, X., Chen, J., Lei, J., Wang, F.L. (eds.) WISM 2011, Part II. LNCS, vol. 6988, pp. 428–435. Springer, Heidelberg (2011)
Zhu, X.Y., Tang, Z.S.: A temporal logic-based software architecture description language xyz/adl. J. Softw. 14(4), 713–720 (2003)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Rauf, I., Siavashi, F., Truscan, D., Porres, I. (2015). Scenario-Based Design and Validation of REST Web Service Compositions. In: Monfort, V., Krempels, KH. (eds) Web Information Systems and Technologies. WEBIST 2014. Lecture Notes in Business Information Processing, vol 226. Springer, Cham. https://doi.org/10.1007/978-3-319-27030-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-27030-2_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-27029-6
Online ISBN: 978-3-319-27030-2
eBook Packages: Computer ScienceComputer Science (R0)