viernes, 24 de junio de 2011

Web Service

Elaborado por:

Hernandez Fuentes, Blanca Estela
Mazariego Martinez, Jeannette Beatriz
Rincan Regalado, Tania Lissethe
Sandoval Castro, Claudia Marisela



El término Web Services describe una forma estandarizada de integrar aplicaciones WEB mediante el uso de XML, SOAP, WSDL y UDDI sobre los protocolos de la Internet. Uno de los usos principales es permitir la comunicación entre las empresas y entre las empresas y sus clientes. Los Web Services permiten a las organizaciones intercambiar datos sin necesidad de conocer los detalles de sus respectivos Sistemas de Información.
Los Web Services permiten a distintas aplicaciones, de diferentes orígenes, comunicarse entre ellos sin necesidad de escribir programas costosos, esto porque la comunicación se hace con XML. Los Web Services no están ligados a ningún Sistema Operativo o Lenguaje de Programación.

Tecnología Web Services
Los Web Services están construidos con varias tecnologías que trabajan conjuntamente con los estándares que están emergiendo para asegurar la seguridad y operatibilidad.

XML
Es un estándar para describir datos y crear etiquetas. Es un metalenguaje que permite diseñar un lenguaje propio de etiquetas para múltiples clases de documentos. Los documentos XML se componen de unidades de almacenamiento llamadas entidades (entities), que contienen datos analizados (parsed) o sin analizar (unparsed). XML proporciona un mecanismo para imponer restricciones en la estructura lógica y de almacenamiento.

SOAP
(Protocolo de Acceso simple a objetos). Especificación XML para la formación de los mensajes intercambiados entre los sistemas distribuidos y la red. El mensaje está compuesto de tres partes: un sobre, encabezado y el cuerpo. El sobre envuelve al mensaje y contiene el encabezado y el cuerpo; el encabezado es un elemento opcional que provee información para el enrutamiento del mensaje; el cuerpo contiene datos etiquetados como XML.

WSDL
(Lenguaje de descripción de servicios web). Especificación XML para la formación del documento de descripción de un servicio web. Identifica los métodos, funciones y parámetros necesarios para invocar un determinado servicio. Así, un usuario puede crear una aplicación cliente que comunica con el servicio web.

UDDI
(Descubrimiento e Integración). Es un elemento básico sobre el que se asientan los Web services, hace posible que empresas pueden tanto publicar como encontrar servicios web. UDDI provee un mecanismo para que los negocios se "describan" a si mismos y los tipos de servicios que proporcionan y luego se pueden registrar y publicarse en un Registro UDDI. Tales negocios publicados pueden ser buscados, consultados o "descubiertos" por otros negocios utilizando mensajes con SOAP.


Web Service en acción



Después de familiarizarse con los elementos clave responsable de hacer el trabajo de servicios Web, hay que ver cómo estos elementos interactúan con el sistema en su conjunto, desde el cliente que solicita un servicio para realizar una tarea, el servicio se ejecuta, y la entrega de datos.

Un servicio Web simple que puede ser utilizado como un ejemplo es el que permite a un cliente para convertir una moneda a otra. La aplicación Web utiliza como el front-end contiene un formulario simple que permite al usuario seleccionar la moneda de partida, y la moneda a la que quiere la conversión por hacer. El usuario envía estos datos, y los contactos de la solicitud del proveedor UDDI para buscar el servicio requerido para realizar esta conversión. El proveedor de UDDI crea la unión, que asocia el mensaje con el servicio solicitado, y su ubicación. El proveedor de UDDI devuelve un archivo WSDL para el cliente, que la aplicación completa de un mensaje SOAP. El mensaje SOAP luego se envían al servidor de aplicación que aloja el servicio Web necesarios para ejecutar la conversión de moneda. Esto se hace utilizando los datos de enlace en el archivo WSDL de la UDDI. Siguiendo las instrucciones de SOAP, el servicio Web correctamente puede ejecutar la tarea de acuerdo a los parámetros que se le dio, y entregar la conversión de moneda procesa de nuevo a la solicitante.

Plataformas EAI y Web Services.
El término EAI es un acrónimo de Integración de Aplicaciones Empresariales. Se refiere a los desarrollos de software orientados a crear medios para compartir datos y procesos entre distintas aplicaciones de una organización.

El EAI lo que hace es interconectar a todos esos sistemas, de tal forma que cualquier aplicación conectada al EAI (es decir que tenga un adaptador) puede interactuar con cualquier otra aplicación conectada al EAI.

Podríamos ver al EAI como un traductor que permite que dos sistemas que hablan en idiomas distintos sean capaces de entenderse. Conforme ha ido pasando el tiempo, los constructores de sistemas EAI han ido añadiendo funciones avanzadas como: el mapeo de datos, la transformación y traducción de datos, la coordinación de transacciones, la gestión de comunicaciones y la gestión de procesos de negocio. Estas capacidades son críticas para las empresas de cierto tamaño en sus proyectos de integración de sistemas.

Actualmente los servicios Web no son capaces de ofrecer todo el conjunto de características avanzadas de muchos sistemas EAI, como por ejemplo, gestión de la capa de comunicación, coordinación de transacciones, seguridad, etc, aunque son cuestiones sobre las que se está trabajando.

Los servicios Web por tanto son atractivos para soluciones de este tipo en el ámbito de la integración de baja y media complejidad.

Ventajas de los servicios web
• Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
• Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.
• Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para proveer servicios integrados.

Desventajas de Los Servicios Web
• Para realizar transacciones no pueden compararse en su grado de desarrollo con los estándares abiertos de computación distribuida como CORBA (Common Object Request Broker Architecture).
• Su rendimiento es bajo si se compara con otros modelos de computación distribuida, tales como RMI (Remote Method Invocation), CORBA o DCOM (Distributed Component Object Model). Es uno de los inconvenientes derivados de adoptar un formato basado en texto. Y es que entre los objetivos de XML no se encuentra la concisión ni la eficacia de procesamiento.
• Al apoyarse en HTTP, pueden esquivar medidas de seguridad basadas en firewall cuyas reglas tratan de bloquear o auditar la comunicación entre programas a ambos lados de la barrera.



No hay comentarios: