lunes, 5 de julio de 2010

Primeras impresiones de Bonita 5 (aka Bonita Open Solution)

Bueno después de haber avanzado allá por Octubre la preview de la versión 5 de Bonita me había olvidado un poco de ella, pero hoy he comenzado a instalar y probar la versión 5.0.1 (ya ha salido la 5.02) y quería compartir mis primeras impresiones.

Para empezar diré que la estructura se mantiene más o menos igual. se puede desplegar la aplicación web y personalizar ciertos aspectos o bien desplegar el "runtime" en un servidor de aplicaciones para conectarnos a el mediante RMI.

Les dejo una pequeña valoración inicial con algunos aspectos que he encontrado en este primer acercamiento:

Aspectos positivos:
  • A nivel de la API han habido algunos cambios, ya que ha cambiado algo el modelo y se han añadido ciertas funcionalidades como por ejemplo la "reparacion de casos".
  • Donde se observan las mayores diferencias es en el cliente web. Han desarrollado un cliente totalmente nuevo, algo muy acertado a mi juicio, ya que el anterior fallaba bastante.
  • El BonitaStudio (desarrollado sobre eclipse), parece mucho más completo que las versiones anteriores de las herramientas de diseño.

Aspectos negativos:
  • El proceso de instalación es el mayor problema que he encontrado hasta el momento, el cuál es complicado y la documentación al respecto es insuficiente. Personalmente he trabajado con versiones anteriores de Bonita y esto parece ser un problema recurrente, imagino como sufrirá un usuario nuevo para llevar a cabo la instalación. Quién haya instalado antes Nova Bonita , no tendrá problemas para isntalar el runtime pero la aplicación web puede que le ed algún que otro problemilla.
  • No existe documentación para la API, o no esta disponible, tán sólo podemos acceder al javadoc de la API. He podido detectar algunos cambios gracias a los proyectos existentes con librerías (bonita-client) anteriores.
  • No hay compatibilidad con flujos anteriores. Esto hay que matizarlo, yo puedo importar un Bar de Bonita 4, pero hay una alta probabilidad de que no funcione si contenía lógica, por ejemplo Hooks. Se puede importar al BonitaStudio pero la importación no es del todo correcta y hay que arreglar los flujos. Además no trabajamos con un fichero XPDL sino que importaríamos el .bar.

Una vez que se ha instalado y comprobado que funciona correctamente, es necesario migrar las aplicaciones para usar la nueva API y hay que aprender a usar la nueva herramienta de diseño, ya que ha cambiado completamente. Esto implica que una migración requiere un coste relativamente alto, esto sin hablar de migrar las instancias existentes en un sistema antiguo al nuevo.

Seguiré comentando. Saludos.

3 comentarios:

  1. Hola Jesus,

    Gracias por este articulo sobre Bonita Open Solution y por tu analisis.

    Me gustaria matizar/comentar los tres aspectos negativos que mencionas:

    1.- Actualmente, la version 5.2.1 ya esta disponible y dicha version viene con un "instaler" grafico para las tres plataformas: Linux, Windows y Mac.

    Con eso, hemos facilitado al maximo la instalacion del producto.

    Supongo que tu te refieres a la instalacion del motor en un entorno de produccion especifico (servidor de aplicaciones Jboss, Weblogic...), puedes, por favor, dar mas detalles sobre los problemas de instalacion que has experimentado?

    2.- Existe una trilogia de articulos en los que se detallan las APIs con ejemplos concretos para los desarrolladores que quieran directamente realizar sus aplicaciones sobre Bonita Open Solution. Aqui tienes el pointer hacia esos articulos: http://www.bonitasoft.com/blog/news/because-java-developers-also-deserves-business-process-managament/

    3.- Desde la 5.0 existe una herramienta que permite migrar los flujos de negocio entre las diferentes versiones de Bonita Open Solution.

    Un saludo,
    Miguel

    ResponderEliminar
  2. Hola Miguel. Lo primero gracias por escribir.

    Con respecto a la instalación, y como tu dices, me refiero a la instalación en un entorno de producción en el que se quiera tener el runtime y la consola web en el mismo servidor de aplicaciones, ya que al desplegar un flujo mediante la web queremos que las librerias que contiene el bar también estén accesibles para el runtime, esto ya lo comente en el foro de Bonita (http://www.bonitasoft.org/forum/viewtopic.php?id=3431).

    En cuanto a la documentación, decir que los artículos que me comentas están muy bien para empezar a conocer Bonita y para tener un punto de arranque, lo cuál está muy bien para usuarios que comienzan con la herramienta. Por otro lado, todo usuario que tenga cierto rodaje con versiones anteriores no encontrará mucha resistencia.

    El último punto es el de la migración, la migración de flujos en si no es un problema, el usuario tiene que cambiar algunos conceptos como el paso de usar hooks a usar los conectores, y quizás retocar un poco el flujo. Lo que me parece más problemático es la migración de instancias ¿Existe alguna herramienta que automatize dicha migración?.

    Cómo dice el título eran unas "primeras impresiones", ya lo he usado algo mas y probablemnte me sigan surgiendo dudas. Eso si, creo que la herramienta ha mejorado sustancialmente, por ejemplo: unos compañeros me comentaban que les parecía que les respondía más rápdio. Otro acierto es el uso de los conectores, tras el shock inicial, se ve su utilidad y puede personalizarse mucho su funcionalidad. Asimismo destacar otros conectores como el de asignación de variables, que ya lo había echado en falta en versiones anteriores.

    Saludos.
    Jesús.

    ResponderEliminar
  3. Interesante análisis sobre esta BPMS, gracias por el artículo. Un saludo.

    ResponderEliminar