2009-09-29 13 views
7

Supponiamo che stiate costruendo un'applicazione web basata su Python che richiede una gestione del flusso di lavoro come quella in jBPM o Windows Workflow Foundation. C'è una libreria che offre questo nel mondo Python?Workflow incorporabile/Libreria BPM per Python?

+0

Per suggerimento di Lennart di seguito espanderò quanto sopra. Il sistema sarà composto da più client che interagiscono con un livello intermedio, che, in parte, deve avere un sottosistema del flusso di lavoro di qualche tipo. Il sottosistema del flusso di lavoro esiste per creare un "BPM incorporato" in grado di gestire in modo flessibile i mutevoli requisiti di elaborazione. Il primo "client" di livello superiore sarà probabilmente un client Web che coinvolge CherryPy e AJAX nel browser. Il back-end sarà probabilmente PostGRES. Questo è un po 'mutevole. Quali altre informazioni posso aggiungere? – alphadogg

+0

Per aggiungere, dico "primo cliente" perché alla fine ce ne saranno altri, e non saranno necessariamente basati sul web, quindi qualcosa di troppo legato a Zope o qualche altro framework non funzionerà. Deve essere in grado di stare da solo. – alphadogg

+1

Il sistema del flusso di lavoro dovrebbe essere chiaramente nel livello intermedio, non nei client. I client devono quindi chiedere al livello intermedio quali transazioni del flusso di lavoro sono disponibili in base all'elemento e alla sicurezza. Se vuoi archiviare cose in postgres ti consiglio di usare sqlalchemy, e quindi SpiffWorkflow potrebbe funzionare, ma non l'ho usato e non so se va bene. Cerca il flusso di lavoro su PyPI, ma fai attenzione alla maggior parte dei prodotti disponibili per Plone. :) –

risposta

3

Oh sì, tonnellate. Ma la maggior parte di loro dipende da un quadro specifico. DCWorkflow è integrato con Zopes CMF, ad esempio. hurry.workflow è per Zope 3, ecc. SpiffWorkflow presume sql-alchemy, ecc. Questo perché è necessario avere qualcosa per applicare il flusso di lavoro, e ciò significa che devi fare alcune ipotesi di base sugli oggetti che usi.

Hurry.workflow è probabilmente uno dei più indipendenti, ma presuppone sempre che si usi la libreria Persistenza (e quindi in pratica ZODB) e il modello di sicurezza di zope3.

Quindi, probabilmente è necessario espandere un po 'delle vostre esigenze qui ...

+2

SpiffWorkflow sembra ** non ** presumere sql-alchimia, o almeno, non sto trovando alcun riferimento che punta in quella direzione. Potrebbe essere qualcosa che è cambiato da questo post ... Una rapida ricerca nella mailing list sembra indicare che [l'attuale meccanismo di persistibilità usa pickle] (http://groups.google.com/group/spiff-devel/browse_frm/ filetto/448348770062f96). –

+1

Era solito richiedere SQLAlchemy, sì. Il decapaggio è altrettanto limitante. –

Problemi correlati