tecnologías de información y comunicación - mi materia en...

15
Tecnologías de Información y Comunicación

Upload: buingoc

Post on 07-Apr-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

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 la nube que desees, no será en la plataforma de aprendizaje.

• Copia la dirección del sitio donde lo ubicaste, asegúrate que el acceso para verlo no sea con contraseña.

• Participa en el foro de la sesión, donde comentarás tu experiencia y dejarás la liga de tu archivo para que el grupo y el profesor puedan ver el resultado.

¿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 el proceso

75%

Redacción y ortografía 10% Fuentes de información con datos completos 10% Total 100

Esta actividad representa el 5% de tu calificación final.

¡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/