Por Karla López Mora – Estudiante de la carrera de Informática

¿Se imagina usted levantándose el día de mañana y no poder realizar transacciones bancarias en línea, o no poder hacer compras en su página preferida? La respuesta de muchos es no. Los humanos nos hemos acostumbrado tanto a usar aplicaciones diariamente para completar nuestras tareas que tenemos una relación bastante dependiente con estas. No obstante, poco sabemos de lo que pasa detrás de cada clic.

Aunque este es un tema muy amplio, en este artículo exploraremos un aspecto esencial: la infraestructura de los servicios web, pues es gracias a los servicios web y a la forma en que se conforman que nosotros podemos disfrutar fácilmente del mundo digitalizado.
Antes de empezar a hablar sobre la infraestructura de los servicios web es importante entender qué son exactamente. Diariamente nuestras computadoras, llamadas “el cliente”, les solicitan a otras computadoras, llamadas “el servidor”, que realicen alguna tarea.

Estas interacciones, de solicitud-respuesta sobre la internet se consideran servicios web (Amazon, 2013). Es así como solventamos muchas tareas diarias usando software disponible en el internet, desde revisar un pronóstico del tiempo hasta visualizar información sobre un ítem a la venta en Amazon que un cliente solicitó mediante una búsqueda en la página (Papazoglou, 2008).

Ahora bien, ¿cuál es la infraestructura de estos servicios? La arquitectura de los servicios web se basa en la Arquitectura Orientada a Servicios (SOA, por sus siglas en inglés). SOA representa una forma lógica de diseñar un sistema de software para proveer servicios, ya sea a las aplicaciones de usuario final (el cliente) o a otros servicios distribuidos en una red, a través de interfaces publicadas y descubiertas (Papazoglou, 2008).

Las piezas fundamentales de SOA son un proveedor de servicio, un registro de servicio y un solicitante del servicio (el cliente). El proveedor crea un servicio web y publica su interfaz e información de acceso al registro de servicio, que se hospeda en una agencia de descubrimiento de servicios (Pirnau y Botezatu, 2016). Los clientes solicitan la ejecución del servicio, por lo que necesitan la descripción del servicio y poder unirse a ellos. El registro de servicios web es un directorio donde las descripciones de servicios pueden ser publicadas y buscadas, la información del servicio que se encuentra en estos registros es suficiente para que el cliente pueda contactar o unirse al proveedor del servicio y, por ende, utilizar los servicios que este provee (Papazoglou, 2008). La figura 1 muestra una forma simplificada de la relación entre estas piezas clave.

Figura 1. Servicios Web. Fuente: Pirnau y Botezatu, 2016.

Los servicios web se describen en términos de un lenguaje descriptivo estándar llamado en inglés Web Service Description Language (WSDL). Así, el cliente usa el WSDL para unirse al proveedor del servicio e invocar sus servicios. En otras palabras, el WSDL permite describirle a otras aplicaciones las reglas para la interfaz y su interacción (Papazoglou, 2008).
Como vemos, detrás de cada clic que damos en nuestras aplicaciones preferidas, existe todo un ecosistema funcionando. Hay un cliente, un proveedor y un registro que se encargan de que yo como clienta pueda realizar todas estas transacciones diarias con facilidad, pero cada clic representa todo un proceso de registro, descripción, búsqueda y comunicación que, al final del día, nos permite contar con múltiples servicios digitalizados de una forma más ágil y cómoda para el cliente y más eficiente y eficaz para el proveedor.

 

MOXIE es el Canal de ULACIT (www.ulacit.ac.cr), producido por y para los estudiantes universitarios, en alianza con el medio periodístico independiente Delfino.cr, con el propósito de brindarles un espacio para generar y difundir sus ideas.  Se llama Moxie - que en inglés urbano significa tener la capacidad de enfrentar las dificultades con inteligencia, audacia y valentía - en honor a nuestros alumnos, cuyo “moxie” los caracteriza.

Referencias bibliográficas:
• Amazon. (2013). Product Advertising API. Recuperado de https://docs.aws.amazon.com/AWSECommerceService/latest/DG/prod-adv-api- dg.pdf#WhatisaWebService
• Papazoglou, M. (2008). Web Services: Principles and Technology. Tilburg University, The Netherlands: Pearson Education.
• Pirnau, C. y Botezatu, M. A. (2016). Service-Oriented Architecture (SOA) and Web Services. Database Systems Journal, 7(4), 32–39. Recuperado de http://search.ebscohost.com/login.aspx?direct=true&db=aci&AN=122035868&lang=es&site=e host-live