Resource Oriented Computing (ROC) is a simple abstract computing model used for describing, designing, and implementing software and software systems. The fundamental idea behind ROC is derived from the
World Wide Web
The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet.
Documents and downloadable media are made available to the network through web se ...
,
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
, and other sources as well as original research conducted at
HP Laboratories.
Fundamental concepts
Resource-oriented computing describes an abstract computing model. The fundamental idea is that sets of information known as resources are treated as abstracts; that is, a resource is a Platonic concept of the information that is the subject of a computation process.
Resources are identified by logical addresses (typically a
URI Uri may refer to:
Places
* Canton of Uri, a canton in Switzerland
* Úri, a village and commune in Hungary
* Uri, Iran, a village in East Azerbaijan Province
* Uri, Jammu and Kashmir, a town in India
* Uri (island), an island off Malakula Isla ...
) and processing is defined using compositions and sequences of resource requests.
At the physical level, a ROC system processes resource-representations, executes transformations and, in so doing, computes new resources. In this respect ROC is no different from any other computational model - computation is performed to collate and reveal new information.
The fundamental principles of ROC include:
;
Resource
Resource refers to all the materials available in our environment which are technologically accessible, economically feasible and culturally sustainable and help us to satisfy our needs and wants. Resources can broadly be classified upon their av ...
: A resource is an abstract set of information.
;
Identity: Each resource may be identified by one or more logical identifiers.
; Resolution: A logical identifier may be resolved within an information-context to obtain a physical resource-representation.
;
Computation
Computation is any type of arithmetic or non-arithmetic calculation that follows a well-defined model (e.g., an algorithm).
Mechanical or electronic devices (or, historically, people) that perform computations are known as '' computers''. An esp ...
: Computation is the
reification
Reification may refer to:
Science and technology
* Reification (computer science), the creation of a data model
* Reification (knowledge representation), the representation of facts and/or assertions
* Reification (statistics), the use of an id ...
of a resource to a physical resource-representation.
;
Immutability: Resource representations are immutable.
; Transreption: Transreption (short for transrepresentation) is the isomorphic lossless transformation of one physical resource-representation to another.
See also
*
NetKernel
NetKernel is a British software company and software platform by the same name that is used for High Performance Computing, Enterprise Application Integration, and Energy Efficient Computation.
It allows developers to cleanly separate code from ar ...
*
Microservices
A microservice architecture – a variant of the service-oriented architecture structural style – is an architectural pattern that arranges an application as a collection of loosely-coupled, fine-grained services, communicating through ligh ...
References
* {{ cite book , first = Peter , last = Rodgers , url = http://resources.1060research.com/docs/IntroductionToResourceOrientedComputing-1.pdf , title = Introduction to Resource Oriented Computing , publisher = 1060 Research
Software architecture