Integración de BPM a Webform, Parte 1: Human tasks en Business Space usando Lotus Webform Server

Las compañías hoy en día afrontan una serie de desafíos relacionados con la eficiencia operativa. En particular, existen muchos procesos empresariales en una determinada organización que resultan innecesariamente poco prácticos debido a la falta de un esfuerzo coordinado. Estos procesos a menudo son de tipo manual y son propensos a errores. El desarrollo de una serie de procesos empresariales bien organizados que incluyan una combinación de tareas humanas y servicios automatizados diferenciará a una compañía de sus competidores mediante la modernización de las operaciones y la reducción de las pérdidas.

La versión 7 de IBM WebSphere Dynamic Process Edition proporciona a los especialistas en IT y a los expertos empresariales las herramientas necesarias para definir el proceso integral, y junto con Lotus Forms 3.5.1, las organizaciones pueden comenzar rápidamente a integrar aplicaciones empresariales que combinan tecnología de formularios de primera clase con un sólido motor de proceso.

Jeff Brent, Senior Software Engineer, IBM

Jeff Brent trabaja como Ingeniero Senior para la organización de desarrollo de WebSphere BPM. Desde 2005, Jeff ha sido miembro del equipo SWAT de WebSphere Process Server y es responsable de la resolución de los problemas y las quejas de los clientes.



23-09-2010

WebSphere BPM y Lotus Webform Server

Introducción

Esta serie de artículos acelera la adopción de los productos de WebSphere Business Process Management (BPM) y Lotus Form Technology mediante la definición de escenarios de desarrollo y producción claves. Esta serie de artículos lo guía en las tareas de instalación y configuración necesarias para el equipo de desarrollo y para un entorno de producción. Hemos incluído una aplicación de muestra junto con el artículo que usted puede utilizar para validar la instalación y la configuración de sus entornos. Por favor consulte el siguiente artículo para acceder a instrucciones detalladas de cómo crear una aplicación utilizando las tecnologías de WebSphere BPM y Lotus Form.

Tenga en cuenta que WebSphere Dynamic Process Edition (WDPE) se utilizó en la creación de este artículo. Este producto incluye las capacidades actuales de WebSphere Process Server y WebSphere Business Monitor.

La Parte 1 de esta serie de artículos (este artículo) determina el contexto para el resto de la serie describiendo brevemente las ventajas del uso de la tecnología de formularios y suministrando una descripción de alto nivel de estos productos dado que son utilizados en forma conjunta.

La Parte 2 de esta serie se centra en el aspecto del modelado y la integración del desarrollo del ciclo de vida del proyecto y analiza cómo los analistas empresariales y los desarrolladores de IT ponen en marcha el soporte integrado de Lotus Forms en WDPE 7 para redactar y verificar los formularios de Lotus.

La Parte 3 de esta serie le proporcionará una mirada detallada de cómo crear las topologías distribuidas y locales de Webform Server. También servirá de guía para la creación de un cluster de Webform Servers y para obtener alta disponibilidad en la solución integrada.


Caso de uso de muestra

WebSphere BPM suministra una serie diversa de capacidades que tienen por objetivo resolver una amplia variedad de problemas empresariales. Los productos de BPM son utilizados para crear soluciones que puedan emplearse para aliviar el estrés que provocan estos problemas empresariales.

El artículo al que nos referimos anteriormente describe un vendedor a usuarios finales ficticio que está preparando una campaña publicitaria. El administrador de la campaña es responsable de aprobar la campaña. La aplicación para implementar el proceso de aprobación, SalesPromotion, es un proceso empresarial simple (BPEL) con una única Human Task, 'Approve Request' (aprobar solicitud). Este proceso se observa en el siguiente diagrama y el proyecto de WebSphere Integration Developer que incluye este proceso puede descargarse junto con esta serie de artículos.

Figura 1. BPEL simple para publicidad en almacenes
BPEL simple para publicidad en almacenes

En esta implementación, la tarea humana 'Approve Request' se presenta como formulario. Los detalles de la tarea humana pueden visualizarse haciendo clic en el nombre de la Human Task (tarea humana) en la sección details. Esto le mostrará las configuraciones actuales de la tarea. En este caso, se ha seleccionado la figura 2, una interfaz de usuario de Lotus Forms.

Figura 2. Configuraciones de la Human Task
Configuraciones de la Human Task

Cuando se selecciona 'Generate Human Task Interface' del menú del contexto del módulo, y se genera el formulario para 'Approve Request', un archivo 'xfdl' (Extensible Forms Description Language) será generado y colocado en la carpeta del módulo. Al desplegarse en WebSphere Process Server, el archivo de los formularios (xfdl) será almacenado en la carpeta WebContent (o en el proyecto web seleccionado).

Figura 3. Archivo xfdl NewPromotionForm en recursos físicos
Archivo xfdl NewPromotionForm en recursos físicos

Este archivo, NewPromotion.xfdl, almacena todos los formularios necesarios – en el caso de una aplicación multi-formulario – y cuando un usuario crea o abre una tarea humana mientras se ejecuta un proceso, estos formularios son enviados a Lotus Forms Webform Server. La tarea de Webform Server, en este punto, es convertir el 'formulario' a HTML y regresarlo a Business Space para su visualización. Si usted posee Lotus Forms Designer instalado en WebSphere Integration Developer (WID), al abrir NewPromotionForm podrá editar y personalizar el formulario.


Visión general de WebSphere Business Process Management

Los productos de WebSphere Business Process Management (BPM) ofrecen los elementos fundamentales necesarios para desarrollar soluciones empresariales para diversas necesidades. Las herramientas que ofrece WDPE suministran un entorno de desarrollo rico para que los analistas empresariales y los desarrolladores de integración modelen, diseñen e integren aplicaciones. Al desplegarlas en WebSphere Process Server, estas aplicaciones permiten el uso de partes críticas de la actividad principal de la empresa. En esta sección le brindamos una visión general de los componentes más importantes de los productos de WebSphere BPM.

El flujo de trabajo humano

WebSphere BPM ofrece las capacidades necesarias para crear soluciones de flujo de trabajo escalables basadas en el hombre. El motor del proceso para BPM se implementa usando el estándar BPEL y es ejecutado en WebSphere Process Server. WebSphere BPM ha extendido la especificación para abarcar escenarios de flujo de trabajo humano más complejos. El motor del proceso suministra acceso seguro (basado en el roles) a datos críticos del proceso. Además, el motor del proceso brinda capacidades avanzadas para escalar y asignar trabajo además de mejorar la capacidad de crear aplicaciones empresariales flexibles y sólidas

Los siguientes ejemplos muestran cuando este tipo de tecnología puede apalancarse en múltiples industrias.

Salud

  • Procesamiento de información de nuevos pacientes
  • Aprobación/rechazo de solicitudes

Telecommunicaciones

  • Revisión y aprobación de contratos
  • Facturación y cobranza

Venta a usuarios finales

  • Administración de campañas
  • Planificación publicitaria

Servicios públicos

  • Despacho de servicios y asignación de rutas
  • Administración de clientes y conciliación de cuentas

Business Space

WebSphere Business Space es el framework de interfaz de usuario basado en web 2.0 incluido en WebSphere Process Server. El framework proporciona las bases para el desarrollo de aplicaciones empresariales y soluciones de monitoreo (denominadas spaces -es decir, espacios). Los Spaces tienen una o más páginas, que a su vez poseen uno o más widgets, cada uno de los cuales consume una parte de la propiedad de la página.

Figura 4. Business space
Business space

Varios spaces y widgets predefinidos son entregados junto con los productos BPM. La información puede fusionarse rápida y fácilmente en la empresa usando widgets ocupados por servicios Representational State Transfer (REST) suministrados por los componentes de los productos WebSphere BPM. Además de estos spaces que se suministran, el framework personalizado permite a los usuarios empresariales personalizar las vistas de información para conocer las necesidades, las cuales cambian constantemente. Business space es una aplicación web segura que soporta la autenticación y el acceso basados en roles.


Visión general de Lotus Forms

Las tecnologías de Lotus Web Form brindan un complemento excelente a la WebSphere BPM suite. La tecnología de formularios integrada permite a los usuarios integrar formularios de primera clase utilizando estructuras de datos actuales. La profundización de las capacidades y la protección de los controles de flujo forman una parte integral de los productos relacionados con el flujo de trabajo humano y Lotus Forms, los cuales aceleran la implementación y el despliegue de soluciones mediante el suministro de herramientas y servicios de traducción necesarios para el ingreso de datos. La facilidad de uso de los productos, le permite a los usuarios integrar rápidamente aplicaciones empresariales y reducir los costos generales del diseño de la interfaz del usuario.

Lotus Designer

Lotus Designer es una herramienta basada en Eclipse para el diseño de nuevos formularios o la edición de formularios generados en WID o WebSphere Business Modeler (WBM). Los diseñadores de procesos y los desarrolladores de IT pueden arrastrar y soltar rápidamente elementos y controles de datos en una paleta de diseño.

Lotus Forms Server

Lotus Forms Server es el componente del tiempo de ejecución del producto. Webform Server, parte de Lotus Form Server traduce el formulario a HTML para visualizarlo en un navegador. Una vez completo, el usuario lo envía para su procesamiento, punto en el cual Webform Server vuelve a traducir el HTML a XPDL.


Combinación de la automatización de procesos y la tecnología de formularios

La combinación de la automatización de procesos (WebSphere BPM) y tecnologías de formularios puede proporcionar ventajas competitivas fundamentales en escenarios empresariales relacionados con el flujo de trabajo humano. Al automatizar tareas empresariales tradicionales basadas en papel, el papel puede reemplazarse por formularios muy similares que aumentan rápida y eficientemente la productividad del usuario final.

Siempre que una tarea humana sea incluida en un BPEL de larga ejecución, debe decidirse qué tecnología utilizar al presentar esta tarea. WebSphere BPM suite le brinda algunas opciones en tecnología user interface (UI): WebSphere Portal, JavaServer Faces, HTML simple con Dojo y ahora también una integración de fuerte acoplamiento con Lotus Forms.

Las últimas dos de estas opciones de interfaz de usuario pueden integrarse con Business Space pero Lotus Forms requiere infraestructura adicional para la visualización de los formularios. Para visualizar formularios desplegados en Lotus Webform Server y trabajar en ellos no es necesario que haya un visualizador en la máquina del cliente. Los usuarios pueden visualizar Lotus Forms e interactuar en él desde cualquier navegador.

Para integrar formularios con Business Space es necesario que el servidor de Business Space se comunique con Lotus Webform Server. Esta información recupera el formulario asociado con una Human Task específica, dado que el Webform Server suministra un fragmento HTML que representa ese formulario.

El flujo entre Business Space y Webform Server puede observarse en la figura 4.

Cuando Business Space encuentra un formulario de Lotus (XFDL) inmediatamente trata de enviarlo al servlet proxy bSpaceWebformEnabler (ruta 'FormEntry' en la figura 4).

Figura 5. Propiedad personalizada de la URL raíz del Proxy
Propiedad personalizada de la URL raíz del Proxy

Business Space localiza bSpaceWebformEnabler con bspaceWebformsProxyRootid.url, que puede encontrarse accediendo a Resources > Resource Environment > Resource Environment Providers > Mashup Endpoints > Custom Properties en la consola de administración.

La tarea del servlet proxy es enviar el XFDL al Webform Server llamando a la aplicación Translator. El valor de configuración utilizado por el servlet para localizar el Webform Server puede encontrarse accediendo a Applications > Enterprise Applications > BspaceWebformEnabler > Initialize parameters for servlet y se encuentra en el formulario http://<host>:<port>/translator.

Figura 6. URL de Webform Server
URL de Webform Server

La aplicación translator recibe el XFDL y verifica la caché de Webform Server en busca de una versión guardada del archivo. Si existe alguna, se recupera y se utiliza. De otro modo, el archivo es convertido a DHTML y enviado de regreso, a través del servlet proxy a Business Space para su traducción.

Después de presionar submit (enviar) en el formulario de la versión de DHTML de ese formulario, este enviado de regreso a Webform Server para ser convertido nuevamente a XFDL.

Durante cualquier llamada al Webform Server se obtienen los formularios generados – tanto XFDL como DHTML . Si la caché está llena, las entradas antiguas son desplazadas por los nuevos formularios.


Ciclo de vida del proyecto

En cualquier proyecto existen niveles de desarrollo y de prueba. Los proyectos por lo general poseen una estructura que hace que la organización de desarrollo utilice un entorno instalado y configurado para el desarrollo iterativo. Eventualmente, los dispositivos de desarrollo son "promocionados" al entorno de producción para las operaciones empresariales en vivo. El escenario de BPM en general puede representarse de la siguiente forma.

Figura 7. Promoción a la producción
Promoción a la producción

Las soluciones desplegables en el formulario de los archivos Module/EAR pueden administrarse mediante un sistema de dirección con control de cambios. Estas soluciones han sido probadas y son utilizadas con una variedad de técnicas y criterios a medida que pasan de un entorno al otro. Estos entornos pueden definirse de la siguiente forma:

Desarrollo – verdadero entorno de desarrollo iterativo.

UAT - User Acceptance Test que incluye la prueba funcional que validaría que las capacidades empresariales adecuadas están presentes.

Presentación – La prueba de Stress, Performance y alta disponibilidad es realizada en la solución para validar el nivel adecuado de rendimiento y disponibilidad bajo las condiciones esperadas durante la producción.

Producción – En entorno utilizado para conducir operaciones empresariales utilizando datos en vivo.

Para esta serie de artículos estos entornos se encuentran divididos en dos tipos básicos; Entornos de Desarrollo de Soluciones y Entornos de Despliegue de Producción.

  1. Desarrollo de soluciones – Estos entornos son utilizados para el modelado, el desarrollo de proceso y la prueba de unidades de formularios iterativos. (Este tipo de entorno incluye el Entorno de desarrollo.)
  2. Despliegue de producción – Estos entornos apalancan las opciones de topología de Network Deployment (ND) suministradas por WebSphere Process Server. Las opciones apalancadas incluyen clusters configurados para alta disponibilidad. (Este tipo de entorno incluye los entornos UAT, de pre-producción y de producción.)

Tipo de entorno de desarrollo de solución

Durante los niveles de desarrollo de la solución, el equipo interactuará con las herramientas de modelado y desarrollo BMP. En nuestro escenario la organización de desarrollo utilizará los siguientes productos:

  • WebSphere Process Server Integrated Test Environment dentro de WebSphere Integration Developer o WebSphere Business Modeler y la capacidad de desarrollo del proceso interactivo
  • Lotus Forms Designer
  • Lotus Form Server

Los analistas empresariales y los arquitectos de servicios trabajan juntos para construir soluciones empresariales confiables usando un enfoque iterativo. Cada parte de la solución es implementada en varios niveles del ciclo de vida del proyecto. Los entornos de prueba son configurados de modo que el equipo de desarrollo pueda colaborar y desplegar rápidamente iteracciones para pruebas de unidades y la verificación de la funcionalidad creciente.

Figura 8. Interacción de herramientas
Interacción de herramientas

La configuración de la topología para este enfoque iterativo es el punto principal de la parte 2 de la serie de artículos.

En esta serie de artículos se incluye un archivo de intercambio de proyectos que le permitirá familiarizarse con la configuración del entorno antes de que su aplicación esté lista para el desarrollo iterativo.

Tipo de entorno de despliegue de producción

Estos entornos son creados usando la tecnología fundamental de WebSphere Application Server Network Deployment (ND). Esta tecnología le permite a los administradores de los sistemas crear una topología de despliegue que apalanque múltiples nodos (máquinas físicas) y clusters (procesos de la aplicación que abarcan recursos físicos). El resultado es un entorno de toleración de fallos que puede escalar fácilmente mediante la incorporación de recursos físicos adicionales al entorno BPM.

La topología típica de producción puede describirse de la siguiente forma:

Figura 10. Topología típica de producción
Topología típica de producción

Los entornos típicos de producción son instalados y configurados en base a una serie de criterios comunes.

  • Alta disponibilidad
  • Escalabilidad
  • Facilidad de administración

En la parte 3 de este artículo, le mostraremos al lector los pasos necesarios para instalar un entorno como este y le describiremos las opciones para el despliegue, incluso cómo incluir Lotus Forms Server. El archivo suministrado Module/EAR puede utilizarse para verificar la instalación después de que todos los pasos estén completos.

Recursos

Aprender

Obtener los productos y tecnologías

  • Evaluate IBM products en la forma que más le convenga: descargue pruebas de productos, puebe productos en línea, use un producto en un entorno nube, o pase algunas horas en SOA Sandbox aprendiendo a implementar la arquitectura orientada al servicio de manera eficaz.

Comentar

  • Participe de My developerWorks community . Conéctese con otros usuarios de developerWorks mientras explora los blogs administrados por los desarrolladores, los foros, los grupos y los wikis.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=SOA y servicios web , WebSphere, Lotus
ArticleID=606153
ArticleTitle=Integración de BPM a Webform, Parte 1: Human tasks en Business Space usando Lotus Webform Server
publish-date=09232010