Arquitectura orientada a recursos (ROA)

Una arquitectura orientada a recursos (ROA) es el diseño estructural que soporta la interconexión de recursos. Un recurso, en este contexto, es cualquier entidad que se puede identificar y asignar un identificador uniforme de recursos (URI).

En tecnología de la información, la arquitectura se refiere a la estructura general de un sistema de información y las interrelaciones de las entidades que componen ese sistema. ROA se considera una arquitectura RESTful. REST (transferencia de estado representacional) está definido por Roy Fielding, coautor de la especificación HTTP y cofundador del proyecto del servidor HTTP Apache, como un estilo arquitectónico que explota la tecnología y los protocolos existentes de la Web, incluidos HTTP y XML.

Dentro del concepto de ROA, los recursos incluyen no solo elementos de infraestructura de TI como servidores, computadoras y otros dispositivos, sino también páginas web, scripts y páginas JSP / ASP, y otras entidades como semáforos.

La tesis doctoral de Fielding, "Estilos arquitectónicos y el diseño de arquitecturas de software basadas en red", identifica cuatro conceptos esenciales que subyacen a la arquitectura orientada a recursos:

  1. Recursos
  2. Sus nombres (URI)
  3. Sus representaciones
  4. Los vínculos entre ellos.

y cuatro propiedades:

  1. Direccionabilidad
  2. Apatridia
  3. Conectividad
  4. Una interfaz uniforme