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.
- G. Alonso, F. Casati, H. Kuno, and V. Machiraju. Web Services: Concepts, Architectures, Applications. Springer, 2004. Google ScholarDigital Library
- Apache. Axis2. http://ws.apache.org/axis2/.Google Scholar
- L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison Wesley, 2003. Google ScholarDigital Library
- T. Berners-Lee. Cool URIs don't change, 1998. http://www.w3.org/Provider/Style/URI.html.Google Scholar
- T. Berners-Lee, R. Fielding, and L. Masinter. Uniform Resource Identifier (URI): generic syntax. IETF RFC 3986, January 2005.Google Scholar
- A. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems (TOCS), 2:39--59, February 1984. Google ScholarDigital Library
- C. Bussler. B2B Integration. Springer, June 2003. Google ScholarDigital Library
- 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 ScholarDigital Library
- F. P. Coyle. XML, Web Services, and the Data Revolution. Addison-Wesley, May 2002. Google ScholarDigital Library
- 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 Scholar
- Eclipse. Web Tools Platform (WTP) Project. http://www.eclipse.org/webtools/.Google Scholar
- R. Fielding. Architectural Styles and The Design of Network-based Software Architectures. PhD thesis, University of California, Irvine, 2000. Google ScholarDigital Library
- R. Fielding. waka: A replacement for HTTP. In APACHECON US 2002, November 2002. http://www.apache.org/~fielding/waka/.Google Scholar
- 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 Scholar
- 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 ScholarDigital Library
- K. Gottschalk, S. Graham, H. Kreger, and J. Snell. Introduction to web services architecture. IBM Systems Journal, 41(2):170--177, 2002. Google ScholarDigital Library
- 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 Scholar
- J. Hadley. Web Application Description Language (WADL), 2006. http://wadl.dev.java.net/.Google Scholar
- D. Hansson. Keynote. In Canada on Rails, January 2006.Google Scholar
- G. Hohpe. Enterprise Integration Patterns. Addison-Wesley, October 2003. Google ScholarDigital Library
- IETF. HTTP, 1999. http://www.ietf.org/rfc/rfc2616.Google Scholar
- 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 Scholar
- 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 Scholar
- B. Meyer. Applying "design by contract". IEEE Computer, 25(10):40--51, October 1992. Google ScholarDigital Library
- R. Monson-Haefel. J2EE Web Services. A-W., 2003. Google ScholarDigital Library
- J. Nielsen. URI as UI, March 1999. http://www.useit.com/alertbox/990321.html.Google Scholar
- OASIS. Organization for the Advancement of Structured Information Standards. http://www.oasis-open.org/.Google Scholar
- OASIS. Web Services Resources Framework (WSRF 1.2), April 2006. http://www.oasis-open.org/committees/wsrf/.Google Scholar
- OASIS. Web Services Business Process Execution Language, April 2007. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf.Google Scholar
- H. Overdick. Towards resource-oriented bpel. In 2nd ECOWS Workshop on Emerging Web Services Technology, November 2007.Google Scholar
- C. Pautasso and G. Alonso. The JOpera visual composition language. Journal of Visual Languages and Computing (JVLC), 16(1-2):119--152, 2005. Google ScholarDigital Library
- Programmable Web. API Dashboard, 2007. http://www.programmableweb.com/apis.Google Scholar
- L. Richardson and S. Ruby. RESTful Web Services. O'Reilly, May 2007. Google ScholarDigital Library
- P. Seebach. Making URLs accessible, June 2001. http://www.ibm.com/developerworks/library/us-cranky8.html.Google Scholar
- R. Sessions. Fuzzy boundaries: Objects, components, and web services. ACM Queue, 2(9), December/January 2004-2005. Google ScholarDigital Library
- J. Snell. Resource-oriented vs. activity-oriented Web services. IBM developerWorks, October 2004. http://www-128.ibm.com/developerworks/webservices/library/ws-restvsoap/.Google Scholar
- 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 ScholarDigital Library
- S. Todd, F. Parr, and M. Conner. A Primer for HTTPR, July 2001. http://www.ibm.com/developerworks/webservices/library/ws-phtt/.Google Scholar
- J. Tyree and A. Akerman. Architecture decisions: Demystifying architecture. IEEE Software, 22(2):19--27, 2005. Google ScholarDigital Library
- S. Vinoski. Serendipitous reuse. IEEE Internet Computing, 12(1):84--87, 2008. Google ScholarDigital Library
- 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 ScholarDigital Library
- S. Vinoski. Putting the "Web" into Web services: Interaction models, part 2. IEEE Internet Computing, 6(4):90--92, July 2002. Google ScholarDigital Library
- W. Vogels. Web services are not distributed objects. IEEE Internet Computing, 7(6):59--66, Nov-Dec 2003. Google ScholarDigital Library
- W3C. Web Services Addressing, May 2006. http://www.w3.org/2002/ws/addr/.Google Scholar
- S. Weerawarana, F. Curbera, F. Leymann, T. Storey, and D. Ferguson. Web Services Platform Architecture. Prentice Hall, March 2005. Google ScholarDigital Library
- 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 ScholarDigital Library
- WS-I. Web Services Interoperability. http://www.ws-i.org.Google Scholar
- 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 ScholarDigital Library
- A. Zarras. A comparison for middleware infrastructures. Journal of Object Technology, 3(5):103--123, May-June 2004.Google ScholarCross Ref
- O. Zimmerman, M. Tomlinson, and S. Peuser. Perspectives on Web Services: Applying SOAP, WSDL, and UDDI to Real-World Projects. Springer, September 2003. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
Index Terms
- Restful web services vs. "big"' web services: making the right architectural decision
Recommendations
RESTful web services: principles, patterns, emerging technologies
WWW '10: Proceedings of the 19th international conference on World wide webRecent technology trends in Web services indicate that a solution eliminating the perceived complexity of the WS-* standard technology stack may be in sight: advocates of Representational State Transfer (REST) have come to believe that their ideas ...
Web Services: E-Commerce Partner Integration
Online retailers have used a succession of technologies to showcase their products and services on the Web. That experience gives them a greater insight into what it is that the latest technology, Web services, can offer them. This article gives a brief ...
Daios: Efficient Dynamic Web Service Invocation
Systems based on the service-oriented architecture (SOA) paradigm must be able to bind to arbitrary Web services at runtime. However, current service frameworks are predominantly used through precompiled service-access components, which are invariably ...
Comments