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

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

Published: 21 April 2008 Publication 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.
[2]
Apache. Axis2. http://ws.apache.org/axis2/.
[3]
L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison Wesley, 2003.
[4]
T. Berners-Lee. Cool URIs don't change, 1998. http://www.w3.org/Provider/Style/URI.html.
[5]
T. Berners-Lee, R. Fielding, and L. Masinter. Uniform Resource Identifier (URI): generic syntax. IETF RFC 3986, January 2005.
[6]
A. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems (TOCS), 2:39--59, February 1984.
[7]
C. Bussler. B2B Integration. Springer, June 2003.
[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.
[9]
F. P. Coyle. XML, Web Services, and the Data Revolution. Addison-Wesley, May 2002.
[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.
[11]
Eclipse. Web Tools Platform (WTP) Project. http://www.eclipse.org/webtools/.
[12]
R. Fielding. Architectural Styles and The Design of Network-based Software Architectures. PhD thesis, University of California, Irvine, 2000.
[13]
R. Fielding. waka: A replacement for HTTP. In APACHECON US 2002, November 2002. http://www.apache.org/~fielding/waka/.
[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.
[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.
[16]
K. Gottschalk, S. Graham, H. Kreger, and J. Snell. Introduction to web services architecture. IBM Systems Journal, 41(2):170--177, 2002.
[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.
[18]
J. Hadley. Web Application Description Language (WADL), 2006. http://wadl.dev.java.net/.
[19]
D. Hansson. Keynote. In Canada on Rails, January 2006.
[20]
G. Hohpe. Enterprise Integration Patterns. Addison-Wesley, October 2003.
[21]
IETF. HTTP, 1999. http://www.ietf.org/rfc/rfc2616.
[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.
[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.
[24]
B. Meyer. Applying "design by contract". IEEE Computer, 25(10):40--51, October 1992.
[25]
R. Monson-Haefel. J2EE Web Services. A-W., 2003.
[26]
J. Nielsen. URI as UI, March 1999. http://www.useit.com/alertbox/990321.html.
[27]
OASIS. Organization for the Advancement of Structured Information Standards. http://www.oasis-open.org/.
[28]
OASIS. Web Services Resources Framework (WSRF 1.2), April 2006. http://www.oasis-open.org/committees/wsrf/.
[29]
OASIS. Web Services Business Process Execution Language, April 2007. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf.
[30]
H. Overdick. Towards resource-oriented bpel. In 2nd ECOWS Workshop on Emerging Web Services Technology, November 2007.
[31]
C. Pautasso and G. Alonso. The JOpera visual composition language. Journal of Visual Languages and Computing (JVLC), 16(1-2):119--152, 2005.
[32]
Programmable Web. API Dashboard, 2007. http://www.programmableweb.com/apis.
[33]
L. Richardson and S. Ruby. RESTful Web Services. O'Reilly, May 2007.
[34]
P. Seebach. Making URLs accessible, June 2001. http://www.ibm.com/developerworks/library/us-cranky8.html.
[35]
R. Sessions. Fuzzy boundaries: Objects, components, and web services. ACM Queue, 2(9), December/January 2004-2005.
[36]
J. Snell. Resource-oriented vs. activity-oriented Web services. IBM developerWorks, October 2004. http://www-128.ibm.com/developerworks/webservices/library/ws-restvsoap/.
[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.
[38]
S. Todd, F. Parr, and M. Conner. A Primer for HTTPR, July 2001. http://www.ibm.com/developerworks/webservices/library/ws-phtt/.
[39]
J. Tyree and A. Akerman. Architecture decisions: Demystifying architecture. IEEE Software, 22(2):19--27, 2005.
[40]
S. Vinoski. Serendipitous reuse. IEEE Internet Computing, 12(1):84--87, 2008.
[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.
[42]
S. Vinoski. Putting the "Web" into Web services: Interaction models, part 2. IEEE Internet Computing, 6(4):90--92, July 2002.
[43]
W. Vogels. Web services are not distributed objects. IEEE Internet Computing, 7(6):59--66, Nov-Dec 2003.
[44]
W3C. Web Services Addressing, May 2006. http://www.w3.org/2002/ws/addr/.
[45]
S. Weerawarana, F. Curbera, F. Leymann, T. Storey, and D. Ferguson. Web Services Platform Architecture. Prentice Hall, March 2005.
[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.
[47]
WS-I. Web Services Interoperability. http://www.ws-i.org.
[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.
[49]
A. Zarras. A comparison for middleware infrastructures. Journal of Object Technology, 3(5):103--123, May-June 2004.
[50]
O. Zimmerman, M. Tomlinson, and S. Peuser. Perspectives on Web Services: Applying SOAP, WSDL, and UDDI to Real-World Projects. Springer, September 2003.
[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.
[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.
[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.
[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.
[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.

Cited By

View all
  • (2024)Best Practices for Designing Scalable REST APIs in Cloud EnvironmentsJournal of Sustainable Solutions10.36676/j.sust.sol.v1.i4.261:4(48-71)Online publication date: 20-Oct-2024
  • (2024)SmartEdge: Towards Configuring Complex Applications in Mobile Edge ComputingProceedings of the 2nd International Workshop on Middleware for the Computing Continuum10.1145/3702635.3703901(13-18)Online publication date: 2-Dec-2024
  • (2024)Supporting Architectural Decision Making on Training Strategies in Reinforcement Learning Architectures2024 IEEE 21st International Conference on Software Architecture (ICSA)10.1109/ICSA59870.2024.00017(90-100)Online publication date: 4-Jun-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

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
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]

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 April 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. HTTP
  2. REST
  3. SOAP
  4. WS-* vs. REST
  5. WSDL
  6. architectural decision modeling
  7. resource oriented architectures
  8. service oriented architectures
  9. technology comparison
  10. web services

Qualifiers

  • Research-article

Conference

WWW '08
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,899 of 8,196 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)191
  • Downloads (Last 6 weeks)39
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Best Practices for Designing Scalable REST APIs in Cloud EnvironmentsJournal of Sustainable Solutions10.36676/j.sust.sol.v1.i4.261:4(48-71)Online publication date: 20-Oct-2024
  • (2024)SmartEdge: Towards Configuring Complex Applications in Mobile Edge ComputingProceedings of the 2nd International Workshop on Middleware for the Computing Continuum10.1145/3702635.3703901(13-18)Online publication date: 2-Dec-2024
  • (2024)Supporting Architectural Decision Making on Training Strategies in Reinforcement Learning Architectures2024 IEEE 21st International Conference on Software Architecture (ICSA)10.1109/ICSA59870.2024.00017(90-100)Online publication date: 4-Jun-2024
  • (2024)Design of Cloud-Powered Type of Strategies for Management System Used in Drones2024 4th International Conference on Advance Computing and Innovative Technologies in Engineering (ICACITE)10.1109/ICACITE60783.2024.10617072(301-305)Online publication date: 14-May-2024
  • (2024)Supporting Argumentation in a Service-Oriented Hypertext SystemProcedia Computer Science10.1016/j.procs.2024.09.174246(4000-4007)Online publication date: 2024
  • (2024)High-Performance GIS PlatformHigh Performance Geographic Information System10.1007/978-981-97-7170-7_6(215-266)Online publication date: 16-Oct-2024
  • (2024)Enhancing the Efficiency and the Security of e-Government: The French Case Study of Human Resources ApplicationsTransforming Public Services—Combining Data and Algorithms to Fulfil Citizen’s Expectations10.1007/978-3-031-55575-6_10(223-239)Online publication date: 5-May-2024
  • (2023)Model and Implementation of a Open-Code Staff Appraisal System for Small and Medium EnterprisesOptoelectronics, Instrumentation and Data Processing10.3103/S875669902303004459:3(365-371)Online publication date: 30-Oct-2023
  • (2023)Comparing HTTP And COAP For IoT Low-power and Lossy Networks Using The Cooja Simulator2023 IEEE International Students' Conference on Electrical, Electronics and Computer Science (SCEECS)10.1109/SCEECS57921.2023.10062975(1-4)Online publication date: 18-Feb-2023
  • (2023)Moving Towards Nano-Devices in the Context of Smart Bio-Tech Wearables2023 International Conference on Power Energy, Environment & Intelligent Control (PEEIC)10.1109/PEEIC59336.2023.10451226(1484-1489)Online publication date: 19-Dec-2023
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media