2009-01-12 4 views
17

Recientemente publiqué una pregunta sobre el flujo de trabajo de Windows que se ejecuta en una aplicación web. De acuerdo, era una pregunta bastante técnica que contenía términos como ManualWorkflowSchedulerService, HandleExtrenalEvent, etc ... obtuvo aproximadamente 15 visualizaciones en el transcurso de 20 días.¿Adoptaste con éxito Windows Workflow en una aplicación web del mundo real?

Aunque lo más probable es que sea cuestión de no hacer la pregunta correctamente, me hizo pensar en la adopción del flujo de trabajo de Windows en aplicaciones del mundo real, especialmente en aplicaciones web.

¿Ha implementado con éxito aplicaciones de Internet del mundo real con WF y mirando hacia atrás, ha recuperado la inversión de su tiempo (dinero)?

Respuesta

10

Usamos el flujo de trabajo de máquina de estado para administrar un par de procesos de solicitud de servicio con aproximadamente 10 estados cada uno. No estoy seguro de si fue 100% la elección correcta, porque implementar un diseño de máquina de estado simple hubiera sido más simple (tal vez sufrimos aquí de BDUF).

El mayor inconveniente para nosotros fue la curva de aprendizaje. Quiero decir, el flujo de trabajo es prácticamente una versión simplificada de biztalk (¡gratis!).

De la parte superior de mi cabeza, estas son las áreas que hemos beneficiado de WF:

  • que aloja el servicio de flujo de trabajo como nos obligó a desacoplar el flujo de trabajo de nuestros otras capas, y esto (por lo lejos) ha sido un diseño bastante decente.
  • Hemos sido capaces de interactuar fácilmente con el flujo de trabajo de varios aplicaciones utilizando la host de servicio de flujo de trabajo proporcionado
  • Servicio de rastreo ofrece buenas métricas de negocio
  • servicio en tiempo de ejecución y el servicio de persistencia son estables
  • Los cambios en los flujos de trabajo en ejecución son complicados pero funcionan mejor que si hubiéramos intentado hacerlo nosotros mismos

Siempre trato de recordar que realmente es una base. Como desarrollador/arquitecto, debe comprometerse a construir algo útil además de eso.

+1

Hice una presentación sobre Windows Workflow en mi empresa y sus últimas 2 frases fueron una parte importante de mi presentación. La gente puede olvidar fácilmente que WF es una base sobre la cual * necesita * construirse. – Tundey

5

Utilicé Windows Workflow en una aplicación web diseñada para administrar el ciclo de vida de las solicitudes de control de cambios en un sistema empresarial. Ciertamente busqué en él, y definitivamente no hice muchas cosas correctamente, pero funcionó bastante bien y estaba satisfecho con la facilidad con la que podía cambiar las reglas sin escribir aún más código.

Sin embargo, una vez que finalicé el proyecto, la persona que lo heredó decidió que no le gustaba WF o no quería aprenderlo, por lo que la aplicación murió y volvieron a usar correos electrónicos y llamadas telefónicas. Entonces, la implementación fue exitosa, pero la inversión en última instancia fue un desperdicio.

+2

Tuve una experiencia muy similar. Lo que me estaba volviendo loco fueron todas las muestras de consolas y aplicaciones de Windows y muy poca guía para hacerlo bien en las aplicaciones web. – Tom

1

Mi experiencia fue similar a la de Out Into Space, habíamos analizado el uso de WF para controlar un proceso de ordenamiento variable y variado, en varios escenarios B2B. Lo último que supe es que estaban en el proceso de destriparlo.

Creo que es difícil para muchos desarrolladores pensar en términos de flujo de trabajo.

1

He implementado 3 aplicaciones. 2 son aplicaciones ASP.NET y 1 del flujo de trabajo se implementó en un entorno de SharePoint.Mirando hacia atrás, creo que la inversión valió la pena. Como dijo el chico anterior, WF es un marco en el que tienes que construir. Es una capa más de la que preocuparse, pero los beneficios superan los costos.

2

hola Tom realmente no creo que WF brilla bien cuando estamos usando aplicaciones web porque lo más probable es que vamos a usar DB para persistir afirmar que usted ha hecho exactamente la pregunta que tenía en mente que habíamos usado WF en nuestra producción entorno y da muchos problemas cuando estamos actualizando de una versión a otra en segundo lugar tiene muchas limitaciones, es decir, no es compatible con la transacción ambiental creo que deberíamos esperar la versión 4 o 5 para ver si tiene algo mejor que ofrecer

Cuestiones relacionadas