I cookie ci aiutano a fornire i nostri servizi. Utilizzando tali servizi, accetti l'utilizzo dei cookie da parte nostra. Per saperne di più...Accetto

jBPM

jbpmIl Business Process Management (BPM), cioè la gestione automatica dei processi di business, è la naturale evoluzione delle metodologie di progettazione del software.

L'approccio BPM permette uno sviluppo agile dei processi di business:

  • Riduce il numero di attori che devono interpretare i requisiti (lo sviluppatore entra in un secondo tempo) e, di conseguenza aumentando la produttività.
  • Aumenta la velocità di costruzione dei prototipi (integrazioni simulate con sistemi esterni).

jBPM ( realizzato dalla JBoss) è una piattaforma open source per sviluppare e gestire processi applicati ai dati di business. La piattaforma è uno strumento ampiamente utilizzato, basato sulla tecnologia Java. 

L'installazione e l'uso dei componenti non richiedono costi per l'acquisto di licenze.

L'architettura

L'architettura di jBPM è strutturata su numerosi componenti appoggiati sulla JVM. La PVM è il motore che interpreta ed esegue i processi, scritti in diversi linguaggi (jPDL, BPEL, .. ). Il GPD è il designer, un plugin Eclipse che permette di disegnare e deployare i processi. Identity è il componente in grado di gestire utenti e permessi, e si può associare ad una directory aziendale. Il task Management si occupa della gestione dei task, ad esempio per l'interazione temporizzata con l'utente. Il componente Enterprise permette l'accesso ai componenti dell'infrastruttura Java Enterprise (EJB, Data Source, Code, etc..).

L'architettura jBPM fornisce un sistema ampiamente collaudato e un architettura flessibile. Il Process Engine gira sul sistema interno e colloquia con il database contenente i dati di business. Si noti che è possibile configurare il sistema praticamente con ogni database noto. Il Process Designer è un applicazione esterna tramite la quale si sviluppano i processi e colloquia con il Process Engine per il deployment (distribuzione o la messa in produzione ) dei processi. L'interfaccia grafica scambia dati con l'engine. Questa può essere di ogni tipo: applicazione Web,Applicazione Windows, Linux, etc..

L'integrazione con sistemi esterni è gestita dall'engine, eseguendo il codice prodotto dagli sviluppatori del processo. Tale codice viene archiviato sul database insieme alle definizioni di processo.