Inicio > Cloud > Oracle Process Cloud Service a prueba

Oracle Process Cloud Service a prueba

Llevo un tiempo explorando las posibilidades que ofrece Oracle Process Cloud Service(PCS) y me voy convenciendo, cada vez más, de que se trata de una herramienta fiable, a la vez que sencilla, potente y muy bien adaptada al nuevo paradigma de ‘cloud computing. Se trata de una aplicación que facilita el trabajo colaborativo en la red. Su arquitectura, orientada a servicio, permite una integración funcional con el resto de aplicaciones construidas sobre la capa SaaS (Software como Servicio, una de las capas de la arquitectura Cloud Computing). PCS puede ser considerada una nueva capa de nivel superior (capa BPaaS, Business Process as a Service).

PCS_arq

PCS es una plataforma ideal para aquellas organizaciones que quieren comenzar el diseño y la automatización de sus procesos de negocio realizando una inversión inicial mínima.

El principal atractivo del software en la nube es que nos permite, desde el minuto cero, trabajar con las aplicaciones sin vernos obligados a adquirir los servidores, la infraestructura y el personal de administración que se precisan en el caso de los entornos tradicionales (on-premise).

PCS puede ser el entorno adecuado donde ejecutar todos nuestros procesos de negocio. Ciertos procesos con una complejidad muy alta, con las interfaces de usuario complejas o los procesos ya implementados en otras plataformas BPM, no serán buenos candidatos a correr dentro de PCS. Aquellos procesos que sean más sencillos o que vayan a ser creados desde cero, encajarán mejor en PCS. Si tenemos en cuenta que las buenas prácticas de modelado se fundamentan en no añadir excesiva complejidad a un único proceso y que los procesos grandes siempre pueden ser subdivididos en subprocesos más pequeños y manejables, veremos que PCS puede ser una buena opción.

Basada en el producto Oracle BPM 12c versión 12.1.X, utiliza SOAP y REST como únicos protocolos de comunicación con el resto de aplicaciones (también están disponibles unos cuantos adaptadores, los mencionaremos al final de este post). Tampoco incluye ciertas características existentes en la aplicación de la que proviene (BPM 12c). Al principio pensé que estas carencias serían un grave inconveniente a la hora de desarrollar tanto los procesos como las tareas humanas y no sería tan fácil comunicar PCS con otras aplicaciones. Pero según me voy familiarizando con sus herramientas, voy valorando más su potencial, me doy cuenta de que se puede modelar cualquier proceso sin echar en falta los extras disponibles en BPM 12c.

Vamos a echar un vistazo a las posibilidades de desarrollo de PCS, haciendo una breve comparativa con BPM 12c.

Revisemos el entorno de desarrollo, concretamente la sección denominada Business Process Composser, a la que se accede pulsando sobre DEVELOP PROCESS. Se trata de una interfaz web sencilla e intuitiva donde podemos crear los procesos, además de configurar el resto de los elementos que conforman la aplicación. Dentro de cada aplicación encontramos los distintos elementos o partes que la componen (Procesos, Formularios Web, Tipos de datos, Decisiones o Reglas de Negocio y las Referencias a los servicios web, veamos cada uno de ellos.

PCS_menu

Procesos

El diseño de procesos mediante BPMn es muy similar a como se hace con BPM 12c. El número de tareas, compuertas, mensajes y llamadas con los que nos encontramos es bastante más reducido, pero me resulta suficiente para diseñar procesos de baja o media complejidad. Seguimos pudiendo incluir llamadas a subprocesos, llamadas del tipo send and receive que hacen uso de conversaciones síncronas o asíncronas. No existen compuertas complejas, ni las basadas en eventos, que aún siendo elementos muy útiles para implementar ciertos patrones de diseño, podremos sobrevivir sin tener que usarlos.

PCS_bpm

Tipos de datos

Podemos diseñar nuestros tipos de datos de forma muy similar a como se hace en las versiones 11g y 12c. Se definen tipos complejos a partir de tipos primitivos (string, int, etc.), también podemos importar tipos externos desde un esquema (archivo .xsd), de tal forma que queden incorporados en el catálogo de la aplicación y se puedan usar posteriormente en los BPMs. No hay diferencia con el catálogo de la otra suite BPM 12c.

Decisiones

Una decisión es una función que, tras recibir una serie hechos (parámetros de entrada) y analizarlos mediante un conjunto de reglas o tablas de decisión, produce un hecho (valor de retorno) que normalmente servirá para decidir la ruta que debe tomar la ejecución del proceso a partir de ese punto. Se modelan en BPMn como una tarea separada (en la imagen anterior, el componente de color amarillo es una tarea de tipo Decision usado para decidir sin la intervención de usuario alguno si el proceso debe ir a la tarea de aprobación o tomar el camino alternativo).

Los Formularios Web

Aquí es donde encontramos la principal diferencia con las versión 12c. En la versión 12c la forma habitual de implementar las tareas humanas es utilizar formularios desarrollados con Oracle ADF. Aquí, la solución incluida en PCS son los Formularios Web. Con esta herramienta de construcción se generan formularios HTML estándar (combos, botones, campos de texto, etc.), su paleta de diseño ofrece un completo conjunto de componentes con los que poder diseñar de forma rápida.

PCS_form

En la versión on-premise, construimos los formularios de las tareas humanas mediante ADF, diseñamos las listas de valores y las entradas de los datos arrastrando y soltando tablas y campos desde los controles de datos creados automáticamente a partir de tablas de Base de Datos (el escenario más típico).

Ahora la forma de trabajar cambia bastante, para conseguir lo mismo, necesitamos trabajar un poco más y usar otra técnica de diseño. La herramienta de construcción de formularios web proporciona un elemento fundamental para conseguir datos dinámicos; las Reglas de Formulario. En realidad se trata de manejadores de eventos escritos en JavaScript, estas reglas pueden ser usadas, por ejemplo, para invocar servicios REST y recibir los datos que se precisan, estos datos se obtienen del servicio en el momento en que se inicializa el formulario. Así mismo, cada objeto del formulario posee sus propios eventos que también pueden ser manejados mediante JavaScript.

PCS_rules

En este escenario, nos damos cuenta de que necesitamos publicar los WSs que nos devolverán esos datos dinámicos en algún servidor de aplicaciones, una posibilidad es tenerlos también en Cloud, entonces es necesario disponer de una licencia de Java Cloud,  por otro lado, como alternativa a un sistema Cloud puro, se puede plantear un sistema Híbrido, donde los procesos de negocio se ejecutan en la nube (en PCS), mientras que los servicios (back-end) y la Base de Datos se localizan en las instalaciones de la empresa (on-premise).

Referencias a Servicios Web

Permite añadir referencias a servicios web basados en SOAP que luego se pueden utilizar desde las tareas de tipo servicio en BPMn. Lógicamente estas referencias se deben cargar en la aplicación antes de ser utilizadas, los formatos de archivo soportados son WSDL o un archivo zip que contenga el WSDL y todos los esquemas necesarios.

Integración

Hasta aquí, este breve vistazo a las herramientas de diseño de las aplicaciones. Seguiremos revisando el resto del entorno en otro post, ahí veremos las posibilidades que tiene el usuario de gestionar sus tareas y cómo se trazan las instancias.

También quiero comentar aquí otro tema sobre el que volveremos; la integración con otros productos:

  • La integración con Oracle Documents Cloud es quizá la más cuidada e interesante hoy por hoy. Muchos procesos de negocio necesitan recabar y poner a disposición de los participantes documentación de todo tipo (más bien, todos los procesos deberían incluir documentación). También podemos encontrar muchos procesos o subprocesos dedicados expresamente al manejo de la información que debe quedar registrada en forma de documento). Pues bien, PCS y Oracle Documents Cloud, se integran a la perfección y sin requerir mucho trabajo extra por parte de los diseñadores. En otro futuro post comentaremos más sobre el tema.

PCS_docs

  • Otras integraciones actualmente disponibles son las de PCS con redes sociales y PCS con dispositivos móviles (también incluidas out-of-the box con el producto).
Categorías:Cloud Etiquetas: , ,
  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: