×

zbMATH — the first resource for mathematics

Towards a process calculus for REST: current state of the art. (English) Zbl 1328.68018
Summary: SOA is a popular paradigm for building distributed systems that has gained a great recognition over past years. There are two main approaches to implementing SOA: SOAP-based and RESTful Web services. In order to address problems of modeling and verification of Web services, several process calculi have been proposed for SOAP-based Web services but none for the RESTful Web services based systems. This article is a comparative survey on existing process calculi for SOA systems, also the existing attempts to formalize REST systems are discussed. The aim of the article is to see how process calculi for SOAP-based systems deal with different aspects of their modeling domain, and whether their approaches can be used to model RESTful and ROA systems. Finally, basing on the survey, requirements for a new process calculus specific for REST are defined.
MSC:
68M11 Internet topics
68Q85 Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.)
Software:
Jolie; Linda; Orc; SLMC
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] van der Aalst, W.: Service mining: Using process mining to discover, check, and improve service behavior. IEEE Transactions on Services Computing 99(PrePrints), 1 (2012)
[2] van der Aalst, W.M., Ter Hofstede, A.H., Kiepuszewski, B., Barros, A.P.: Work- flow patterns. Distributed and parallel databases 14(1), 5-51 (2003)
[3] Baretto, C., Bullard, V.: Web Services Business Process Execution Lan- guage Version 2.0. http://docs.oasis-open.org/wsbpel/2.0/Primer/wsbpel-v2.0-Primer.html (2007)
[4] Bergstra, J.A.: Handbook of Process Algebra. Elsevier Science Inc., New York, NY, USA (2001) · Zbl 0971.00006
[5] Bettini, L., De Nicola, R., Loreti, M.: Implementing session centered calculi. In: Proceedings of the 10th International Conference on Coordination Models and Languages. pp. 17-32. COORDINATION’08, Springer-Verlag, Berlin, Heidelberg (2008), http://dl.acm.org/citation.cfm?id=1788954.1788956
[6] Boreale, M., Bruni, R., Caires, L., De Nicola, R., Lanese, I., Loreti, M., Martins, F., Montanari, U., Ravara, A., Sangiorgi, D., et al.: SCC: a service centered calculus. In: Web services and formal methods, pp. 38-57. Springer (2006)
[7] Boreale, M., Bruni, R., De Nicola, R., Loreti, M.: Sessions and pipelines for structured service programming. In: Formal Methods for Open Object-Based Distributed Systems, pp. 19-38. Springer (2008)
[8] Bravetti, M., Gilmore, S., Guidi, C., Tribastone, M.: Replicating web services for scalability. In: Trustworthy Global Computing, pp. 204-221. Springer (2008)
[9] Brzeziński, J., Danilecki, A., Flotyński, J., Kobusińska, A., Stroiński, A.: ROsWeL Workflow Language: A Declarative, Resource-oriented Approach. New Generation Computing 30(2-3), 141-164 (2012)
[10] Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Towards a formal framework for choreography. In: In Proc. of 3rd International Workshop on Dis- tributed and Mobile Collaboration (DMC 2005). IEEE Computer. pp. 107-112. Society Press (2005)
[11] Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Choreography and orchestration conformance for system design. In: Coordination Models and Lan- guages. pp. 63-81. Springer (2006)
[12] Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Choreography and orchestration conformance for system design. In: Coordination Models and Lan- guages. pp. 63-81. Springer (2006)
[13] Caires, L., Vieira, H.T.: SLMC: a tool for model checking concurrent systems against dynamical spatial logic specifications. In: Tools and Algorithms for the Construction and Analysis of Systems, pp. 485-491. Springer (2012)
[14] Dustdar, S., Gombotz, R., Baina, K.: Web Services Interaction Mining. Tech. Rep. TUV-1841-2004-16, Technical University of Vienna, Information Systems Institute, Distributed Systems Group (2004)
[15] Dwornikowski, D., Stroiński, A., Brzeziński, J.: Conformance Checking of Com- municating Resource Systems with RAs Calculus. In: Services Computing (SCC), 2015 IEEE International Conference on. pp. 759-764. IEEE (2015)
[16] Emerson, E.A., Clarke, E.M.: Characterizing correctness properties of parallel programs using fixpoints. Springer (1980) · Zbl 0456.68016
[17] Fielding, R., J., R.: Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content (2014)
[18] Fielding, R.T.: Architectural Styles and the Design of Network-based Software Architectures. Ph.D. thesis, University of California, Irvine (2000)
[19] Fokkink, W.: Introduction to Process Algebra. Springer (2000) · Zbl 0941.68087
[20] Gelernter, D.: Generative communication in Linda. ACM Transactions on Pro- gramming Languages and Systems (TOPLAS) 7(1), 80-112 (1985) · Zbl 0559.68030
[21] Guidi, C., Lucchi, R.: Mobility mechanisms in service oriented computing. In: In: Proc. of 8th International Conference on on Formal Methods for Open Ob- jectBased Distributed Systems. pp. 233-250. Springer (2006)
[22] Guidi, C., Lucchi, R., Gorrieri, R., Busi, N., Zavattaro, G.: SOCK: a calculus for service oriented computing. In: Service-Oriented Computing-ICSOC 2006, pp. 327-338. Springer (2006)
[23] Hadley, M.J.: Web application description language (wadl). Tech. rep., Sun Mi- crosystems,Inc., Mountain View, CA, USA (2006)
[24] He, H.: Implementing REST Web Services: Best Practices and Guidelines. http://www.xml.com/pub/a/2004/08/11/rest.html (2004)
[25] Hernández, A.G., García, M.N.M.: A formal definition of RESTful semantic web services. In: Proceedings of the First International Workshop on RESTful Design. pp. 39-45. ACM (2010)
[26] jolie-lang.org: JOLIE: homepage. http://www.jolie-lang.org/ (2013)
[27] JOpera.org: JOpera - process support for Web Services. http://www.jopera.org/ (2013)
[28] Juric B., M.: A Hands-on Introduction to BPEL (2006), oracle 2006
[29] Kitchin, D., Quark, A., Cook, W., Misra, J.: The Orc programming language. In: Formal Techniques for Distributed Systems, pp. 1-25. Springer (2009) · Zbl 1217.68049
[30] Klein, U., Namjoshi, K.S.: Formalization and Automated Verification of RESTful Behavior. In: Computer Aided Verification. pp. 541-556. Springer (2011)
[31] Kopecký, J., Gomadam, K., Vitvar, T.: hrests: An html microformat for de- scribing restful web services. In: Proceedings of the 2008 IEEE/WIC/ACM In- ternational Conference on Web Intelligence and Intelligent Agent Technology - Volume 01. pp. 619-625. WI-IAT ’08, IEEE Computer Society, Washington, DC, USA (2008), http://dx.doi.org/10.1109/WIIAT.2008.379
[32] Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web servuces (full version). Tech. rep., Univ. Firenze (2006) · Zbl 1187.68070
[33] Lapadula, A., Pugliese, R., Tiezzi, F.: A calculus for orchestration of web ser- vices. In: Programming Languages and Systems, pp. 33-47. Springer (2007) · Zbl 1187.68070
[34] Lathem, J., Gomadam, K., Sheth, A.P.: Sa-rest and (s)mashups: Adding se- mantics to restful services. In: Proceedings of the International Conference on Semantic Computing. pp. 469-476. ICSC ’07, IEEE Computer Society, Washing- ton, DC, USA (2007)
[35] Pautasso, C., Zimmermann, O., Leymann, F.: Restful web services vs. big’web services: making the right architectural decision. In: Proceedings of the 17th international conference on World Wide Web. pp. 805-814. ACM (2008)
[36] Plotkin, G.: A structural approach to operational semantics (1981)
[37] Pnueli, A.: The temporal logic of programs. In: Foundations of Computer Sci- ence, 1977., 18th Annual Symposium on. pp. 46-57. IEEE (1977)
[38] Richardson, L., Ruby, S.: RESTful Web Services. O’Reilly Media (2007)
[39] Sangiorgi, D.: Introduction to Bisimulation and Coinduction. Cambridge Uni- versity Press, New York, NY, USA (2011) · Zbl 1252.68008
[40] Sheth, A.P., Gomadam, K., Lathem, J.: Sa-rest: Semantically interoperable and easier-to-use services and mashups. IEEE Internet Computing 11(6), 91-94 (Nov 2007), http://dx.doi.org/10.1109/MIC.2007.133
[41] Stroiński, A., Dwornikowski, D., Brzeziński, J.: Resource Mining: Applying Pro- cess Mining to Resource-Oriented Systems. In: Business Information Systems, pp. 217-228. Springer International Publishing (2014)
[42] Stroiński, A., Dwornikowski, D., Brzeziński, J.: RESTful Web Service Min- ing: simple algorithm supporting resource-oriented systems. In: Web Services (ICWS), 2014 IEEE International Conference on. pp. 694-695. IEEE (2014)
[43] Van Glabbeek, R.J., Weijland, W.P.: Branching time and abstraction in bisim- ulation semantics. Journal of the ACM (JACM) 43(3), 555-600 (1996) · Zbl 0882.68085
[44] Vieira, H.T., Caires, L., Seco, J.C.: The Conversation Ccalculus: A model of Service Oriented Computation. Tech. Rep. TR-DI/FCT/UNL 6/07, Universidade Nova de Lisboa (2007) · Zbl 1133.68388
[45] Vieira, H.T., Caires, L., Seco, J.C.: The conversation calculus: A model of service-oriented computation. In: Programming Languages and Systems, pp. 269-283. Springer (2008) · Zbl 1133.68388
[46] Wu, X., Zhang, Y., Zhu, H., Zhao, Y., Sun, Z., Liu, P.: Formal Modeling and Analysis of the REST Architecture Using CSP. In: Web Services and Formal Methods, pp. 87-102. Springer (2013)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.