7.25.2006

Conceptos Básicos de Windows Workflow Foundation

En mi exploración de .NET 3.0, estoy dándo una revisada a uno de sus tres pilares (aunque pienso regresar a trabajar con WPF a la brevedad). Se trata del Windows Workflow Foundation. Este nos permite separar de manera muy efectiva la lógica de un proceso de negocio de su implementación en código. En mi opinión tiene el potencial de ayudarnos a definir aplicaciones mucho más flexibles. Predigo que se vana aplicar conceptos de workflow en aplicaciones donde nunca nos lo hubieramos imáginado (Para un ejemplo de este tipo, chequen esta aplicación .NET 3.0 que revisa inventarios de XBOX 360). A continuación algunos conceptos básicos:

Un flujo de trabajo de WWF siempre está compuesto de un conjunto de actividades. Estas son ejecutadas de manera asíncrona por un motor de ejecución provisto por WWF. Las actividades pueden ser simples o compuestas. Una actividad compuesta integra a más de una actividad simple. WWF provee un conjunto de actividades predefinidas y además permite que nosotros definamos cualquier otra con la funcionalidad que necesitemos.
WWF soporta dos tipos de flujos de trabajo:

· Flujo Secuencial: Es aquel donde se ejecutan una serie de actividades en una secuencia predefinida. Esta secuencia puede incluir operadores de control de flujo similares a los que han existido durante años en lenguajes de programación. Por ejemplo, operadores de decisión (if…else) o de iteración (while). Se utiliza para flujos donde nos interesa que el control lo tanga primordialmente el proceso definido.

· Flujo de Máquina de Estados: En este flujo las actividades se ejecutan dependiendo de el estado en el que se encuentre una máquina de estados, así como de las transiciones entre estos estados (que pueden ser iniciadas por las actividades mismas). Se utiliza normalmente para flujos donde se prefiere que el control recaiga mayormente en los usuarios del sistema.

Si quieren saber más, ojalá puedan asistir este próximo Viernes al WTC piso 35 en la Ciudad de México dónde voy a dar una platica nivel 100 de introducción a este tema.

No hay comentarios.: