Archivo

Archivo para Mayo, 2008

Arquitectura WF

Viernes, 16 de Mayo de 2008

Windows Workflow Foundations (WF) es parte del Framework 3.0 (y los posteriores claro). Microsoft nos hace la siguiente division del WF :

  • Actividades: Es la unidad básica de trabajo que necesita ser ejecutada. Son bloques fáciles de crear, de agregar código en ellas y además podemos componer una actividad con otras actividades (ya hay algunas actividades prediseñadas como la ejecución en paralelo, el if/else, o las llamadas a web services).
  • Modelador de Workflows: Te permite una composición gráfica de los workflows mediante la composición de actividades. Realmente te hace la vida muy fácil.
  • Workflow Runtime: Es el motor de WF, ejecuta las actividades que conforman el workflow.
  • Reglas: WF tiene un motor de reglas que permite la programación declarativa.

La arquitectura es la que sigue :

Arquitectura WF

Entre otras cosas, esta arquitectura permite que una vez definido un workflow, puede ser hospedado en cualquier clase de aplicacion (siempre que sea de microsoft ;) ), puede funcionar en un servicio de Windows Communication Foundation, servicio Web, pagina Web, aplicacion Windows Form, aplicación de consola o servicio Windows, dependiendo de las necesidades de tu aplicación. WF y tu aplicación se ejecutarán concurrentemente.

Después de decir esto… igual puedes deducir que WF no es una programa que se ejecuta independientemente, necesita de un proceso host.

Arquitectura WF

Este es otro dibujo de la arquitectura… quizá mas facil de entender.

Workflow Runtime es el corazón de WF, éste inicializa las tareas de los workflows, dispara eventos para las diferentes situaciones, guarda informacion clave y usa los diferentes servicios de la figura. Será éste el que debemos de ser capaces de hospedarlo en nuestras futuras aplicaciones.

Ya he probado los servicios de tracking y de persistencia, y son más que interesantes… en el tema de tracking hay una aplicación para visualizar el funcionamiento de tus workflows llamada “WorkflowMonitor” y viene dentro de los ejemplos de Microsoft SDKs (WFSamples.zip). Ya comentaré mas sobre estos dos servicios puesto que no es sencillo, entre otras cosas necesitas configurar y acceder al SQL Server para funcionar.

jBoss jBPM, arquitectura

Miércoles, 14 de Mayo de 2008

“JBoss jBPM es un motor de Workflows y Business Process Management que permite la creación de procesos de negocio que coordina personas , aplicaciones y servicios.”

JBoss es un servidor de aplicaciones J2EE de código abierto implementado en Java, jBPM necesita de éste para ejecutarse. La arquitectura es la siguiente :

Arquitectura jBPM

Y tiene los siguientes componentes :

  • Un motor de workflows llamado “JBoss jBPM Core” que se encarga de la ejecución de las instancias de proceso
  • Una herramienta de definición de proceso llamada “jBPM Graphical Process Designer (GPD). Es un plugin para Eclipse, el cual le proporciona soporte para definir procesos en jPDL en formato gráfico y en formato XML. jPDL (jBPM Process Definition Language) es el lenguaje de proceso utilizado por el sistema.
  • La consola web JBoss jBPM que tiene dos funciones. Es un cliente web basado en workflows donde en el modo Home, los usuarios pueden iniciar y ejecutar procesos. También es una herramienta de administración y monitorización, que ofrece un modo Monitoring donde los usuarios pueden observar e intervenir en la ejecución de las instancias.
  • El componen identidad, que es el encargado de la definición de la información organizativa, como usuarios, grupos y roles que pueden ser asignadas a las diferentes tareas. Actualmente la definición de toda esta informacion esta hecha con directivas “insert” del SQL estandar en la base de datos del workflow.

Categories: jBPM Tags: ,