Introducción a Activiti
0. Índice de contenidos.
- 1. Introducción.
- 2. Entorno.
- 3. Instalación.
- 4. Cargar los ejemplos.
- 5. Activiti Modeler.
- 6. Activiti Explorer.
- 7. Activiti Probe.
- 8. Conclusiones.
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:
- Hardware: Portátil Asus G50Vseries (Core Duo P8600 2.4GHz, 4GB RAM,320 GB HD).
- Sistema operativo: Windows Vista Ultimate.
- Mozilla Firefox 2.0.0.20
- Apache Tomcat 6.0.26
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.
Hola buen post,
esto ya es integrable con Alfresco share?