skip to main content
10.1145/337180.337228acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article
Free access

Principled design of the modern Web architecture

Published: 01 June 2000 Publication History

Abstract

The World Wide Web has succeeded in large part because its software architecture has been designed to meet the needs of an Internet-scale distributed hypermedia system. The modern Web architecture emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems. In this paper, we introduce the Representational State Transfer (REST) architectural style, developed as an abstract model of the Web architecture to guide our redesign and definition of the Hypertext Transfer Protocol and Uniform Resource Identifiers. We describe the software engineering principles guiding REST and the interaction constraints chosen to retain those principles, contrasting them to the constraints of other architectural styles. We then compare the abstract model to the currently deployed Web architecture in order to elicit mismatches between the existing protocols and the applications they are intended to support.

References

[1]
Andrews, G. Paradigms for process interaction in distrib-uted programs. ACM Computing Surveys 23,1(Mar. 1991), pp. 49-90.]]
[2]
Anklesaria, F., et al. The Internet Gopher protocol (a distributed document search and retrieval protocol). Internet RFC 1436, Mar. 1993.]]
[3]
Bass,L.,P.Clements,andR.Kazman.Software Architecture in Practice. Addison Wesley, 1998.]]
[4]
Berners-Lee, T. WWW: Past, present, and future. Computer 29, 10 (Oct. 1996), pp. 69-77.]]
[5]
Berners-Lee, T., R.T. Fielding, and H.F. Nielsen. Hypertext Transfer Protocol - HTTP/1.0. Internet RFC 1945, May 1996.]]
[6]
Berners-Lee, T., R.T. Fielding, and L. Masinter. Uniform Resource Identifiers (URI): Generic syntax. Internet RFC 2396, Aug. 1998.]]
[7]
Chin, R.S., and S.T. Chanson. Distributed object-based programming systems. ACM Computing Surveys 23,1 (Mar. 1991), pp. 91-124.]]
[8]
Davis, F., et. al. WAIS interface protocol prototype functional specification (v.1.5). Thinking Machines Corporation, Apr. 1990.]]
[9]
Fielding, R.T. Maintaining distributed hypertext infostructures: Welcome to MOMspider's web. Computer Networks and ISDN Systems 27,2(Nov. 1994), pp. 193~-204.]]
[10]
Fielding, R.T., J. Gettys, J.C. Mogul, H.F. Nielsen, L. Masinter, P. Leach, and T. Berners-Lee. Hypertext Transfer Protocol -HTTP/1.1. Internet RFC 2616,June 1999. {Obsoletes RFC 2068, Jan. 1997.}]]
[11]
Fielding, R.T., E.J. Whitehead Jr., K.M. Anderson, G.Bolcer,P.Oreizy,andR.N.Taylor.Web-based development of complex information products. Comm. of the ACM 41, 8 (Aug. 1998), pp. 84-92.]]
[12]
Fuggetta, A., G.P. Picco, and G. Vigna. Understanding code mobility. IEEE Transactions on Software Engineering 24, 5 (May 1998), pp. 342-361.]]
[13]
Garlan, D., and M. Shaw. An introduction to software architecture. Ambriola & Tortola (eds.), Advances in Software Engineering & Knowledge Engineering, vol. II, World Scientific Pub Co., 1993, pp. 1-39.]]
[14]
Gr~nbaek, K., and R.H. Trigg. Design issues for a Dexter-based hypermedia system. Communications of the ACM 37, 2 (Feb. 1994), pp. 41-49.]]
[15]
Kristol, D., and L. Montulli. HTTP State Management Mechanism. Internet RFC 2109, Feb. 1997.]]
[16]
Manola, F. Technologies for a Web object model. IEEE Internet Computing 3, 1 (Jan.-Feb. 1999), pp. 38-47.]]
[17]
Perry, D.E., and A. Wolf. Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes 17, 4 (Oct. 1992), pp. 40-52.]]
[18]
Postel, J. Media type registration procedure. Internet RFC 1590, Nov. 1996.]]
[19]
Postel, J., and J. Reynolds. File Transfer Protocol. Internet STD 9, RFC 959, Oct. 1985.]]
[20]
Sinha, A. Client-server computing. Communications of the ACM 35, 7 (July 1992), pp. 77-98.]]
[21]
Sollins, K., and L. Masinter. Functional requirements for Uniform Resource Names. Internet RFC 1737,Dec. 1994.]]
[22]
Taylor, R.N., N. Medvidovic, K.M. Anderson, E.J. Whitehead Jr., J.E. Robbins, K.A. Nies, P. Oreizy, and D.L. Dubrow. A component- and message-based architectural style for GUI software. IEEE Transactions on Software Engineering 22, 6 (Jun. 1996), pp. 390-406.]]

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '00: Proceedings of the 22nd international conference on Software engineering
June 2000
843 pages
ISBN:1581132069
DOI:10.1145/337180
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: 01 June 2000

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. WWW
  2. software architectural style
  3. software architecture

Qualifiers

  • Article

Conference

ICSE00
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)459
  • Downloads (Last 6 weeks)46
Reflects downloads up to 24 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Nízkokódové programovanie s APEX: Príručka s praktickými príkladmi10.18690/um.fov.7.2024Online publication date: 18-Oct-2024
  • (2024)Malokodno programiranje z APEX-om: Priročnik s praktičnimi primeri10.18690/um.fov.6.2024Online publication date: 30-Sep-2024
  • (2024)Low Code Programming with APEX: How to and Practical Cases10.18690/um.fov.5.2024Online publication date: 30-Sep-2024
  • (2024)PubChem synonym filtering process using crowdsourcingJournal of Cheminformatics10.1186/s13321-024-00868-316:1Online publication date: 16-Jun-2024
  • (2023)Restful API Security Using JSON Web Token (JWT) With HMAC-Sha512 Algorithm in Session ManagementIT Journal Research and Development10.25299/itjrd.2023.120298:1(81-94)Online publication date: 5-Dec-2023
  • (2023)Intelligent System for Remote Control of Liquid Nitrogen Pressure and Flow in the Cryogenic System of Superconducting Magnets: Hardware and Software PlatformPhysics of Particles and Nuclei Letters10.1134/S154747712302015220:2(172-182)Online publication date: 20-Apr-2023
  • (2023)Analysis of API Architecture: A Detailed Report2023 IEEE 12th International Conference on Communication Systems and Network Technologies (CSNT)10.1109/CSNT57126.2023.10134658(880-884)Online publication date: 8-Apr-2023
  • (2022)D-lib magazine pioneered web-based scholarly communicationProceedings of the 22nd ACM/IEEE Joint Conference on Digital Libraries10.1145/3529372.3530929(1-12)Online publication date: 20-Jun-2022
  • (2022)Exploiting input sanitization for regex denial of serviceProceedings of the 44th International Conference on Software Engineering10.1145/3510003.3510047(883-895)Online publication date: 21-May-2022
  • (2022)Secure and Authorized Client-to-Client Communication for LwM2M2022 21st ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN)10.1109/IPSN54338.2022.00020(158-170)Online publication date: May-2022
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media