language-icon Old Web
English
Sign In

Resource-oriented architecture

In software engineering, a resource-oriented architecture (ROA) is a style of software architecture and programming paradigm for supportive designing and developing software in the form of Internetworking of resources with 'RESTful' interfaces. These resources are software components (discrete pieces of code and/or data structures) which can be reused for different purposes. ROA design principles and guidelines are used during the phases of software development and system integration. In software engineering, a resource-oriented architecture (ROA) is a style of software architecture and programming paradigm for supportive designing and developing software in the form of Internetworking of resources with 'RESTful' interfaces. These resources are software components (discrete pieces of code and/or data structures) which can be reused for different purposes. ROA design principles and guidelines are used during the phases of software development and system integration. REST, or Representational State Transfer, describes a series of architectural constraints that exemplify how the web's design emerged. Various concrete implementations of these ideas have been created throughout time, but it has been difficult to discuss the REST architectural style without blurring the lines between actual software and the architectural principles behind it. In Chapter 5 of his thesis, Roy Fielding documents how the World Wide Web is designed to be constrained by the REST series of limitations. These are still fairly abstract and have been interpreted in various ways in designing new frameworks, systems, and websites. In the past, heated exchanges have been made about whether RPC-style REST architectures are RESTful. The Resource Oriented Architecture as documented by Leonard Richardson and Sam Ruby gives concrete advice on specific technical details. Naming these collections of guidelines 'Resource Oriented Architecture' may allow developers to discuss the benefits of an architecture in the context of ROA.

[ "Software design", "Component-based software engineering", "Software construction" ]
Parent Topic
Child Topic
    No Parent Topic