Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1287624.1287660acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
Article

From representations to computations: the evolution of web architectures

Published: 07 September 2007 Publication History

Abstract

REpresentational State Transfer (REST) guided the creation and expansion of the modern web. What began as an internet-scale distributed hypermedia system is now a vast sea of shared and interdependent services. However, despite the expressive power of REST, not all of its benefits are consistently realized by working systems. To resolve the dissonance between the promise of REST and the reality of fielded systems, we critically examine numerous web architectures. Our investigation yields a set of extensions to REST, an architectural style called Computational REST (CREST), that not only offers additional design guidance, but pinpoints, in many cases, the root cause of the apparent dissonance between style and implementation. Furthermore, CREST explains emerging web architectures (such as mashups) and points to novel computational structures.

References

[1]
Amazon Web Services. Amazon S3. http://docs.amazonwebservices.com/AmazonS3/2006-03-01/, March 1, 2006.
[2]
Apache. http://httpd.apache.org/mod mbox/, 2006. The Apache Software Foundation.
[3]
Caswell-Daniels, M. Goggles :: The Google Maps flight sim. http://www.isoma.net/games/goggles.html, 2007.
[4]
CollabNet. http://subversion.tigris.org/, 2003.
[5]
CollabNet. http://eyebrowse.tigris.org/, 2006.
[6]
eBay Inc. REST -- eBay developers program. http://developer.ebay.com/developercenter/rest, 2007.
[7]
Erenkrantz, J. R. Web Services: SOAP, UDDI, and Semantic Web. Tech. Rep. UCI-ISR-04-3, Institute for Software Research, University of California, Irvine, May 2004.
[8]
Erenkrantz, J. R. Architectural Styles of Extensible REST-based Applications. Tech. Rep. UCI-ISR-06-12, Institute for Software Research, University of California, Irvine, August 2006.
[9]
Fielding, R. T., and Taylor, R. N. Principled design of the modern web architecture. In Proceedings of the 22nd International Conference on Software Engineering (Limerick, Ireland, May 2000), IEEE, pp. 407--416.
[10]
Fielding, R. T., and Taylor, R. N. Principled design of the modern web architecture. ACM Transactions on Internet Technology 2, 2 (May 2002), 115--150.
[11]
Fuchs, M. Dreme: for Life in the Net. PhD thesis, New York University, September 1995.
[12]
Fuggetta, A., Picco, G. P., and Vigna, G. Understanding Code Mobility. IEEE Transactions on Software Engineering 24, 5 (1998), 342--361.
[13]
Garrett, J. J. AJAX: A new approach to web applications. http://www.adaptivepath.com/publications/essays/archives/000385.php, February 18, 2005.
[14]
Google. Google maps API. http://maps.google.com/apis/maps/, 2007.
[15]
Graunke, P. T., and Krishnamurthi, S. Advanced control flows for flexible graphical user interfaces: or, growing guis on trees or, bookmarking guis. In Proceedings of the 24th International Conference on Software Engineering (New York, NY, USA, 2002), ACM Press, pp. 277--287.
[16]
Gudgin, M., Hadley, M., Mendelsohn, N., Moreau, J.-J., and Nielsen, H. F. Simple Object Access Protocol (SOAP) 1.2: Adjuncts. http://www.w3.org/TR/soap12-part2/, June 24 2003.
[17]
Halls, D. A. Applying Mobile Code to Distributed Systems. PhD thesis, University of Cambridge, June 1997.
[18]
Hood, E. http://www.mhonarc.org/, 2004. Version 2.6.10.
[19]
Kristol, D., and Montulli, L. HTTP state management mechanism. http://www.ietf.org/rfc/rfc2109.txt, February 1997.
[20]
Matthews, J., Findler, R. B., Graunke, P., Krishnamurthi, S., and Felleisen, M. Automatically restructuring programs for the web. Automated Software Engineering. 11, 4 (2004), 337--364.
[21]
Microsoft Corporation. ASP 200 error setting cookie expiration past January 19, 2038. http://support.microsoft.com/kb/247348, November 21, 2006.
[22]
Mitchell, K. A matter of style: Web services architectural patterns. In XML 2002 (Baltimore, MD, December 8-13 2002).
[23]
Mitra, N. SOAP Version 1.2 Part 0: Primer. http://www.w3.org/TR/soap12-part0/, June 24 2003.
[24]
Nottingham, M. Understanding web services attachments. http://dev2dev.bea.com/pub/a/2004/05/websvcs nottingham.html, May 24, 2004.
[25]
O'Reilly, T. REST vs. SOAP at Amazon. http://www.oreillynet.com/pub/wlg/3005, April 3, 2003.
[26]
Queinnec, C. The influence of browser on evaluators or, continuations to program web servers. In Proceedings of the International Conference on Functional Programming (Montreal, Canada, 2000), ACM.
[27]
Tarau, P., and Dahl, V. High-level networking with mobile code and first-order AND-continuations. Theory and Practice of Logic Programming 1, 3 (May 2001), 359--380.
[28]
Trachtenberg, A. PHP web services without SOAP. http://www.onlamp.com/pub/a/php/2003/10/30/amazon rest.html, October 30, 2003.
[29]
Vyzovitis, D., and Lippman, A. MAST: A dynamic language for programmable networks. Tech. rep., MIT Media Laboratory, May 2002.
[30]
W3C. Web of services for enterprise computing. http://www.w3.org/2007/01/wos-ec-program.html, February 27-28 2007.
[31]
Winer, D. XML-RPC Specification. http://www.xml-rpc.com/spec, June 15 1999.
[32]
Yahoo! Inc. Flickr services. http://www.flickr.com/services/api/, 2007.
[33]
Young, M. AP News + Google Maps. http://81nassau.com/apnews/, 2007.

Cited By

View all
  • (2023)Key Management Systems for Large-Scale Quantum Key Distribution NetworksProceedings of the 18th International Conference on Availability, Reliability and Security10.1145/3600160.3605050(1-9)Online publication date: 29-Aug-2023
  • (2020)MashReDroid: enabling end-user creation of Android mashups based on record and replayScience China Information Sciences10.1007/s11432-019-2646-263:10Online publication date: 16-Sep-2020
  • (2018)RESTful Web Services – A Question of Standards2018 22nd International Conference on System Theory, Control and Computing (ICSTCC)10.1109/ICSTCC.2018.8540763(677-682)Online publication date: Oct-2018
  • Show More Cited By

Index Terms

  1. From representations to computations: the evolution of web architectures

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ESEC-FSE '07: Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
    September 2007
    638 pages
    ISBN:9781595938114
    DOI:10.1145/1287624
    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

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 07 September 2007

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. mobile code
    2. network continuations
    3. representational state transfer
    4. web services

    Qualifiers

    • Article

    Conference

    ESEC/FSE07
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 112 of 543 submissions, 21%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)17
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 04 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Key Management Systems for Large-Scale Quantum Key Distribution NetworksProceedings of the 18th International Conference on Availability, Reliability and Security10.1145/3600160.3605050(1-9)Online publication date: 29-Aug-2023
    • (2020)MashReDroid: enabling end-user creation of Android mashups based on record and replayScience China Information Sciences10.1007/s11432-019-2646-263:10Online publication date: 16-Sep-2020
    • (2018)RESTful Web Services – A Question of Standards2018 22nd International Conference on System Theory, Control and Computing (ICSTCC)10.1109/ICSTCC.2018.8540763(677-682)Online publication date: Oct-2018
    • (2017)Reflections on the REST architectural style and "principled design of the modern web architecture" (impact paper award)Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering10.1145/3106237.3121282(4-14)Online publication date: 21-Aug-2017
    • (2016)Towards horizontally scalable appsJournal of Ambient Intelligence and Humanized Computing10.1007/s12652-016-0379-y7:4(465-473)Online publication date: 21-May-2016
    • (2015)Distributed Architecture for Mobile Contextual Integrated Field Work ApplicationsProceedings of the 2015 IEEE International Conference on Mobile Services10.1109/MobServ.2015.21(81-88)Online publication date: 27-Jun-2015
    • (2015)Resource Sharing in Mobile Cloud-computing with CoapProcedia Computer Science10.1016/j.procs.2015.08.31763(96-103)Online publication date: 2015
    • (2013)Performance Evaluation of a Modern Web ArchitectureInternational Journal of Information Technology and Web Engineering10.4018/jitwe.20130101038:1(36-50)Online publication date: 1-Jan-2013
    • (2013)Architectural Styles for Distributed InteroperabilityInformation Resources Management Journal10.4018/irmj.201310010326:4(40-65)Online publication date: 1-Oct-2013
    • (2013)Distributed Service Programming and InteroperabilityDistributed Computing Innovations for Business, Engineering, and Science10.4018/978-1-4666-2533-4.ch006(111-136)Online publication date: 2013
    • 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