1. CIDISI (UTN- FRSF) 2. CIDISI (UTN- FRCON) TE: 0342-4602390 Int. 258/107 TE: 0345-4214590



Documentos relacionados
Desarrollo de aplicaciones de comercio electrónico utilizando servicios Web y herramientas BPEL

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

JAVA EE 5. Arquitectura, conceptos y ejemplos.

Service Oriented Architecture

1. Resumen Objetivos Introducción. 3

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

Glosario Plataforma de Interoperabilidad Libre Orientada a Servicios para el Estado Venezolano

Elementos requeridos para crearlos (ejemplo: el compilador)

SISTEMAS DE INFORMACIÓN III TEORÍA

Desarrollo y servicios web

Capítulo 5. Cliente-Servidor.

CONCLUISIONES Y RECOMENDACIONES

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

Universidad Nacional Autónoma de México Dirección de Sistemas Dirección General de Personal

Capitulo 5. Implementación del sistema MDM

Servicios Web: Orquestación y coreografías

NOTAS TÉCNICAS SOBRE EL SIT: Emisión Electrónica de Documentos (EDI)

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

ARC 101 Architecture Overview Diagram

Workflows? Sí, cuántos quiere?

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

ARQUITECTURA ORIENTADA A SERVICIOS (SOA) EN LA JUNTA DE ANDALUCÍA

5.1 Introducción a Servicios Web

8. Internet y su impacto en las Organizaciones. 8.1 Conceptos y terminología 8.2 Etapas de interacción con la Web 8.3 Impacto de Internet en las

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

PROTOCOLOS DE APLICACIÓN PRÁCTICA EN INFOMED INTEROPERABILIDAD

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran:

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Capítulo 1 Introducción

Centro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI)

Service Oriented Architecture: Con Biztalk?

ANEXO 1. ANEXO TÉCNICO

Infraestructura Tecnológica. Sesión 5: Arquitectura cliente-servidor

La aplicación práctica en el mundo empresarial de los estándares Web

Ingeniería de Software en SOA

UNIVERSIDAD DE SALAMANCA

Management(BPM) Gestión de Proceso de negocio con BPM. Universidad Inca Garcilaso de la Vega

WEB SERVICE FACTORUMCFDISERVICE

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

INTEROPERABILIDAD SISTEMA DE INFORMACIÓN GENERAL DE ESTUDIANTES (SIGE) SOFTWARE DE GESTIÓN ESCOLAR

RBAC4WFSYS: Modelo de Acceso para Sistemas Workflow basado en RBAC

E-Government con Web Services

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA

DESARROLLO DE UN SITIO WEB ESPECIALIZADO EN ESTADISTICAS DEL FUTBOL

Sistema de Información Integrada del Área Social

Web Services - ReadingReportService Fecha: 29/04/2015. WEB Services ReadingReportService VERSIÓN 0.1. Autor: German Alfonso Briceño

UNIVERSIDAD DE SANTANDER UDES

Componentes de Integración entre Plataformas Información Detallada

TEMA 5. Otras arquitecturas distribuidas IV. Web Services

ENCUENTA - CONTABILIDAD Net. Definiciones generales

Sustitución de certificados administrativos en soporte papel por medios telemáticos

Business Process Management(BPM)

Un Sistema Distribuido para el Manejo de Correo Electrónico

Microsoft SQL Server Conceptos.

Plataforma de expediente

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

PREPARATORIA DIURNA DE CUAUTLA

CURSO COORDINADOR INNOVADOR

Capítulo I. Marco Teórico

(Certificado de Empresa): guía para las empresas

Anexo 4 Documento de Arquitectura

Unidad II. Interfaz Grafica (continuación ) Basado en clases de Ing. Carlos A. Aguilar

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República

2524 Developing XML Web Services Using Microsoft ASP.NET

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

MANUAL DE USUARIO. Webservice simple para la exportación rápida de información proveniente de una base de datos. Versión 0,1,1

Bases de Datos Especializadas

MACROPROCESO GESTIÓN TECNOLÓGICA

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

REQUISITOS PREVIOS DEL CURSO

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

CONEXIÓN REMOTA CFDI. Proveedor autorizado de certificación SAT Número de aprobación: 55029

Servidores Donantonio

Presentación del Curso Virtual PROGRAMACIÓN WEB PHP CON MYSQL AVANZADO

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW):

OBLIGACIONES DE HACER INSTITUCIONES PÚBLICAS (INSTITUCIONES EDUCATIVAS, HOSPITALES Y CENTROS DE SALUD) DECRETO 2044 DE 2013

SISTEMAS DE INFORMACIÓN II TEORÍA

Manual de Usuario Canal Empresa FACTEL

CAPÍTULO 3 DISEÑO DE LA ARQUITECTURA

Qué es un Servicio Web?

Mejores prácticas para el éxito de un sistema de información. Uno de los problemas de información dentro de las empresas es contar con datos

Introducción a las redes de computadores

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

Sistema informatizado de Trazabilidad alimentaria

UNIVERSIDAD AUTÓNOMA DEL CARIBE

CAPITULO 8. Planeamiento, Arquitectura e Implementación

En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto.

Simulador de Protocolos de Red a tráves de WEB

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático

Antecedentes Marco Conceptual Esquema Interfaz Componentes de la Interfaz Conclusiones

Transcripción:

Herramienta BPEL para el desarrollo de Aplicaciones de Comercio Electrónico con Servicios Web Baroni, Federico 1, Chezzi, Carlos María 2, y Tymoschuk, Ana Rosa 1 1. CIDISI (UTN- FRSF) 2. CIDISI (UTN- FRCON) Lavaise 610 Santa Fe, Santa Fe Salta 277, Concordia, Entre Ríos TE: 0342-4602390 Int. 258/107 TE: 0345-4214590 fbaroni.utn@gmail.com carlos_chezzi@frcon.utn.edu.ar anrotym@santafe-conicet.gov.ar RESUMEN La variedad de herramientas para el diseño de aplicaciones de comercio electrónico, así como la posibilidad de compartir servicios entre asociados a nivel de estrategia de negocios, ha generado la necesidad de nuevas arquitecturas de recursos informáticos para la implementación de sitios Web. Las plataformas tradicionales proponen una arquitectura en capas de servidores, que implementan las aplicaciones en forma centralizada. Los nuevos modelos de negocios requieren la interacción de aplicaciones heterogéneas, dispersas geográficamente. Por ello, se debe pensar en arquitecturas distribuidas que soporten diferentes tecnologías. El objetivo del trabajo es presentar una herramienta BPEL para el diseño de aplicaciones distribuidas, con tecnologías de servicios Web, que integre operaciones de manera transparente y con independencia del lenguaje de programación. Se plantea un modelo de consulta a una Base de Datos como servicios Web y se lo implementa en la herramienta Intalio. Como resultado se obtiene una aplicación Web que hace uso del modelo implementado para ofrecer un servicio de búsqueda de Libros. Palabras Claves: Comercio Electrónico, Modelado, Aplicaciones, Servicios Web, Intalio. CONTEXTO El trabajo se desarrolla en el marco del proyecto Herramientas de Evaluación de Performance de Sistemas de e-business, homologado en el Programa de Incentivos del Ministerio de Educación, Ciencia y Tecnología y de la tesis doctoral Modelado y Simulación de Desempeño de Procesos de Comercio Electrónico. Los autores son integrantes del Centro de Investigación en Ingeniería de Sistemas de Información (CIDISI) de la Facultad Regional Santa Fe de la Universidad Tecnológica Nacional (UTN). 1. INTRODUCCIÓN Las plataformas tecnológicas tradicionales de comercio electrónico tipo B2C (Business-to- Consummer) se basan en modelos cuyos recursos informáticos son centralizados, con una arquitectura en capas de servidores que implementan la interfaz de usuario (Servidor Web), su lógica de negocios (Servidor de Aplicación) y el acceso a Bases de Datos (Servidor de Base de datos) [1]. Los modelos actuales de comercio electrónico proponen dos perspectivas, una estrictamente transaccional [2] representada por las funcionalidades del sitio y vinculadas a la tecnología y otra organizacional [3], referidas a las estrategias de negocios y redes de asociaciones. Dichas redes requieren arquitecturas dinámicas, que integren aplicaciones en plataformas heterogéneas, procurando un alto grado de interconexión de operaciones [3]. La arquitectura cliente-servidor no permite implementar soluciones que soporten comunicación entre aplicaciones con independencia de la plataforma y lenguaje de 517

programación [4]. Por tanto, se necesitan tecnologías y herramientas que integren aplicaciones distribuidas. Los servicios Web [3] son aplicaciones que están disponibles en Internet y utilizan estándares para lograr interoperabilidad a través de la Web, de modo que los servicios puedan ser vistos y accedidos en forma independiente al lenguaje y tecnología. El modelo arquitectónico basado en servicios Web está centrado en las aplicaciones, con comunicaciones que se realizan directamente entre estas de forma transparente [5]. Los procesos de comercio electrónico requieren la representación de sus interacciones, los servicios Web por sí mismos, no soportan la posibilidad de modelar los procesos y sus conexiones inter-organizacionales. Esto trae la necesidad de orquestar [6] servicios Web, es decir, establecer patrones para gestionar las interacciones entre ellos. WS-BPEL o BPEL (Web Service Business Process Executation Language) es un lenguaje de programación que describe procesos de negocios que orquestan servicios Web [7]. El objetivo de este trabajo es presentar una herramienta BPEL para el diseño de aplicaciones de comercio electrónico con servicios Web y mostrar un caso de implementación para consultas de libros a una Base de Datos.. 1.1. Servicios Web y Herramienta BPEL La arquitectura de servicios Web se basa en tres roles fundamentales: (i) Proveedor del servicio Web: implementa la funcionalidad del mismo y lo hace disponible, (ii) Cliente: consume los servicios que ofrece el proveedor mediante el envío de requerimientos XML (Extensible Markup Language) y (iii) Registro de servicios Web: ubicación donde proveedores publican sus servicios y clientes buscan servicios para consumir [4]. Los proveedores usan WSDL (Web Services Description Language) para describir sus servicios, dar información sobre sus funciones de negocio e invocación. Los clientes y proveedores se comunican con el protocolo de mensajes SOAP (Simple Object Access Protocol), escrito en XML y utilizado para enviar requerimientos y recibir respuestas. Los registros de servicios Web son opcionales y se implemen utilizando el protocolo UDDI (Universal Description, Discovery, and Integration) [5]. Intalio BPMS es una herramienta BPEL de código abierto, que permite diseñar modelos en la notación BPMN (Business Process Management Notation) [8]. Está compuesta por: (i) Intalio Designer: herramienta utilizada para diseñar los modelos, (ii) Intalio Server: servidor BPEL que ejecuta los procesos [9]. A partir del modelo BPMN la herramienta genera el código BPEL [10] a ejecutar en Intalio Server, y define los archivos WSDL y XSD (XML Schema Definition) para que los servicios Web puedan ser invocados por un cliente. 1.2. Modelo de Consulta a Base de Datos El modelo propuesto se plantea en la figura 1 y que muestra la relación entre un servidor de servicios Web y un servidor Web que hace uso de los mismos de forma directa, sin implementar el protocolo UDDI para referencia de búsqueda. La operación a realizar por un usuario consiste en la consulta a una Base de Datos que contiene información de libros. A través de un formulario se ingresa el dato clave de búsqueda. El servidor Web utiliza este dato para realizar una consulta a la Base de Datos mediante la invocación de un servicio Web, el cual es ejecutado en un servidor remoto. Una vez obtenida la respuesta, se responde al usuario la información resultante. Se define un Pool por cada participante del proceso: Servidor Web (representa la interfaz con el usuario), Servidor de Servicios Web (ejecuta el proceso de negocio) y Servidor de 518

Base De Datos (pone a disposición un servicio Web de consultas a una base de datos por Internet). Figura 1. Modelo Intalio consulta con servicios Web. Luego se definen las tres actividades principales: invocación del proceso (realizada por el servidor Web), consulta al servidor de Base de Datos (ejecutada por el servidor de Servicios Web) y la consulta a la base de datos propiamente dicha. Por último se diseñan los esquemas XML a intercambiar entre el Cliente y el Servidor (Título (incluye el título a buscar) y Resultados (incluye Titulo, editorial, autor y precio). Se crea un perfil de conexión a la base de datos para luego realizar las consultas. Como motor se utiliza MySQL y como cliente, PHPMyAdmin. Se definen tablas que contienen la siguiente información: Titulo, Autor, Editorial y Precio, así como la consulta a realizar por el Servidor de Base de Datos (en lenguaje SQL, sin especificar el título a buscar, ya que este va a ser definido en el momento de la ejecución del proceso). Con esta consulta, se define el servicio que ofrece el Servidor de Base de Datos. Esta actividad intercambia información por medio de mensajes SOAP con el Servidor. Recibe un título y devuelve todos los datos referidos al mismo. El contenido de los mensajes SOAP intercambiados entre los tres participantes se especifica utilizando la herramienta Data Mapper. Esta asignación de datos se realiza de una manera gráfica y se puede observar en la figura 2. Figura 2. Utilización de la función Data Mapper en la herramienta Intalio Designer De este modo, el proceso de negocios ha sido totalmente definido. Se procede a ejecutar la operación Deploy, la cual valida el modelo BPMN y genera el código BPEL correspondiente. Dicho código se ejecuta en Intalio Server. El proceso comienza con un evento específico, que en nuestro caso es el momento en que el 519

servidor recibe un mensaje XML que contiene el título del libro a buscar. Luego de probar su correcta ejecución en la consola de Intalio Server, se descargan los archivos WSDL y XSD para ser almacenados en un servidor Web ubicado en la misma máquina donde se ejecuta el servidor de Servicios Web (para que estén disponibles para los clientes que lo necesiten). Se realizan modificaciones al archivo WSDL que define el servicio Web para que sea accesible en la red utilizada. Para la implementación del Cliente que hará uso de los servicios Web se eligió el lenguaje de programación PHP y la librería nusoap en particular. El cliente es ejecutado en un Servidor Web ubicado en una máquina diferente que el servidor de Servicios Web. El usuario visualiza una página web donde hay un formulario en el cual ingresa el título del libro a buscar y el Servidor Web se encarga de ejecutar el Cliente de Servicios Web para obtener los datos requeridos. El Servidor de servicios Web recibe desde el Servidor Web un mensaje del tipo request y con los datos del mismo, ejecuta el proceso previamente definido y envía un mensaje response correspondiente al Servidor Web. Luego el Servidor Web muestra los datos contenidos en el mensaje en una nueva página Web para que el cliente los visualice. 1.3. Ventajas y Desventajas del modelo propuesto Gracias al uso de este modelo se puede modificar la lógica del proceso de negocios, como por ejemplo agregar bifurcaciones y sentencias if-else sin tener que modificar la Base de Datos utilizada o el código que la invoca en el Servidor Web. Al mismo tiempo la interfaz del usuario (diseño del sitio en el Servidor Web) y/o el código PHP ejecutado en el servidor pueden variar sin la necesidad de cambiar la lógica del proceso de negocio implementado en Intalio BPMS. Si bien el uso de una arquitectura distribuida libera la carga del Servidor Web, con una posible mejora de performance, los servidores involucrados deben estar activos simultáneamente para ofrecer la funcionalidad esperada, con el costo de seguridad y replicación. A esta desventaja se le agrega el hecho que ante un servidor congestionada se degrada la performance en todo el proceso. Este modelo dificulta las mediciones de calidad de servicio, ya que cuando el sitio no cumple con los parámetros de calidad esperados, es incierta la identificación y localización de los cuellos de botella en el sistema [4]. 2. LÍNEAS DE INVESTIGACIÓN Y DESARROLLO El grupo tiene como líneas generales de investigación: (i) modelado y simulación de negocios electrónicos, (ii) diseño de aplicaciones de comercio electrónico con nuevas tecnologías (iii) evaluación de desempeño de sistemas informáticos y redes. El presente trabajo se desarrolla en el marco de la segunda línea y los ejes de trabajo son: diseño de modelos de comercio electrónico en arquitecturas distribuidas, modelado de aplicaciones para la construcción de Sitios Web y gestión del negocio, integración de aplicaciones con independencia de la plataforma tecnológica a través de tecnologías de servicios Web y estudio de herramientas BPEL para la implementación de los procesos de comercio electrónico. 3. RESULTADOS OBTENIDOS ESPERADOS Se muestra Intalio BPMS como herramienta BPEL de modelado y diseño de aplicaciones distribuidas, con capacidades para realizar el modelo gráfico del proceso de negocio e implementar y generar el código a ejecutar en el Servidor de Servicios Web. La arquitectura propuesta consiste en tres servidores (servidor Web, servidor de Base de Datos y servidor de 520

servicios Web) que se comunican entre sí con protocolos HTTP y mensajes SOAP. Se implementó un cliente de servicios Web en un Servidor Web remoto que utiliza la funcionalidad ofrecida por el proceso previamente definido, para brindarle al usuario de la aplicación Web la posibilidad de buscar libros en una base de datos remota. Se está trabajando en el modelado e implementación de nuevas funcionalidades de negocio: autenticación y registro de usuarios, agregar productos al carro de comprar y gestionar cobros. De esta manera se espera obtener un sitio de comercio electrónico completo que utiliza tecnologías de servicios Web. 4. FORMACIÓN DE RECURSOS HUMANOS La dirección del grupo está a cargo de la Dra. Ana Rosa Tymoschuk, que para la formación de recursos humanos plantea un trabajo integrado de doctorando y becario investigador de grado en Ingeniería de Sistemas de Información. En el trabajo de tesis doctoral Modelado y Simulación de Desempeño de Procesos de Comercio Electrónico se estudian modelos de comercio electrónico sobre la base de asociaciones a través de la integración de servicios. Dichos modelos son presentados en el formalismo DEVS (Discrete Event System Specification) para su simulación. En el trabajo de investigación Herramientas de Evaluación de Performance de Sistemas de e- Business, se implementan los modelos de comercio electrónico como aplicaciones distribuidas en herramientas BPEL. Con la implementación de los procesos de comercio electrónico en la herramienta Intalio se desarrollan herramientas de diseño de aplicaciones distribuidas de comercio electrónico y se validan los modelos de simulación propuestos en la tesis doctoral. 5. BIBLIOGRAFÍA 1. Menascé, Daniel A. Scaling Web Sites through Caching. IEEE Internet Computing, vol. 7, nº 4, pp 86--89 (2003) 2. Soto Acosta, P. Meroño Cerdan, A.: Evaluating Internet Technologies Business Effectiveness. Telematics and Informatics, vol. 26, n 2, pp. 211--221 (2009) 3. Kulkarni, N. Kumar, S. Mani, K. Padmanabhuni, S.: Servicios Web: E- Commerce Partner Integration. IEEE Computer Society IT Pro, pp. 23--28 (2005) 4. Dezhgosha, Kamyar. Angara, Swathi. Servicios Web for Designing Small-scale Web Applications. In proceeding IEEE International Conference on Electro Information Technology (2005) 5. World Wide Web Consortium W3C, http://www.w3.org. 6. Guido C., Lucchi, R., Mazzara M.:A Formal Framework for Web Services Coordination. Electronic Notes in Theoretical Computer Science, vol 180, pp. 55--70 (2007). 6. Kim, J., Huemer, Ch.:From an ebxml BPSS choreography to a BPEL-based implementation. ACM SIGecom Exchange, vol. 5, n. 2 (2004) 7. Lucchi, R., Mazzara, M.:A pi-calculus based semantics for WS-BPEL. The Journal of Logic and Algebraic Programming, vol. 70, n 1, pp. 96--118 (2007) 8. http://bpms.intalio.com 9. http://community.intalio.com/referenceguides.html 10. http://community.intalio.com/tutorials- 6.0.html 521