Tecnologías de Información y Comunicación
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
1
Sesión No. 7
3. Tecnología Web Parte 3
Objetivo Al término de la sesión, el alumno explicará el
funcionamiento de un servicio web.
Contextualización ¡Bienvenido a la sesión 7¡
Antes de ver los temas de aplicaciones web, es necesario conocer la
arquitectura y los elementos de diseño para que éstas puedan funcionar como lo
hacen hoy en día.
Es importante señalar que los servicios web involucran muchos conceptos de
programación e ingeniería de software.
En esa sesión se mencionarán algunos conceptos un poco complicados para el
cuatrimestre que estás llevando, sin embargo, es importante notar que a lo largo
de tu carrera podrás conocer con más detalle lo que es un servicio web e incluso
tú mismo diseñarás y programarás.
Lo que se pretende es que conozcas que hay una arquitectura detrás de toda
aplicación web y que la W3C está llevando desarrollos e investigaciones como
se detallan en esta sesión.
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
2
Introducción al Tema Al principio, las páginas de Internet eran estáticas y solamente se requerían
elaborarlas de forma simple con HTML (lenguaje de marcado de hipertexto). La
siguiente figura nos muestra un código ejemplo:
Este código HTML visto con un navegador sería el siguiente:
Con el paso de tiempo, las páginas se volvieron interactivas y ello requirió de
una compleja arquitectura que involucra lenguajes, estándares, etc., para poder
intercambiar información entre sistemas tan heterogéneos que forman el Internet,
de ahí el surgimiento de los servicios web que veremos a continuación. Es
importante mencionar que también existe el HTML5 que permite más dinamismo
en las páginas de Internet.
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
3
Explicación 3.4 Servicios Web
W3C (ver sesión anterior, www.w3.org), define a los servicios web como un
conjunto de aplicaciones o tecnologías con capacidad para interoperar en la
Web. Estas tecnologías intercambian datos entre ellas con el fin de ofrecer unos
servicios.
El Internet pasó de ser un espacio de información a un espacio de interacción,
en la que la Web como plataforma permite que de forma remota los usuarios
puedan solicitar un servicio que algún proveedor publique en Internet. En la
siguiente figura tenemos a un usuario que por medio de un navegador de
Internet (por ejemplo Firefox) solicita un servicio publicado por un servidor de
Internet. Para lo cual su nodo o host se conecta al servidor de la red con salida a
Internet, éste a su vez procesa su solicitud a un servidor, el cual puede tener uno
o más servicios asociados. La respuesta se envía de regreso al usuario quien
visualiza lo solicitado.
Para que lo anterior funcione se necesitan una serie de estándares que
presenten información dinámica al usuario. Un ejemplo es cuando solicitas
información del tipo de cambio del dólar, este se conforma en tiempo real, como
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
4
se muestra en la siguiente figura, en la que google nos trae un servicio web de
tipo de cambio.
Una arquitectura de referencia estándar proporciona interoperabilidad (IEEE la
define como habilidad de dos o más sistemas o componentes para intercambiar
información y utilizar la información intercambiada) y extensibilidad (en
ingeniería de software se refiere a un principio de diseño en la que se toma en
cuenta para futuras funcionalidades) entre las aplicaciones y su combinación
para realizar tareas complejas (Laudon, 2008). La siguiente figura nos aclara un
poco más el concepto (ya no solamente un usuario es el cliente sino también
una aplicación):
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
5
En figura se puede observar a un usuario, (también llamado cliente en la
terminología de Servicios web) quien, a través de una aplicación, solicita
información sobre una expedición que desea realizar haciendo una petición a
una agencia de viajes que ofrece sus servicios a través de Internet. La agencia
ofrecerá a su cliente (usuario) la información que éste requiere. Ahora bien, para
proporcionar al cliente la información que necesita, esta agencia de viajes
solicita a su vez información a otros recursos (otros Servicios Web) en relación
con el hotel y la línea aérea. La agencia obtendrá información de estos recursos,
lo que la convierte a su vez en cliente de esos otros servicios web que le van a
proporcionar la información solicitada sobre el hotel y la línea aérea. Por último,
el usuario realizará el pago del viaje a través de la agencia de que servirá de
intermediario entre el usuario y el servicio Web que gestionará el pago.
En todo este proceso intervienen una serie de tecnologías que hacen posible
esta circulación de información. Por un lado, estaría SOAP (Protocolo Simple de
Acceso a Objetos). Se trata de un protocolo basado en XML, que permite la
interacción entre varios dispositivos y que tiene la capacidad de transmitir
información compleja. Los datos pueden ser transmitidos a través de HTTP,
SMTP, etc. SOAP especifica el formato de los mensajes. El mensaje SOAP está
compuesto por un envelope (sobre), cuya estructura está formada por los
siguientes elementos: header (cabecera) y body (cuerpo) (McFedries, 2009).
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
6
Para optimizar el rendimiento de las aplicaciones basadas en Servicios Web, se
han desarrollado tecnologías complementarias a SOAP, que agilizan el envío de
los mensajes y los recursos que se transmiten en estos. Por otro lado, WSDL
(Lenguaje de Descripción de Servicios Web), permite que un servicio y un cliente
establezcan un acuerdo en lo que se refiere a los detalles de transporte de
mensajes y su contenido, a través de un documento procesable por dispositivos.
WSDL representa una especie de contrato entre el proveedor y el que solicita.
WSDL especifica la sintaxis y los mecanismos de intercambio de mensajes
(McFedries, 2009).
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
7
Conclusión
Los servicios web ofrecen un significado estándar para la interoperación entre
las diferentes aplicaciones de software, es decir, los componentes de software
puedan transmitirse por medio del Internet y permiten que una aplicación se
pueda comunicar con otra sin necesidad de algún tipo de traducción y lo más
interesante, que las aplicaciones se comuniquen y puedan compartir información
sin importar el sistema operativo, lenguaje de programación o el dispositivo
involucrado.
El W3C pretende diseñar la arquitectura, definirla y crear el núcleo de
tecnologías que hagan posible los Servicios Web, y por ende que existan las
aplicaciones Web.
En la siguiente sesión hablaremos las aplicaciones web, las cuales se basan en
los servicios web.
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
8
Para aprender más
El W3C está en su sitio muestra información referente a la arquitectura de los
servicios web y describe en lo que está trabajando:
• Marco de mensajería (es decir, el intercambio de mensajes)
o Simple SOAP: Simple Object Access Protocol es un protocolo
simple para intercambiar información estructurada en un ambiente
descentralizado y distribuido. "Messaging Framework" define,
usando tecnologías XML, un marco extensible de mensajería que
contiene una construcción del mensaje que se pueda intercambiar
con una variedad de protocolos subyacentes.
http://www.w3.org/TR/soap12-part1/
o Web Services Addressing (WS-Addressing): Direccionamiento de
Servicios Web. La dirección de los servicios Web proporciona
mecanismos neutrales para transportar los servicios web y los
mensajes. Define un sistema de características abstractas y una
representación de XML para referirse a servicios de la Web y para
facilitar la dirección final de los mensajes. Esta especificación
permite a los sistemas de mensajería soportar la transmisión del
mensaje a través de redes que incluyen el procesado de nodos
tales como gestión final, cortafuegos y pasarelas mediante una
forma de transporte neutro. http://www.w3.org/TR/ws-addr-core/
o SOAP Message Transmission Optimization (MTOM) Descripción
de la Optimización de la Transmisión del Mensaje. Describe una
característica abstracta y una puesta en práctica concreta para
optimizar el formato de la transmisión y/o de la vía de los mensajes
SOAP. http://www.w3.org/TR/soap12-mtom/
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
9
• Descripción de los Servicios:
o Web Services Description Language (WSDL): Lenguaje de
Descripción de los Servicios Web. Se trata de un lenguaje para
describir Servicios Web. La especificación define el lenguaje básico
que puede usarse para describir servicios Web basados en un
modelo abstracto de lo que ofrece el servicio. También define los
criterios de conformidad de los documentos en relación a este
lenguaje. http://www.w3.org/TR/wsdl20/
o Web Services Choreography Description Language (WS-CDL):
Lenguaje de Descripción de la Coreografía de los Servicios Web.
Es un lenguaje basado en XML que describe colaboraciones peer
to peer de los participantes, definiendo desde un punto de vista
global, un comportamiento observable común y complementario;
donde ordenado el mensaje, intercambia el resultado de acuerdo a
un objetivo de negocios común. http://www.w3.org/TR/ws-cdl-10/
Los servicios web que se basan en XML permiten que las aplicaciones
compartan información y que además invoquen funciones de otras aplicaciones;
independientemente de cómo se hayan creado dichas aplicaciones y los
sistemas operativos o plataformas en que se ejecuten, así como de los
dispositivos utilizados en el acceso.
XML, (Lenguaje de Marcas eXtensible) es un lenguaje de especificación
desarrollado por W3C y define una gramática para la especificación de
documentos y soporte a bases de datos, en especial para el intercambio de
información entre aplicaciones.
La siguiente figura nos muestra un archivo XML que contiene Información sobre
un estudiante, en este caso con 3 elementos: nombre, edad y calificación.
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
10
Los servicios Web aunque sean independientes entre sí, pueden vincularse para
realizar una tarea. Por ejemplo, Google, utiliza un Servicio Web -Google Web
APIs- basado en los estándares SOAP y WSDL que permite programar en Java,
Perl ó Visual Studio.NET y que sirve para la recuperación de información
permitiendo utilizar este buscador en distintas plataformas y Servicios Web.
http://www.google.com/apis/
Por su parte, Amazon Web Services ofrece una serie de aplicaciones de
referencia que permiten a los desarrolladores acceso directo a la plataforma de
tecnología de Amazon y construir aplicaciones propias. Una lista pormenorizada
de muchos de los servicios web existentes en la actualidad los ofrece XMethod:
http://www.xmethods.com
A continuación se muestra el código que se utilizaría para solicitar un viaje:
<?xml version='1.0' ?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"> <env:Header> <m:reserva xmlns:m="http://empresaviajes.ejemplo.org/reserva" env:role="http://www.w3.org/2003/05/soap-envelope/role/next" env:mustUnderstand="true"> <m:referencia> uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d </m:referencia> <m:fechaYHora>2001-11-29T13:20:00.000-05:00</m:fechaYHora> </m:reserva>
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
11
<n:pasajero xmlns:n="http://miempresa.ejemplo.com/empleados" env:role="http://www.w3.org/2003/05/soap-envelope/role/next" env:mustUnderstand="true"> <n:nombre>Pepe Ejemplo</n:nombre> </n:pasajero> </env:Header> <env:Body> <p:itinerario xmlns:p="http://empresaviajes.ejemplo.org/reserva/viaje"> <p:ida> <p:salida>Nueva York</p:salida> <p:llegada>Los Angeles</p:llegada> <p:fechaSalida>2001-12-14</p:fechasalida> <p:horaSalida>última hora de la tarde</p:horaSalida> <p:preferenciaAsiento>pasillo</p:preferenciaAsiento> </p:ida> <p:vuelta> <p:salida>Los Angeles</p:salida> <p:llegada>Nueva York</p:llegada> <p:fechaSalida>2001-12-20</p:fechaSalida> <p:horaSalida>media-mañana</p:horaSalida> <p:preferenciaAsiento/> </p:vuelta> </p:itinerario> <q:alojamiento xmlns:q="http://empresaviajes.example.org/reserva/hoteles"> <q:preferencia>ninguna</q:preferencia> </q:alojamiento> </env:Body> </env:Envelope>
Finalmente, lee El Nuevo Diario – Web Services.pdf que son 3 artículos sobre el
tema de un periódico. http://brd.unid.edu.mx/web-services/
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
12
Actividad de Aprendizaje Objetivo
El alumno explicará el funcionamiento de un servicio web en una presentación multimedia compartida en la nube.
¿Qué vas a hacer?
Basándote en el ejemplo que se mostró en la sesión (página 4), en esta sesión debes elaborar una presentación animada y narrada en PowerPoint (o cualquier programa para presentaciones), en la que debes explicar claramente cómo funciona un servicio web. Alojarás la presentación en la nube y compartirás la liga con el grupo en un foro de la sesión.
Realiza lo siguiente:
1. Primera diapositiva. Datos de la universidad, tuyos, tema, sesión. No es necesario que incluya voz.
2. Segunda diapositiva. Diagrama del ejemplo, con imágenes, texto, animación y narración (voz) donde expliques cada proceso, de manera que cada elemento y su papel dentro del proceso se vaya destacando en cada paso. La voz debe ser clara, el texto legible, las imágenes nítidas y la animación pertinente.
3. Tercera diapositiva. Incluye la bibliografía completa de donde utilizaste información, en ésta no es necesario que incluyas audio. Recuerda que la información debe ser lo más actualizada posible.
4. Coloca la presentación en algún servicio de almacenamiento en la nube, comparte el archivo para que no se solicite contraseña para abrirla y obtén la dirección.
Material:
• Como guía inicial puedes usar la lectura de la sesión, los que se sugieren y los que consideres pertinentes, cuida que sean de sitios confiables como de universidades, revistas especializadas o portales educativos.
• Programa para elaborar presentaciones.
• Micrófono y bocinas.
¿Cuál es la forma de entrega?
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN 13
• Elabora la presentación y sube el archivo al sitio de almacenamiento en lanube que desees, no será en la plataforma de aprendizaje.
• Copia la dirección del sitio donde lo ubicaste, asegúrate que el accesopara verlo no sea con contraseña.
• Participa en el foro de la sesión, donde comentarás tu experiencia ydejarás la liga de tu archivo para que el grupo y el profesor puedan ver elresultado.
¿Cómo serás evaluado?
Característica Porcentaje Aparición de datos generales completos. Nombre, grupo, universidad, fecha, sesión, actividad.
5%
• Proceso plasmado correctamente• Texto o títulos adecuados al tema• Secuencia y claridad de la información• Explicación en voz clara• Las imágenes son nítidas• Los elementos animados aparecen de
manera coherente con el audio y elproceso
75%
Redacción y ortografía 10% Fuentes de información con datos completos 10% Total 100
¡Adelante con tu actividad, estaremos revisando tu participación!
TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN
14
Bibliografía
• Laudon Kenneth (2008) Sistemas de Información Gerencial, México,
Pearson Prentice Hall
• Beekman George (2005) Introducción a la Informática, México, Prentice
Hall.
• McFedries, Paul (2009) Internet Simplified, Estados Unidos: Visual.
http://www.w3.org/
Top Related