miércoles, 29 de abril de 2015

6.1 SERVICIOS WEB



6.1 Conceptos generales.





¿Qué puedo hacer con los servicios web?

Aunque los servicios web permitan que todos esos dispositivos dinámicos combinen varios servicios en aplicaciones, aun así es necesario construir los servicios primero. Los lenguajes de programación en la Ciencia de la Computación están en continua evolución. Se comenzó hace décadas con la idea de una función en la cual uno la proporciona algunos parámetros, la función ejecuta alguna operación con los parámetros y retorna un valor basado en los cálculos. Con el tiempo, ese primer concepto evolucionó al objeto en el cual cada objeto no sólo tenía varias funciones que podía realizar, sino también sus propias variables de datos privados, en lugar de basarse en variables externas de todo el sistema, que anteriormente hacían más complejo el desarrollo de aplicaciones. A medida que las aplicaciones comenzaron a comunicarse, el concepto de interfaces universales definidas para objetos se hizo importante, para permitir que objetos de otras plataformas se comuniquen aunque hayan sido escritos en lenguajes de programación distintos y operen en otros sistemas operativos.

Los servicios web se acercaron al concepto de interfaces y comunicaciones definidas en XML, para finalmente unir aplicaciones de cualquier tipo, además de proporcionar la libertar de cambiar y evolucionar a lo largo del tiempo, a condición de que estén diseñadas para la interfaz adecuada. Lo que distingue los servicios web de las tecnologías que componen la generación anterior es la versatilidad de XML. Permite separar la estructura gramatical (sintaxis) del significado gramatical (semántica) y posibilita la separación de la forma que cada servicio del entorno procesa y entiende eso. Por tanto, ahora, los objetos pueden ser definidos como servicios que se comunican con otros servicios en la gramática definida por XML, donde cada servicio traduce y analiza el mensaje de acuerdo con la implementación local y el entorno. Por tanto, una aplicación conectada en red puede efectivamente estar compuesta por varias entidades con varias construcciones y diseños diferentes, a condición de que cumplan con las reglas definidas por su arquitectura orientada a servicios.


Permite el acoplamiento flojo, lo que significa que las interacciones entre aplicaciones de servicio no se rompen siempre que haya un cambio en la forma de diseño o implementación de un servicio o más.
Adaptar las aplicaciones ya existentes a las cambiantes condiciones empresariales y necesidades de clientes.
Proporcionar aplicaciones de software ya existentes o legadas con interfaces de servicio sin cambiar las aplicaciones originales, lo que permite operar totalmente en el entorno de servicios.
Introducir otras funciones administrativas o de gestión de operaciones como confiabilidad, rendición de cuentas, seguridad, etc., independientemente de la función original, lo que aumenta su versatilidad y utilidad en el entorno de computación empresarial.

W3C define un "servicio web" como "un sistema de software diseñado para soportar la interacción interoperable de máquina a máquina en una red". Cuenta con una interfaz descrita en un formato procesable por máquina (específicamente Servicios Web de lenguaje de descripción, conocido por el acrónimo WSDL). Otros sistemas interactúan con el servicio Web de una manera prescrita por su descripción utilizando mensajes SOAP, típicamente transportados utilizandoHTTP con una serialización XML en conjunción con otros estándares relacionados con la Web - Figura 6.1.








Básicamente, un servicio web (webservice) es un sistema de entrada/salida, al que se le puede pasar una serie de parámetros con el fin de obtener un resultado en concreto y recuperarlo para ser mostrado en una aplicación.







La tecnología de los servicios web es relativamente reciente, y está basada en el protocolo SOAP (Simple Object Access Protocol), consistente en un simple documento XML que habilita el intercambio de información vía HTTP entre diversas aplicaciones.


La ventaja de este protocolo radica en una comunicación efectiva independiente del lenguaje de programación que defina a la aplicación.


WSDL (Web Services Description Language) es el nombre del lenguaje utilizado para describir un servicio web. El mismo utiliza el formato wsdl como extensión para sus archivos. Estos últimos son referenciados desde una URL, e incluyen una serie de métodos y operaciones que serán llamados desde la aplicación central del lado del cliente.

Definidos por nuevos estándares – como SOAP (Simpla Object Access Protocol), WSDL (Web Services Description Language), y UDDI (Universal Discovery Description and Integration) – los Servicios Web ofrecen un nuevo modelo para la creación de aplicaciones e-Business a partir de módulos reutilizables de software a los que se tiene acceso a través de la Web (Figura 6.3).

Figura 6.3. Flujo de un servicio Web

Beneficios de los Servicios Web

Desde un punto de vista técnico, los Servicios Web ofrecen una manera más fácil de desarrollar aplicaciones a las que se requiera tener acceso a través de la Web. Es importante anotar que los servicios Web no resuelven todos los requerimientos de integración –  sólo la habilidad de comunicarse con otros módulos de software a través de la red pública. Se requieren tecnologías adicionales de integración para manejar la integración de datos, aplicaciones y procesos del negocio. También se requieren características de clase empresarial para complementar los Servicios Web, permitiéndoles ser seguros y escalable
Desde el punto de vista del negocio, los Servicios Web le permiten a una compañía concentrar los esfuerzos de desarrollo en los recursos computacionales que le representan ganancia. Los modelos y relaciones empresariales son desarrollados en la medida en que es necesario, los costos de integración son reducidos, las interacciones con otros mercados son establecidas más efectivamente, y las funciones del negocio son entregadas a un conjunto más amplio de clientes y asociados.
Más aún, la tecnología de Servicios Web permite la contratación de servicios que no brindan un beneficio al negocio. Dado que los Servicios Web separan aplicaciones de infraestructura, una compañía puede rápidamente componer y desplegar soluciones basadas en componentes reutilizables provenientes del proveedor que ofrezca un menor costo, sea éste interno o externo. Estas soluciones pueden cambiar el enfoque e incluso la naturaleza de las interacciones, en respuesta a condiciones cambiantes del negocio. En consecuencia, los e-Business pueden explotar modelos de negocio flexibles y dinámicos – maximizando su alcance a clientes, asociados, proveedores y mercados, al mismo tiempo que minimizan sus costos y tiempo de mercadeo.

Proveedores destacables de servicios web

  • Amazon Web Services. Amazon Web Services ofrece varios servicios de informática basada en la nube, incluida una amplia selección de instancias informáticas cuyo escalado se puede aumentar y reducir automáticamente para satisfacer las necesidades de su aplicación, un servicio de equilibrio de carga gestionado y escritorios totalmente gestionados en la nube.
  • Google Apps for Education. Con Google Apps for Education, todo se guarda automáticamente en la nube, lo que representa una tecnología 100% web. Esto significa que se puede acceder (y editar) a todos los mensajes de correo electrónico, documentos, calendarios y sitios con prácticamente cualquier dispositivo móvil o tableta, en cualquier momento y en cualquier luga.
  • iCloud- Ahora tienes la libertad de trabajar con el archivo que quieras, en el dispositivo que quieras. Con iCloud Drive puedes almacenar de manera segura todas tus presentaciones, hojas de cálculo, archivos PDF, imágenes y todo tipo de documentos en iCloud, y acceder a ellos desde tu iPhone, iPad, iPod touch, Mac o PC. Tienes 5 GB de almacenamiento gratuito en iCloud, y puedes obtener otros planes de almacenamiento desde $12 al mes.
  • Oracle. Oracle Web Services Manager ofrece una solución completa y fácil de usar para la gestión de la política y la seguridad de la infraestructura de servicios. Proporciona visibilidad y control de las políticas a través de una interfaz de administración centralizada que ofrece Oracle Enterprise Manager.
  • Salesforce. Servicios de atención al cliente en la nuble
  • Meltwater GroupMeltwater ayuda a las empresas a generar crecimiento y construir marcas. La plataforma de inteligencia on-line de Meltwater analiza a diario miles de millones de documentos digitales para extraer de ellos información empresarial oportuna que ayuda a más de 20.000 empresas a conocer sus mercados, a favorecer la interacción de sus clientes y a dominar el nuevo entorno de la empresa en medios sociales. Con oficinas en 27 países, Meltwater ofrece un servicio global pero personalizado, basado en la experiencia local.

FUENTES:


No hay comentarios:

Publicar un comentario