Publication | Closed Access
Principled design of the modern Web architecture
264
Citations
21
References
2000
Year
Unknown Venue
Web Service SpecificationModern Web ArchitectureEngineeringHypertext Transfer ProtocolComputer ArchitectureSoftware EngineeringSemantic WebSocial SciencesWeb EngineeringWeb Service ModelingDesignComputer ScienceSoftware DesignService-oriented ComputingArchitectural DesignWeb ArchitectureCloud ComputingWeb Information SystemSystem Software
The Web’s success stems from an architecture designed for Internet‑scale distributed hypermedia, emphasizing scalable component interactions, general interfaces, independent deployment, and intermediaries that reduce latency, enforce security, and encapsulate legacy systems. The article introduces REST as an abstract model of the Web architecture to guide redesign of HTTP and URIs. The authors outline REST’s software engineering principles and interaction constraints, contrast them with other styles, and compare the model to the deployed Web architecture to highlight protocol‑application mismatches.
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 application. 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 article we introduce the Representational State Transfer (REST) architectural style, developed as an abstract model of the Web architecture and used 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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1