Home
 
Introduzione a JBPM PDF Stampa E-mail
Scritto da Douglas   
Venerdì 09 Settembre 2011 14:58

1.  Cosa è JBPM?

 JBPM è un motore per la gestione dei workflow che ci consenti creare dei  processi business, gestire e monitorare i loro ciclo di vita.

A differenza di tanti altri motori business che si concentrano più sugli aspetti che facilitano al personale non tecnico di scrivere dei workflow, JBPM ha esteso la sua filosofia di utilizzo ed implementazione anche ad un personale puramente tecnico.

  

2.  Come funziona JBPM?

 

 

  

 

JBPM è scritto completamente in Java, inoltre ci permette di eseguire dei processi business con l’utilizzo delle specifiche BPMN 2.0 dell’OASIS.

JBPM può essere utilizzato all’interno di qualsiasi ambiente java, sia all’interno di una nostra applicazione che come servizio aggiuntivo per standardizzare il flusso applicativo.  

Con il suo linguaggio JPDL ossia, il linguaggio definito e fornito dal frame work per la scrittura di work flow, possiamo incapsulare logica business come parte dell’intero flusso di applicativo.

 JBPM offre una serie di funzionalità molto utili per supportare i processi business ovvero dei work flow che possono essere implementati con strumenti come eclipse, editori basati tecnologie web che supportano la creazione dei work flow tramite uno strumento completamente grafico tramite l’utilizzo di drag & drop.

 JBPM offre funzionalità di pluggabilità di middleware di persistenza JPA/JTS.

JBPM offre funzionalità di pluggabilità di WS-Human ossia, funzionalità o delle attività svolte da persone fisiche dove il loro input vengono acquisiti ed interpretati come servizi dell’intero processo applicativo.

JBPM offre una console di amministrazione che supporta le istanze dei processi, lista di task, una form di task amministrativa e reportistica dei processi.

JBPM fornisce una funzionalità opzionale di repository dei processi  dove i nostri processi possono essere schierati(deployed)

JBPM fornisce funzionalità di history logging utili per le interrogazioni, monitoraggio ed analisi.

JBMP può essere facilmente integrato con Seam, Spring, OSGi, etc.

 

3.   Beneficio di JBPM in un contesto operativo

Garantirebbe una maggiore modularizzazione della logica business.

Innalzerebbe il livello di comunicazione e di collaborazione fra gli analisti e gli sviluppatori.

Centralizzerebbe la maggior parte dei controlli di logica business all’interno della struttura dei work flow progettati, permettendo al personale con maggior conoscenza funzionale di estendere ed implementare dei flussi di lavoro consoni con le specifiche.

Quindi, gli sviluppatori possono concentrarsi sugli aspetti più tecnici dell’implementazione di questi processi business.

 

4.   Rules Engine

 Il concetto di rules nel contesto applicativo è relativo al principio di cosa fare piuttosto di come fare cosa. Questo ci porta ad innalzare il livello di astrazione tramite una programmazione basata su delle regole che possono essere applicate in maniera trasversale nel nostro sistema.

Uno stile di programmazione imperativa nel nostro codice, impone al flusso applicativo di eseguire dei blocchi di codice basandosi sul concetto di come fare o come svolgere una specifica porzione di codice o talvolta un intera funzione.

Questo approccio programmatico però nel tempo, ci porta ad affrontare grandi sforzi quando la nostra logica business subisce dei cambiamenti dettati dalle specifiche funzionali, in tal senso è essenziale nascondere più dettagli possibili sul come svolgere una specifica logica business e promuovere la programmazione dichiarativa  dove ci si concentra sul cosa fare piuttosto che sul come fare una certa cosa, cosi facendo il livello di astrazione della nostra logica operativa prende quota e vengono separati gli aspetti della conoscenza applicativa dall’implementazione.

 

Condividi
Ultimo aggiornamento Venerdì 09 Settembre 2011 15:12
 

Commenti  

 
+1 #1 Douglas 2012-02-17 00:26
Ottimo articolo Dino,
spero che presto questo meta-linguaggio di flusso venga diffuso in Italia.

Volevo anche farti sapere che presto pubblicherò un articolo su Spring/JPA/Hibernate.
L'articolo riguarda come implementare correttamente una soluzione integrata rispettando la normalizzazione dei database.

Un abbraccio

Buon lavoro a tutti.

Douglas
Citazione
 

Aggiungi commento


Codice di sicurezza
Aggiorna