SciELO - Scientific Electronic Library Online

 
vol.37 número3Interconectividad de la Red Hidrometeorológica en la Provincia de Chimborazo-EcuadorImplementación sobre FPGA de un Algoritmo LMS para un arreglo de antenas inteligentes índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

  • No hay articulos similaresSimilares en SciELO

Compartir


Revista Técnica de la Facultad de Ingeniería Universidad del Zulia

versión impresa ISSN 0254-0770

Rev. Téc. Ing. Univ. Zulia vol.37 no.3 Maracaibo dic. 2014

 

Evaluation of open source systems for managing business rules in enterprise scenarios

Yoan Pacheco-Cárdenas, Ernesto Rodríguez-Rodríguez, Luisa González-González

Laboratorio de Bases de Datos, Centro de Estudios de Informática, Facultad de Matemática, Física y Computación, Universidad Central “Marta Abreu” de Las Villas (UCLV). Santa Clara, 54830 Villa Clara, Cuba. Teléfono +5342281515 yoan, ernestomr, luisagon{@uclv.edu.cu}

Abstract

In this work are investigated open source systems that manage business rules in two different enterprise scenarios taking into account technological properties of the tool and cultural properties of the environment in the enterprise. Drools get the highest score in all two scenarios and release its greatest potential when editing rules is the responsibility of the IT team. OpenRules and OpenL Tablets reach the second and third places in all scenarios. Both programs get the best results when editing rules is the responsibility of business experts and the quantity of complex rules is not high. This research help to select which business rules management system should be connected with enterprise applications of a company that follows the business rules approach to develop computer systems.

Keywords: evaluation, BRMS, Drools, OpenRules, OpenL Tablets.

Evaluación de sistemas de código abierto para la gestión de reglas de negocio en escenarios empresariales

Resumen

 En este trabajo se investigan sistemas de código abierto para la gestión de reglas de negocio en dos escenarios empresariales diferentes, teniendo en cuenta propiedades tecnológicas del software y propiedades culturales de la empresa. Drools obtiene la mayor puntuación en los dos escenarios y libera su mayor potencial cuando la edición de reglas es responsabilidad del equipo de tecnologías de la información. Open- Rules y OpenL Tablets obtienen la segunda y tercera puntuación respectivamente. Ambos consiguen los mejores resultados en un contexto donde la edición de reglas es responsabilidad de los expertos del negocio y existe un número limitado de reglas complejas. Esta investigación ayuda a seleccionar qué sistema de reglas de negocio incorporar a una organización que sigue este enfoque para construir sistemas informáticos.

Palabras clave: evaluación, BRMS, Drools, OpenRules, OpenL Tablets.

Recibido el 10 de Septiembre de 2013 En forma revisada el 22 de Septiembre de 2014

Introducción

Menos del 32% de los proyectos informáticos que comienzan llegan a ser exitosos [1]. Las causas principales del fracaso son la falta de compromiso de los usuarios, requisitos no claros, ausencia de dueños del proyecto, visión y objetivos difusos así como la ausencia de planificación. Los Sistemas de Gestión de Reglas de Negocio (del inglés BRMS) contribuyen a la solución de este problema pues definen lenguajes que pueden ser entendidos por los desarrolladores y los usuarios del negocio, aumentando el compromiso y motivación de ambos grupos. También separan las políticas del resto de la aplicación y así facilitan el establecimiento de responsabilidades [2]. Otros beneficios como la construcción y mantenimiento de aplicaciones con menor costo y en menos tiempo, sistemas fácilmente auditables, lógica de negocio más reusable y mejor alineación de las tecnologías informáticas con los objetivos del negocio se logran mediante la integración de estos programas a los procesos de una empresa [3]. En un BRMS el motor de reglas de negocio ejecuta las reglas que existen en el repositorio según los datos de entrada. Las reglas son gestionadas por el personal especializado en tecnologías informáticas y los expertos de negocio [4]. Finalmente el resultado se trasmite a las aplicaciones clientes (Figura 1). Varios BRMS de código abierto (Open- Rules1, CLIPS2, NxBRE3, CodaServer4, Hammurapi Rules5, Jena6, Drools7 y OpenL Tablets8) han evolucionado como alternativas a aplicaciones propietarias (Visual Rules9, Fico Blaze Advisor10, ILOG JRules11, InRule12 y Corticon13) sin embargo en la bibliografía actual [5-11] no aparecen trabajos relacionados con el análisis de sus fortalezas en escenarios empresariales donde las reglas son gestionadas por el personal de informática o por los expertos de negocio. Esto es importante para conocer cuál es el BRMS adecuado para ser integrado a un proyecto que quiera gestionar reglas de negocio. Por ejemplo si en la empresa existe experiencia en la construcción de aplicaciones en lenguaje Java, en este escenario el BRMS seleccionado deberá brindar facilidades para la codificación de reglas, favoreciendo así al personal de informática. Si en la empresa el personal tiene buenas habilidades de modelación en este escenario el BRMS seleccionado deberá brindar facilidades para la gestión de reglas de manera visual, lo cual favorece a los expertos del negocio.

En esta investigación se analizaron tres BRMS de código abierto en dos escenarios con características culturales diferentes. En el primer escenario la gestión de reglas es responsabilidad del personal de informática y en el segundo los expertos del negocio tienen esa misión.

Se respondieron las siguientes interrogantes:

– ¿Cuáles son las fortalezas de los BRMS de código abierto en un escenario empresarial donde la gestión de reglas sea responsabilidad del personal de informática?

– ¿Cuáles son las fortalezas de los BRMS de código abierto en un escenario empresarial donde la gestión de reglas sea responsabilidad de los expertos del negocio?

– ¿Qué BRMS de código abierto utilizar en un escenario empresarial específico?

Parte experimental Para encontrar las fortalezas tecnológicas de los BRMS de código abierto que gestionan reglas de negocio se preseleccionaron las siguientes aplicaciones: CLIPS, NxBRE, Jena, Hammurapi rules, CodaServer, Drools, OpenRules y OpenL Tablets. Luego se eligieron los programas que implementan los componentes de un BRMS y se listaron sus propiedades más importantes (Tabla 1). A continuación se evaluaron cuantitativamente sus propiedades tecnológicas y culturales en dos escenarios empresariales distintos, para lo cual fue utilizado el método propuesto por Graham [3]. El mismo evalúa 80 propiedades que tributan a categorías generales como las facilidades para captura de conocimiento, calidad de la herramienta de gestión, características del motor de reglas, facilidades multiusuario y otros factores técnicos y culturales. La puntuación total se obtuvo como la suma de los acumulados individuales de las propiedades multiplicados por sus pesos en cada escenario. Luego se listaron las fortalezas de cada BRMS para el personal de informática y para los expertos del negocio analizando las propiedades que más aportaron al total. Finalmente se definieron cuales son los programas BRMS más adecuados para cada escenario y se creó un árbol de decisión que sirve de guía para ello.

Escenarios:

1. El personal de informática es el responsable de codificar reglas, los expertos del negocio están realizando otras funciones, aunque pueden apoyar eventualmente a los especialistas en computación. Existe un numeroso grupo de informáticos disponibles y con experiencia en la tarea. En este escenario se enfatiza la gestión de reglas de negocio por el personal de informática.

2. Los expertos del negocio poseen una cultura de edición de reglas y son capaces de gestionar el conocimiento sin programar las mismas. Los especialistas en computación están enfocados en la adición de nuevas funcionalidades y en el mantenimiento a los sistemas informáticos existentes. En este escenario se enfatiza la gestión de reglas por usuarios expertos del negocio.

Resultados

Fortalezas tecnológicas de los sistemas de código abierto que gestionan reglas de negocio

Programas de código abierto como CLIPS, NxBRE, Jena, Hammurapi Rules y CodaServer implementan un motor de reglas y proporcionan algunos mecanismos de gestión. Sin embargo solo Drools, OpenRules y OpenL Tablets tienen los componentes principales de un BRMS. Los cuales son el motor de reglas, el repositorio de reglas y variados mecanismos de gestión [4]. En la Tabla 1 se muestra un resumen de las fortalezas tecnológicas de los componentes de Drools, OpenRules y OpenL Tablets según la bibliografía científica.

El motor de reglas de las tres aplicaciones implementa el algoritmo Rete aunque en problemas de optimización OpenRules permite optar por un motor específico para ello, por lo que OpenRules puede ser útil en estos casos. En OpenRules y OpenL Tablets el motor solo hace inferencia con encadenamiento hacia adelante mientras que en Drools realiza inferencia con encadenamiento hacia adelante y hacia atrás, por tanto la ejecución de las reglas no depende del orden en el repositorio. Los tres programas pueden integrarse con otras aplicaciones remotas y ser accedidos a través de internet pues publican reglas de negocio mediante servicios Web. La creación y ejecución de casos de prueba permite a los tres productos validar la ejecución de reglas antes de ser desplegados en un escenario empresarial. Drools representa las reglas en un mayor número de formatos lo que posibilita su integración con otras herramientas y su uso por personal de informática y expertos del negocio. Drools es un programa más robusto y completo pues puede gestionar un mayor número de reglas complejas, transacciones y usuarios y además de los componentes de un BRMS tiene módulos para gestionar flujo de trabajo, procesamiento de eventos y planificación de tareas, a diferencia de OpenRules y OpenL Tablets que solo poseen los módulos de un BRMS. La licencia de Drools es ASL2 y la de OpenL Tablets es LGPL, ambas son menos restrictivas que la GPL de OpenRules que obliga al software derivado a usar GPL también.

Fortalezas de los sistemas de código abierto para el personal de informática y los expertos del negocio

El análisis anterior muestra las fortalezas tecnológicas de cada BRMS sin embargo en dicho estudio no queda claro cuáles de esas fortalezas favorecen al personal de informática y cuales a los expertos de negocio. El método de Graham [3] nos ayuda a encontrar las fortalezas en cada escenario. Los resultados de la aplicación del mismo para evaluar propiedades de OpenRules, Drools y OpenL Tablets se muestran en la Figura 2.

Discusión de resultados

Fortalezas de Drools que favorecen su uso por el personal de informática

El personal de informática es favorecido por la existencia de una comunidad de desarrolladores de software activa, abundante documentación y ejemplos dirigidos al desarrollador. En un ambiente de desarrollo integrado (del Inglés IDE) puede definir un vocabulario organizacional y expresar reglas en XML, en el lenguaje de reglas propio de Drools (DRL) o en Java. Los desarrolladores, igualmente desde un IDE, tienen la posibilidad de especificar y ejecutar casos de prueba, depurar reglas e integrarse a la plataforma Java.

Fortalezas de Drools que favorecen su uso por los expertos del negocio

En este escenario Drools también obtiene la mayor puntuación. Aquí los expertos del negocio cuentan con una interfaz de usuario de calidad y amistosa, manuales de usuario y casos de estudio, pueden describir reglas en un lenguaje cercano al natural y mediante tablas de decisión aunque necesitarán asistencia del personal informática para estas tareas. También pueden definir un vocabulario organizacional y auxiliarse de los reportes generados por la herramienta.

Fortalezas de OpenRules que favorecen su uso por el personal de informática

El personal de informática puede integrar el programa con Java y.NET, representar reglas en XML y publicarlas como servicios Web.

Fortalezas de OpenRules que favorecen su uso por los expertos del negocio

En este escenario se destacan propiedades que brinda el programa para capturar y gestionar el conocimiento sin necesidad de lenguajes de programación, como la representación de reglas mediante tablas de decisión, definición y ejecución de de casos de prueba y la creación de un vocabulario organizacional. Su curva de aprendizaje es la menor pues es el software que más rápido se asimila por usuarios no entrenados, esto es favorecido por los ejemplos y los manuales de usuario disponibles así como por los reportes que genera. Es el programa que menos intervención del personal de informática necesita.

Fortalezas de OpenL Tablets que favorecen su uso por el personal de informática

El personal de informática puede escribir reglas complejas usando una versión simplificada del lenguaje Java así como crear y ejecutar casos de prueba. OpenL Tablets se integra a la plataforma Java. También permite publicar reglas como servicios Web.

Fortalezas de OpenL Tablets que favorecen su uso por los expertos del negocio

En el escenario 2 brinda facilidades para representar reglas mediante tablas y árboles de decisión, manuales de usuario y ejemplos. Las fortalezas de los programas para cada escenario son resumidas en la Tabla 2.

Programas BRMS de código abierto más adecuados para el personal de informática

En este escenario Drools tiene características únicas pues está respaldado por la comunidad de desarrolladores más activa y una elevada cantidad y calidad de ejemplos y documentación orientados al desarrollador. Brinda facilidades para que los desarrolladores definan un vocabulario organizacional así como la gestión de reglas en XML, Java y en su leguaje nativo DRL. Además puede procesar mayor número de reglas, pedidos/ transacciones y usuarios que sus dos competidores. Su motor ejecuta encadenamiento hacia adelante y hacia atrás y la licencia ASL2 no es restrictiva. Las características anteriores sugieren que este escenario Drools es el BRMS más adecuado. OpenL Tablets permite que los desarrolladores ejecuten casos de prueba, pero Open- Rules tiene un motor especializado en problemas de optimización lo cual hace que OpenRules sea la segunda opción. Si la licencia GPL de OpenRules es un problema se sugiere utilizar entonces OpenL Tablets.

Programas BRMS de código abierto más adecuados para los expertos del negocio

Si el problema tiene un elevado número de reglas, pedidos/transacciones, usuarios o existe la necesidad de procesar reglas en un lenguaje cercano al natural se sugiere utilizar Drools como primera opción. En caso contrario OpenRules es la mejor opción en este escenario, seguido de Drools, pues brinda la mejor interfaz de usuario a los expertos del negocio los cuales incluso pueden usar facilidades del programa para ejecutar casos de prueba, además posee un motor especializado en problemas de optimización. OpenRules tiene la menor curva de aprendizaje por lo que es el programa más adecuado para usuarios no entrenados. En este escenario OpenL Tablets es inferior a Drools y a OpenRules en cuanto a fortalezas tecnológicas y culturales. Como en el escenario 1 si la licencia GPL de OpenRules es un problema el programa queda descartado.

Trabajos relacionados

En [5] se presenta un análisis de los programas BRMS existentes en el mercado utilizando una serie de criterios y entrevistas con los suministradores de cada programa. Para ayudar en la selección del programa los autores presentan cinco visiones del mercado de reglas de negocio: programas para fines generales, programas especializados, programas para desarrolladores de aplicaciones Java, programas para aplicaciones de aplicaciones.NET y programas para analistas de negocio que desarrollan y mantienen aplicaciones. Los programas son evaluados según criterios definidos por el grupo de reglas de negocios14. Sin embargo este análisis no tiene en cuenta programas de código abierto. Ya en [7] también se analizan programas BRMS de código abierto. La comparación se e basa en tasas de crecimiento, presencia en el mercado y fortaleza del producto. Se sugiere usar Drools como alternativa de bajo costo a los programas de código propietario para el personal de informática pero no se explican sus fortalezas para este grupo de usuarios ni para los expertos del negocio. También se plantea que OpenRules tiene la estrategia más agresiva a favor de la edición de reglas por parte de los expertos de negocio, pero tampoco se explica cuales son los puntos fuertes de la herramienta que llevan a esa conclusión. En la evaluación de programas BRMS realizada en [6] se utiliza como criterio esencial una buena evaluación en [7] por tanto se descarta el software de código abierto en las etapas iniciales del proceso. En los trabajos de [8-11] se valoran solo criterios tecnológicos de programas BRMS, no se evalúan propiedades que varíen dependiendo del escenario. A diferencia de los trabajos relacionados [5-11] esta investigación es específica para programas BRMS de código abierto. Además de evaluar los mejores BRMS para cada escenario mediante el método de Graham [3] sintetiza sus fortalezas en cada escenario y propone un árbol de decisiones para ayudar en la selección de los mejores programas BRMS de código abierto para el personal de informática y los expertos del negocio.

Conclusiones

En esta investigación se analizaron las fortalezas de los BRMS de código abierto en escenarios empresariales donde la gestión de reglas es responsabilidad del personal de informática y de los expertos del negocio. Se proponen los BRMS de código abierto adecuados para utilizar en cada escenario (Figura 3). La selección del BRMS adecuado contribuirá construcción de sistemas empresariales en menor tiempo y con menos costo.

Trabajo futuro

El método propuesto por Graham [3] puede ser mejorado aplicando pesos a los macro criterios. Analizar en detalle debilidades de los BRMS en los escenarios propuestos puede añadir valor al resultado final, así como comparar las fortalezas de los BRMS de código abierto con los de código propietario.

Agradecimiento

Los autores agradecen al colega investigador Lic. Oscar Rivera Borroto por las varias y muy útiles revisiones que realizó a nuestro trabajo

Notas

1. http://openrules.com

2. http://clipsrules.sourceforge.net

3. http://sourceforge.net/apps/trac/nxbre

4. http://codaserver.com

5. http://www.hammurapi.com/dokuwiki/doku. php/products:hammurapi_rules:start

6. http://jena.apache.org/index.html

7. http://www.jboss.org/drools

8. http://openl-tablets.sourceforge.net

9. http://www.bosch-si.com

10. http://www.fico.com

11. http://www-01.ibm.com/software/integration/business-rule-management/jrules-family

12. http://www.inrule.com

13. http://www.progress.com/en/corticon/index.html

14. http://www.businessrulesgroup.org

Referencias bibliográficas

1. The Standish Group International Inc:”CHAOS Report”. (2010) Documento en línea. Disponible: http://blog.standishgroup.com [Consulta: 2012, noviembre 10].        [ Links ]

2. Morgan, T.: “Business Rules and Information Systems: Aligning IT with Business Goals”, AddisonWesley Professional, Boston, 2002.        [ Links ]

3. Graham, I.:“Business Rules Management and Service Oriented Architecture”, Wiley, Chichester, 2007.        [ Links ]

4. Ross, R.: “Principles of the Business Rule Approach”, Addison-Wesley Professional, Boston, 2003.        [ Links ]

5. Rymer, J; Gualtieri, M. “The Forrester Wave: Business Rules Platforms 2008”. (2008) Documento en línea. Disponible: http://www.forrester.com/go?docid=39088 [Consulta: 2012, diciembre 10].        [ Links ]

6. Azevedo, L; Duarte, D. et al.: “Evaluating tools for execution and management of authorization business rules”. Revista Eletrônica de Sistemas de Informação, Vol. 9, No. 2 (2010) 1-22. Disponible: http://revistas.facecla.com.br/index.php/reinfo/article/view/798/pdf_11 [Consulta: 2012, noviembre 20].         [ Links ]

7. Rymer, J; Gualtieri, M.:“Markquet Overview: Business Rules Platforms 2011”. (2011) Documento en línea. Disponible: http://www.forrester.com/go?objectid=RES58570 [Consulta: 2013, enero 20].        [ Links ]

8. Mouromtsev, D; Kolchin, M.: “Using Drool Rule-Platform for the Optical CAD Web-Application Development”. 11TH CONFERENCE OF FRUCT ASSOCIATION (2011) 100-106. Disponible: http://www.fruct.org/publications/fruct11/files/Mou.pdf [Consulta: 2012, noviembre 10].        [ Links ]

9. Red Hat.: “JBoss Enterprise BRMS value proposition and diferentiation”. (2012) Documento en línea. Disponible: http://www.redhat.com/resourcelibrary/datasheets/brms-value-prop [Consulta: 2012, noviembre 20].         [ Links ]

10. Duda, J; Stawowy, A.:”A possibility of Business Rules application in production planning”. Archives of Foundry Engineering, Vol. 10, No.2 (2010) 27-32. Disponible: http://www.afe.polsl.pl/index.php/en/278/a-possibilityof-business-rules-application-in-productionplanning.pdf [Consulta: 2012, noviembre 20].        [ Links ]

11. Silveira, L.: “Diseño e implementación de un motor de reglas dinámicas usando especificaciones GeneXus”, InCo, Montevideo, 2010.        [ Links ]

12. Bali, M.: “Drools JBoss Rules 5.0 Developer’s Guide”, Packt Publishing Ltd, Birmingham, 2009.        [ Links ]

13. OpenRules.: “OpenRules User Manual”. (2012) Documento en línea. Disponible: http://openrules.com [Consulta: 2012, noviembre 20].         [ Links ]

14. OpenL Tablets.: “OpenL Tablets Reference Guide”. (2012) Documento en línea. Disponible: http://openl-tablets.sourceforge.net [Consulta: 2012, noviembre 20].        [ Links ]