skip to main content
10.1145/1367497.1367606acmconferencesArticle/Chapter ViewAbstractPublication PageswwwConference Proceedingsconference-collections
research-article

Restful web services vs. "big"' web services: making the right architectural decision

Published:21 April 2008Publication History

ABSTRACT

Recent technology trends in the Web Services (WS) domain indicate that a solution eliminating the presumed complexity of the WS-* standards may be in sight: advocates of REpresentational State Transfer (REST) have come to believe that their ideas explaining why the World Wide Web works are just as applicable to solve enterprise application integration problems and to simplify the plumbing required to build service-oriented architectures. In this paper we objectify the WS-* vs. REST debate by giving a quantitative technical comparison based on architectural principles and decisions. We show that the two approaches differ in the number of architectural decisions that must be made and in the number of available alternatives. This discrepancy between freedom-from-choice and freedom-of-choice explains the complexity difference perceived. However, we also show that there are significant differences in the consequences of certain decisions in terms of resulting development and maintenance costs. Our comparison helps technical decision makers to assess the two integration styles and technologies more objectively and select the one that best fits their needs: REST is well suited for basic, ad hoc integration scenarios, WS-* is more flexible and addresses advanced quality of service requirements commonly occurring in enterprise computing.

References

  1. G. Alonso, F. Casati, H. Kuno, and V. Machiraju. Web Services: Concepts, Architectures, Applications. Springer, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Apache. Axis2. http://ws.apache.org/axis2/.Google ScholarGoogle Scholar
  3. L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison Wesley, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. T. Berners-Lee. Cool URIs don't change, 1998. http://www.w3.org/Provider/Style/URI.html.Google ScholarGoogle Scholar
  5. T. Berners-Lee, R. Fielding, and L. Masinter. Uniform Resource Identifier (URI): generic syntax. IETF RFC 3986, January 2005.Google ScholarGoogle Scholar
  6. A. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems (TOCS), 2:39--59, February 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. Bussler. B2B Integration. Springer, June 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. W. R. Cook and J. Barfield. Web services versus distributed objects: A case study of performance and interface design. In Proc. of the IEEE International Conference on Web Services (ICWS2006), Chicago, USA, September 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. F. P. Coyle. XML, Web Services, and the Data Revolution. Addison-Wesley, May 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Crockford. JSON: The fat-free alternative to XML. In Proc. of XML 2006, Boston, USA, December 2006. http://www.json.org/fatfree.html.Google ScholarGoogle Scholar
  11. Eclipse. Web Tools Platform (WTP) Project. http://www.eclipse.org/webtools/.Google ScholarGoogle Scholar
  12. R. Fielding. Architectural Styles and The Design of Network-based Software Architectures. PhD thesis, University of California, Irvine, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. Fielding. waka: A replacement for HTTP. In APACHECON US 2002, November 2002. http://www.apache.org/~fielding/waka/.Google ScholarGoogle Scholar
  14. R. Fielding. A little REST and Relaxation. The International Conference on Java Technology (JAZOON07), Zurich, Switzerland, June 2007. http://www.parleys.com/display/PARLEYS/A\%20little\%20REST\%20and\%20Relaxation.Google ScholarGoogle Scholar
  15. D. Florescu, A. Gruenhagen, and D. Kossmann. XL: An XML programming language for Web service specification and composition. In Proc. of the 11th International World Wide Web Conference (WWW2002), Honululu, Hawaii, USA, May 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. K. Gottschalk, S. Graham, H. Kreger, and J. Snell. Introduction to web services architecture. IBM Systems Journal, 41(2):170--177, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Haas. Reconciling Web services and REST services (Keynote Address). In Proc. of the 3rd IEEE European Conference on Web Services (ECOWS 2005), Växjö, Sweden, November 2005.Google ScholarGoogle Scholar
  18. J. Hadley. Web Application Description Language (WADL), 2006. http://wadl.dev.java.net/.Google ScholarGoogle Scholar
  19. D. Hansson. Keynote. In Canada on Rails, January 2006.Google ScholarGoogle Scholar
  20. G. Hohpe. Enterprise Integration Patterns. Addison-Wesley, October 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. IETF. HTTP, 1999. http://www.ietf.org/rfc/rfc2616.Google ScholarGoogle Scholar
  22. E. Landre and H. Wesenberg. Rest versus soap: as architectural style for web services. In 5th International OOPSLA Workshop on SOA & Web services Best Practices, 2007.Google ScholarGoogle Scholar
  23. K. Laskey, P. L. Hègaret, and E. Newcomer, editors. Workshop on Web of Services for Enterprise Computing. W3C, February 2007. http://www.w3.org/2007/01/wos-ec-program.html.Google ScholarGoogle Scholar
  24. B. Meyer. Applying "design by contract". IEEE Computer, 25(10):40--51, October 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. R. Monson-Haefel. J2EE Web Services. A-W., 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. J. Nielsen. URI as UI, March 1999. http://www.useit.com/alertbox/990321.html.Google ScholarGoogle Scholar
  27. OASIS. Organization for the Advancement of Structured Information Standards. http://www.oasis-open.org/.Google ScholarGoogle Scholar
  28. OASIS. Web Services Resources Framework (WSRF 1.2), April 2006. http://www.oasis-open.org/committees/wsrf/.Google ScholarGoogle Scholar
  29. OASIS. Web Services Business Process Execution Language, April 2007. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf.Google ScholarGoogle Scholar
  30. H. Overdick. Towards resource-oriented bpel. In 2nd ECOWS Workshop on Emerging Web Services Technology, November 2007.Google ScholarGoogle Scholar
  31. C. Pautasso and G. Alonso. The JOpera visual composition language. Journal of Visual Languages and Computing (JVLC), 16(1-2):119--152, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Programmable Web. API Dashboard, 2007. http://www.programmableweb.com/apis.Google ScholarGoogle Scholar
  33. L. Richardson and S. Ruby. RESTful Web Services. O'Reilly, May 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. P. Seebach. Making URLs accessible, June 2001. http://www.ibm.com/developerworks/library/us-cranky8.html.Google ScholarGoogle Scholar
  35. R. Sessions. Fuzzy boundaries: Objects, components, and web services. ACM Queue, 2(9), December/January 2004-2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. J. Snell. Resource-oriented vs. activity-oriented Web services. IBM developerWorks, October 2004. http://www-128.ibm.com/developerworks/webservices/library/ws-restvsoap/.Google ScholarGoogle Scholar
  37. T. Takase and K. Tajima. Efficient Web services message exchange by SOAP bundling framework. In Proc. of 11th IEEE International EDOC Conference (EDOC 2007), October 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. S. Todd, F. Parr, and M. Conner. A Primer for HTTPR, July 2001. http://www.ibm.com/developerworks/webservices/library/ws-phtt/.Google ScholarGoogle Scholar
  39. J. Tyree and A. Akerman. Architecture decisions: Demystifying architecture. IEEE Software, 22(2):19--27, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. S. Vinoski. Serendipitous reuse. IEEE Internet Computing, 12(1):84--87, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. S. Vinoski. Putting the "Web" into Web services: Interaction models, part 1: Current practice. IEEE Internet Computing, 6(3):89--91, May-June 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. S. Vinoski. Putting the "Web" into Web services: Interaction models, part 2. IEEE Internet Computing, 6(4):90--92, July 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. W. Vogels. Web services are not distributed objects. IEEE Internet Computing, 7(6):59--66, Nov-Dec 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. W3C. Web Services Addressing, May 2006. http://www.w3.org/2002/ws/addr/.Google ScholarGoogle Scholar
  45. S. Weerawarana, F. Curbera, F. Leymann, T. Storey, and D. Ferguson. Web Services Platform Architecture. Prentice Hall, March 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. C. Werner, C. Buschmann, T. Jaecker, and S. Fischer. Enhanced transport bindings for efficient SOAP messaging. In Proc. of the 3rd IEEE International Conference on Web Services (ICWS'05), Orlando, FL, USA, July 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. WS-I. Web Services Interoperability. http://www.ws-i.org.Google ScholarGoogle Scholar
  48. J. Yu, B. Benatallah, R. Saint-Paul, F. Casati, F. Daniel, and M. Matera. A Framework for Rapid Integration of Presentation Components. In Proc. of the 16th International World Wide Web Conference. Banff, Canada, May 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. A. Zarras. A comparison for middleware infrastructures. Journal of Object Technology, 3(5):103--123, May-June 2004.Google ScholarGoogle ScholarCross RefCross Ref
  50. O. Zimmerman, M. Tomlinson, and S. Peuser. Perspectives on Web Services: Applying SOAP, WSDL, and UDDI to Real-World Projects. Springer, September 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. O. Zimmermann, J. Grundler, S. Tai, and F. Leymann. Architectural decisions and patterns for transactional worlflows in SOA. In Proc. of the 5th International Conference on Service-Oriented Computing, Vienna, Austria, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. O. Zimmermann, T. Gschwind, J. Kuester, F. Leymann, and N. Schuster. Reusable architectural decision models for enterprise application development. In Quality of Software Architecture (QoSA) 2007, Boston, USA, July 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. O. Zimmermann, J. Koehler, and F. Leymann. Architectural decision models as micro-methodology for service-oriented analysis and design. In SEMSOA Workshop, Hannover, Germany, May 2007.Google ScholarGoogle Scholar
  54. O. Zimmermann, M. Milinski, M. Craes, and F. Oellermann. Second generation web services-oriented architecture in production in the finance industry. In OOPSLA Conference Companion, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. M. zur Muehlen, J. V. Nickerson, and K. D. Swenson. Developing Web services choreography standards - the case of REST vs. SOAP. Decision Support Systems, 40(1):9--29, July 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Restful web services vs. "big"' web services: making the right architectural decision

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Conferences
                WWW '08: Proceedings of the 17th international conference on World Wide Web
                April 2008
                1326 pages
                ISBN:9781605580852
                DOI:10.1145/1367497

                Copyright © 2008 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 21 April 2008

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

                Acceptance Rates

                Overall Acceptance Rate1,899of8,196submissions,23%

                Upcoming Conference

                WWW '24
                The ACM Web Conference 2024
                May 13 - 17, 2024
                Singapore , Singapore

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader