Introducción a Activiti

1
13926

Introducción a Activiti

0. Índice de contenidos.

1. Introducción

En este tutorial vamos a introducir la herramienta que pretende pisar muy fuerte en la gestión de
flujos de trabajo (BPM – Business Process Management) : Activiti

¿Qué es Activiti?

Es una nueva plataforma (motor) ligera Open Source de BPM creada por Alfresco Software y que dispone de licencia de
Apache (Apache License 2.0).Esta plataforma se desarrollará como un proyecto independiente de los productos que ya proporciona Alfresco.

Destaca entre muchas otras cosas por ser capaz de implementar el estándar BPMN 2.0 y por dos de sus creadores Tom Baeyens
(fundador y arquitecto del proyecto jBPM (JBoss)) y Joram Barrez

Según el propio Tom Baeyens : «Activiti será un punto de inflexión en el sector BPM» (asi que si él lo dice será por algo 😉 )

Herramientas que constituyen la suite de Activiti :

  • Activiti Engine : Fichero JAR que contiene la PVM (Process Virtual Machine o Máquina Virutal de procesos) y la implementación
    del lenguaje de procesos BPMN
  • Activiti Probe : Consola de administración del sistema
  • Activiti Explorer : Herramienta para la gestión de tareas / procesos
  • Activiti Modeler : Herramienta de modelado de procesos BPMN (compatible con navegadores AJAX)

OJO : EL tutorial se ha realizado sobre una versión Alpha (versión 3)

2. Entorno.

El tutorial está escrito usando el siguiente entorno:

3. Instalación.

Importante : Requiere tener instalado la JDK 5+ , Ant 1.7.1+ y Tomcat 6.026 (Aunque este último lo podemos instalar desde una tarea Ant)

PASO 1 : Configurar la variable de entorno JAVA_HOME y referenciarla en el PATH

PASO 2 : Configurar la variable de entorno ANT_HOME y referenciarla en el PATH

PASO 3 : Nos conectamos a la página web http://www.activiti.org/

PASO 4 : Accedemos a la pantalla de descarga pulsando sobre «Download Activity Now»

PASO 5 : Nos descargamos la última versión en formato ZIP

PASO 6 : Descomprimimos el ZIP en un directorio al que denominaremos ACTIVITI_HOME , en mi caso C:\activiti-5.0.alpha3

Con esto ya tendriamos instalado todo lo necesario para poder utilizar esta herramienta 😉

Antes de seguir me gustaría hacer referencia a la existencia de un fichero dentro del
directorio «setup» de ACTIVITI_HOME denominado : build.xml (Donde se encuentran gran parte de las
tareas automatizadas por Ant)



  
	
  
  

   
		  
	
	
	

  
   
   
      

	
  
	
  
  
  
  
  
  	
  	
  		
  			
  		
      
  	
  	
  		
  			
  		
  	
  

  
  	
  
	
  
    
  
	
	
		
       
		
	
  
  
    
    	
         
    	
    
  
	
	
		
		
		
		
		
		
    
		
    
      
        
      
    
	

	
		
	

	
	  Enabling tomcat remote debugging ... 
		
      
			
	  
	

  
    
  

  
    
  

	
		
		
      
			
		
		
			
		
	

	
    
    	
        
        
        
        
        
    	
      
        
      
    
		
		
		
	

  
    

  		
  			
  			
  			
  			
  			
  			
  			
  			
  		  
  			
  		
  	
  	
  		
  			
  			
          
  			
        
          
          
          
        	
          
        
  		
  	
  	
  

  
  	
  	
    
    
	
	
	
		
      
		
	

  
    
      
      
    
  

  
    
      
      
    
  

  
    
      
      
    
  

  
    
    
    
    
  

	
		 
    
		
	
	
	
		
	  
		
	

  
    
    
  
  
  
    
  
	
	
    
      
        
      
    
	


4. Cargar los ejemplos.

Primero de todo nos aseguraremos de la correcta configuración de las variables de entorno JAVA_HOME y ANT_HOME.

Mediante la consola nos situaremos en el directorio ACTIVITI_HOME.

Accederemos al directorio «setup» y ejecutaremos la instrucción : ant demo.setup

La ejecución de esta tarea se debe a la existencia de un fichero build.xml que contiene todas las
tareas que se pueden realizar sobre el proyecto Activiti (instalar Tomcat, desplegarlo, etc.)

Si esta configurado arrancará el Tomcat de la instalación

Si NO se ha producido ningun error , se generará un nuevo directorio en ACTIVITI_HOME denominado «apps» en mi caso C:\activiti-5.0.alpha3\apps

Configuraremos la variable de entorno de CATALINA_HOME para que apunte al Tomcat que se ha instalado anteriormente.Esto
se realiza para que la instrucción de : ant demo.setup sea capaz de arracar automáticamente el Tomcat

Una vez hecho esto trataremos de arrancar manualmente el Tomcat instalado mediante la instrucción : ant tomcat.start

Si todo se encuentra bien configurado y tras ejecutar la anterior instrucción se arrancará la ventana de Tomcat

Desde este momento podremos acceder a las siguientes aplicaciones :

  • Activiti Modeler : http://localhost:8080/activiti-modeler/p/explorer
  • Activiti Probe : http://localhost:8080/activiti-probe
  • Activiti Explorer : http://localhost:8080/activiti-explorer

Los usuarios proporcionados por defecto para el uso de las aplicaciones de ejemplo son los siguientes :

Usuario Password Rol
kermit kermit admin
gonzo gonzo manager
fozzie fozzie user

5. Activiti Modeler.

Es la herramienta de modelado de procesos BPMN 2.0, es una versión personalizada del editor de procesos
Signavio (http://www.signavio.com).

Como característica a destacar, decir que los ficheros de proceso son almacenados por el servidor en un sistema
de archivos central (funcionalidad similar a un repositorio de modelos)

Accedemos a su URL : http://localhost:8080/activiti-modeler/p/explorer

Nota : No es necesario autenticarse para ejecutar esta herramienta

En este punto voy a tratar a enseñar a utilizarla de forma muy básica.

En primer lugar distinguir 3 áreas claves de la página web de la herramienta :

  • Menu superior : Muestra la funcionalidad básica (Creación de carpetas, diagramas, editar y mover)
  • Menu lateral : Muestra las carpetas y diagramas almacenadas en el Workspace de trabajo
  • Área trabajo : Muestra los elementos contenidos dentro de una carpeta pudiendo acceder a los diagramas tras pulsar sobre
    uno de ellos

Vamos a crear un proyecto, para ello pulsamos sobre la opción New.

Seleccionamos la opción Folder ( New -> Folder). A continuación y mediante una
ventana emergente se nos solicitará el nombre , lo identificamos como «Prueba» y
pulsaremos sobre OK.

Se generará un directorio «Prueba» como se puede comprobar en la siguiente captura de pantalla que
descuelga directamente del workspace

Seleccionamos la carpeta «Prueba» y creamos un diagrama New -> Business Process Diagram (BPMN 2.0)

A continuación se cargará una pestaña con el editor de diagramas

Las áreas que componen la página web actual son :

  • Menu superior : Muestra la funcionalidad de Guardar, Copiar, Pegar, Zoom , etc
  • Menu lateral : Muestra los componentes que usaremos para generar el diagrama
  • Área trabajo : Muestra el área que contendrá el diagrama

Vamos a crear un ejemplo sencillo de proceso :

Como veis se trata de un pPool denominado cliente con un estado de inicio y otro de fin,
en el que se ejecutan de forma secuencial tres tareas. Para ello arrastramos los elementos
necesarios de la barra de componentes.

Guardamos nuestro primer diagrama

Cargará una ventana modal con la referencia al diagrama creado : http://localhost:8080/activiti-modeler/p/editor?id=root-directory;Prueba;Modelo_Prueba.oryx.xml

Pulsamos sobre OK

Se actualizará el área (pestaña)del workspace con el diagrama creado

5. Activiti Probe.

Es la consola de administración que controla y ejecuta Activi Engine, es decir, permite administrar una instancia
de un proceso Activiti funcionando. Esta aplicación deber de ser utilizada por las personas encargadas de
mantener la infraestructura y los sistemas.

Accedemos a su URL : http://localhost:8080/activiti-probe

Para acceder se solicitará la autenticación mediante uno de los usuarios dados de alta en el sistema.
Introducimos el usuario y password de kermit

Una vez que nos conseguimos autenticar accederemos a la siguiente pantalla, en la cual podremos
ver detalles de la versión utilizada. Si accedemos a la opción de DATABASE

Podremos tener una interfaz web que acceda a las tablas de la base de datos como ya habeis podido comprobar
en las trazas de carga de los ejemplos es H2.

Para el que no lo conozca dire que H2 es una base de datos relacional implementada totalmente con Java, por lo que
tendrá la característica principal de ser totalmente integrable con nuestras aplicaciones Java, otra de las características
a destacar es que sólo permite una única conexión a la base de datos con lo que se consigue la integridad de los datos.

Página web : http://www.h2database.com

Para más información sobre esta base de datos consultar el siguiente tutorial :
Introducción al gestor de base de datos H2

Por ejemplo si accedemos a la tabla ACT_ID_USER podremos visualizar los usuarios anteriormente mencionados

Entre otras muchas cosas servirá sobre todo para ver los procesos que se encuentran en ejecución.

5. Activiti Explorer.

Es la aplicación del usuario final para listar y ejecutar las tareas, permite acceder en tiempo de ejecución
al motor Activiti (Activiti Engine)

Accedemos a su URL : http://localhost:8080/activiti-explorer

Nos autenticamos por ejemplo con el usuario : fozzie

Si la autenticación ha sido correcta accederemos a la siguiente página

Arrancaremos un nuevo proceso «Vacation request» desde la opción : Start New Process..

Rellenaremos los datos del formulario de solicitud de vacaciones y pulsaremos sobre OK

Indica que se ha iniciado sin problemas

Para comprobar que se ha iniciado sin problemas nos autenticaremos con el usuario : gonzo

Como se puede ver dentro de las tareas aparece la tarea que se generado desde el usuario : fozzie

Pulsamos sobre Claim, accedemos a la tarea y pulsamos sobre complete

Rellenamos la solicitud de las vacaciones del usuario Víctor Madrid para aprobárselas (porque seguro que se las merece 😉 )

Se mostrará un indicador de que la tarea se ha realizado

8. Conclusiones.

Como ya podeis ver esto del BPM tiene su miga.Me gustaria dejar claro que esta herramienta se encuentra todavía en etapa un poco «baby» y en algunos momentos
es un poco inestable pero tiene muy buena pinta y seguro que dentro de un tiempo cuando las versiones sean más estables se convertirá en una herramienta de referencia.

1 COMENTARIO

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad