Professional Documents
Culture Documents
net/publication/312680173
CITATIONS READS
0 569
1 author:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Margarita André Ampuero on 02 February 2017.
Resumen
En varios enfoques de desarrollo de software la capa de lógica de negocio de las aplicaciones resulta ser
compleja, debido a que debe implementar las reglas de negocio existentes en una organización. En algunos
sistemas las reglas de negocio cambian con más frecuencia que otros elementos. El enfoque de reglas
de negocio propone una vía de desarrollo de aplicaciones donde las reglas de negocio juegan un papel
fundamental. Para implementar el enfoque de reglas se destacan dos vías fundamentales: el uso de motores
de reglas y la programación orientada a aspectos. Este trabajo propone la integración de ambas variantes,
buscando potenciar sus ventajas y minimizar las limitaciones. Con el propósito de validar la propuesta
se definen seis medidas y se presenta un ejemplo basado en una tienda virtual. Se implementan las tres
variantes en la solución del ejemplo, utilizando el motor de regla JBoss Rules, la herramienta AspectJ y la
integración de JBoss Rules con AspectJ. Al ejecutar las variantes, utilizando las medidas propuestas, se
demuestra que la integración resulta superior.
Palabras claves: enfoque basado en reglas de negocio, motores de reglas de negocio, programación orientada a
aspectos, JBoss Rules, AspectJ
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781
Juan Carlos García González - Margarita André Ampuero
serie de fases y pasos a seguir con el objetivo de obtener en utilizar el paradigma de la programación orientada a
aplicaciones basadas en reglas en negocio [1] [2]. Estas aspecto para extraer y encapsular las reglas de negocio
aplicaciones separan las reglas de negocio lógicamente, dentro de aspectos y así, separarlas del código fuente que
y quizás físicamente, del núcleo funcional de lógica de implementa la lógica de negocio en las aplicaciones. Un
negocio de la aplicación, con el propósito de reducir los aspecto actúa como conector entre la lógica de negocio de
tiempos de soporte y mantenimiento, así como obtener la aplicación y la regla de negocio. La idea básica consiste
aplicaciones más adaptables a los frecuentes cambios en en que dentro de cada aspecto se implementen una o varias
las reglas de negocio [4] [5]. reglas de negocio, buscando garantizar mantenibilidad y
El proceso de desarrollo de software propuesto por reusabilidad [12] [13]. Esta variante ha sido aplicada en
varios enfoques normalmente está compuesto por una diferentes trabajos [6] [10] [12] [14] [15] [16], los cuales
serie, fases o etapas. En cada una de estas fases existe resaltan la disminución del código entremezclado como
un grupo de pasos que, por lo general, resultan comunes el principal logro del empleo de AOP en la aplicación del
entre los distintos enfoques existentes. En el enfoque enfoque de reglas de negocio. Sin embargo, los autores
de reglas de negocio se proponen seis fases: Definir el plantean que al desarrollar una aplicación utilizando AOP
alcance del negocio, descubrimiento, análisis, diseño, puede existir un aumento en la complejidad tecnológica
implementación y prueba [1]. Para implementar el enfoque ya que es preciso contar con el compilador del lenguaje
de reglas de negocio resulta factible utilizar tecnologías o (por ejemplo, Java) con el que se implementa el núcleo
herramientas que posibiliten una implementación basada funcional de la aplicación y con el compilador del lenguaje
en reglas de negocio. Actualmente, se destacan dos AOP específico que permite implementar las reglas dentro
variantes de implementación, el uso de motores de reglas de los aspectos (por ejemplo, AspectJ). Adicionalmente,
de negocio y el empleo de la programación orientada a en estos trabajos se señala como principal limitante
aspectos [3] [6] [7]. que las reglas de negocio se implementan dentro de los
La primera variante tecnológica propone utilizar un aspectos en código fuente. Esto implica que los cambios
motor de reglas de negocio el cual se integra en la capa en las reglas de negocio exigen la modificación del
de lógica de negocio de las aplicaciones. Un motor de código fuente, lo que conlleva a realizar tareas como son:
reglas es una aplicación que, a partir de una información recompilar y desplegar la aplicación [16] [17].
Como se describe anteriormente, ambas variantes
inicial y un conjunto de reglas definidas en un repositorio,
tecnológicas presentan fortalezas y limitaciones; sin
decide qué reglas deben aplicarse a una determinada
embargo, en la bibliografía consultada no se han
colección de información, ejecuta las reglas requeridas,
identificado propuestas donde se integren ambas
aplica y evalúa los cambios que esta ejecución tiene sobre
variantes de implementación con vistas a potenciar sus
la información suministrada [8] [9] [10] .
fortalezas y mitigar sus limitaciones. Por otro lado el
En diferentes trabajos se ha analizado la factibilidad
estudio realizado evidencia inexistencia de una propuesta
de implementar el enfoque de reglas de negocio
formal de pasos dirigidos a la fase de implementación
utilizando motores de reglas. En [9] [11] se presenta
al aplicar el enfoque de reglas de negocio. También se
una solución utilizando un motor de reglas de negocio
ha identificado como una deficiencia la carencia de
para implementar el enfoque de reglas de negocio
alguna propuesta de medidas que permitan evaluar las
en el desarrollo de aplicaciones sobre la plataforma variantes existentes para implementar el enfoque de
empresarial de Java. En [10] se realiza un análisis de reglas de negocio. Es válido mencionar que este trabajo
los resultados obtenidos al aplicar el enfoque de reglas se enfoca en soluciones basadas en Java, primeramente
de negocio en aplicaciones desarrolladas siguiendo el por ser su carácter no propietario y también porque existe
paradigma de arquitectura guiada por modelos. Por otro un grupo de herramientas y tecnologías maduras que
lado, en [12] se presentan los resultados obtenidos en la permiten el desarrollo de aplicaciones empresariales
implementación de un sistema basado en reglas, para y la implementación del enfoque de reglas de negocio
la detención de fallos en transformadores eléctricos. Sin basadas en este lenguaje [10].
embargo, en varios de estos trabajos se señala que al A partir de lo expuesto anteriormente, en este trabajo se
integrar un motor de reglas de negocio en una aplicación, define como objetivo, integrar motores de reglas mediante
aún persiste el inconveniente de que se genera un la programación orientada a aspectos en la capa de
fenómeno de código disperso y entremezclado en varios
lógica de negocio para el desarrollo de aplicaciones en
puntos de la capa de lógica de negocio de la aplicación,
Java, siguiendo el enfoque basado en reglas de negocio.
ya que si bien las reglas de negocio se encuentran
Para cumplir este objetivo se proponen los pasos a seguir
físicamente separadas del código de la funcionalidad
durante la fase de implementación del enfoque basado
principal, el código necesario para acoplar el motor de
en reglas utilizando una solución que integra las dos
reglas y realizar la conexión de las mismas, se encuentra
variantes mencionadas. Además, se proponen medidas
disperso dentro de la aplicación [9].
La otra variante tecnológica que se destaca en la para evaluar el comportamiento de la implementación
implementación del enfoque de reglas de negocio consiste del enfoque de reglas utilizando las variantes existentes
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781 55
Integración de motores de reglas utilizando la programación orientada a aspectos en el desarrollo...
56 Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781
Juan Carlos García González - Margarita André Ampuero
Tabla 1
Resumen del análisis de motores de reglas de negocio
Criterios Hammurapi Rules Open Rules JBoss Rules o Drools
Documentación disponible Pobre Media Amplia
Facilidad de integración con
Media Media Alta
aplicaciones
Rendimiento Alto Alto Alto
Hacia delante y
No, es basado en
detrás basado en una
Mecanismo de inferencia Hacia delante y detrás tablas de decisión
implementación mejorada
definidas en Excel
del algoritmo Rete OO
No se conoce que
disponga de plugins
Integración con el IDE Eclipse Sí Sí
para integrarlo con
Eclipse
Soporte, última versión estable
4.0 (noviembre 2008) 6.3.2 (diciembre 2014) 6.2 (febrero 2015)
de la herramienta
Tabla 2.
Resumen del análisis de las principales herramientas AOP en Java
Criterio AspectJ JBoss AOP Spring AOP
Definición de aspectos por:
• Código x
• Anotaciones x x
• XML x x
Mezcla de aspectos:
• En tiempo de compilación x x
• En tiempo de carga x x
• En tiempo de ejecución x x x
Documentación Amplia Media Amplia
Programa Invocado y administrado Invocado y administrado
Entorno de ejecución
plano en Java por la plataforma JBoss por la plataforma Spring
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781 57
Integración de motores de reglas utilizando la programación orientada a aspectos en el desarrollo...
6. Identificar los puntos de la lógica que van a ser la información es devuelta al contexto de la lógica de
interceptados, por los aspectos que van a interactuar con negocio y la aplicación continúa su flujo de ejecución, esto
el motor de reglas de negocio. Se debe tener identificado es representado mediante las flechas identificadas con 4.
qué clases y métodos de la lógica de negocio van a ser A partir de la revisión bibliográfica realizada, se pudo
interceptados y qué reglas deben ser invocadas en cada observar que solo en algunos trabajos que implementan
caso. el enfoque de reglas de negocio se utilizan medidas para
7. Definir puntos de corte y puntos de unión. El cómo se valorar las ventajas que este ofrece. Estas medidas van
interceptan los métodos de la lógica de negocio está dado dirigidas fundamentalmente al análisis de la cantidad de
por el tipo de punto de corte a utilizar. Puede ser un punto líneas de código y la mantenibilidad de cada solución. Por
de corte que intercepta antes de entrar a la ejecución del otro lado, la norma ISO 9126 Parte 3 propone medidas que
método (punto de corte conocido como before). Puede permiten evaluar la calidad interna de un software. Para
ser un punto de corte de tipo after, que se ejecuta la evaluar la característica de calidad eficiencia se definen
intercepción al concluir el método. varias medidas, las cuales son utilizadas para predecir la
eficiencia del comportamiento de un software. Asociado
8. Definir qué información se pasará a las reglas. Al
a la eficiencia se define la medida comportamiento
utilizar AOP cuando un aspecto intercepta un método este
del tiempo. Esta medida define atributos que permiten
captura información que está en el contexto del método
predecir el comportamiento del tiempo de rendimiento
en cuestión. Dicha información es pasada al aspecto,
de una aplicación. Uno de los atributos es el tiempo de
dentro del cual puede ser modificada como resultado de
respuesta, que se define como el tiempo estimado para
la ejecución de alguna regla de negocio y al finalizar la completar una tarea específica.
ejecución del aspecto, la información debe regresar al
contexto del método con los cambios realizados.
9. Implementar dentro del aspecto la interacción con
el motor de reglas. Esto implica incorporar las líneas de
código necesarias para interactuar con el motor de reglas.
Los cinco primeros pasos son propios de la variante que
solo utiliza el motor de reglas de negocio. Los pasos del
seis al nueve son similares a la propuesta donde solo se
aplica AOP como variante de solución. La diferencia está
dada por la función de los aspectos. En el paso nueve
para la variante que solo usa AOP, los aspectos son los
responsables de implementar las reglas de negocio. En
esta nueva propuesta de integración, los aspectos se
encargan de implementar la comunicación entre el motor Fig. 1. Interacción entre la lógica de negocio y el motor de
reglas utilizando aspectos.
de reglas y el núcleo de lógica de negocio. Es válido
mencionar que para obtener esta propuesta integradora Otras medidas propuestas por la ISO 9126 permiten
de nueve pasos, fue necesario previamente definir las evaluar la característica asociada a la facilidad de
propuestas de pasos para la fase de implementación, mantenimiento o mantenibilidad de un software. Uno
tanto para la vía que solo utiliza el motor de reglas, así de los atributos de esta medida es la capacidad de
como para la vía que solo utiliza programación orientada cambios que puede presentar un software. Esta medida
a aspectos. está destinada a estimar el esfuerzo necesario cuando
La figura 1 ayuda a comprender cómo sería la se trata de implementar una modificación al software, o
interacción entre el núcleo principal de lógica de sea, el esfuerzo ante un cambio. Basado en lo anterior
negocio de la aplicación y el motor de reglas mediante se propone tener en cuenta las siguientes medidas para
los aspectos. Los aspectos mediante los puntos de evaluar la solución propuesta y compararlas con las dos
corte definidos, interceptan los métodos de la lógica de variantes tecnológicas identificadas en la literatura. No se
negocio y capturan la información de la llamada a los utilizan estrictamente las medidas propuestas por la ISO
métodos. Esto se representa por las flechas etiquetadas pues estas van dirigidas a productos de software en fase
con 1. Dentro de los aspectos está la interacción con final de desarrollo o en explotación.
el motor de reglas. La información que es capturada - Rendimiento de la aplicación: El rendimiento de la
por los aspectos se pasa al motor, esto se representa aplicación indica su comportamiento respecto el tiempo
por las flechas etiquetadas con 2. Sobre la base de de ejecución. Esta medida será expresada en segundos.
la información recibida, el motor evalúa las reglas y Para evaluar la facilidad de mantenimiento se propone
ejecuta las que se cumplen. La información puede ser utilizar dos medidas:
modificada por la ejecución de las reglas. Seguido a - Tiempo para cambiar una regla. Los valores de esta
esto, la información regresa a los aspectos, lo cual se medida se propone que sean evaluados en segundos.
representa con las flechas marcadas con 3. Finalmente,
58 Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781
Juan Carlos García González - Margarita André Ampuero
Tabla 3
Reglas de negocio definidas para el ejemplo basado en la tiendaa virtual
Código de
Descripción de la regla de negocio en lenguaje natural
la regla
RN1 Si es un cliente asociado a la tienda entonces el costo de envío es gratis
RN2 Si no es un cliente asociado a la tienda, el costo de envío es el 2 % del importe total de la compra
RN3 Si el importe total de la compra está entre $500 y $1 000 se debe aplicar un 5 % de descuento
RN4 Si el importe total de la compra es superior a $1 000 se debe aplicar un 10 % de descuento
Si la devolución tiene lugar en los primeros siete días posteriores a la compra, se le reintegra al
RN5
cliente el 90 % del importe total del precio original de los productos a devolver
Si la devolución tiene lugar entre 8 y 30 días posteriores a la compra, se le reintegra al cliente el
RN6
75 % del importe total del precio original de los productos a devolver
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781 59
Integración de motores de reglas utilizando la programación orientada a aspectos en el desarrollo...
Tabla 4
Resumen del desempeño de las variantes para implementar el enfoque basado en reglas utilizando las medidas propuestas
Variantes de solución
Característica / JBoss
Medidas JBoss
Atributo AspectJ Rules +
Rules
AspectJ
Tiempo de respuesta (s) Rendimiento 2 1 2
Número de líneas de código fuente para implementar reglas
Tamaño 10 32 22
de negocio
Número de Operaciones necesarias para cambiar una Capacidad de
3 6 3
regla de negocio mantenimiento
Capacidad de Entre 120
Tiempo necesario para cambiar una regla de negocio (s) <60 <60
mantenimiento y 180
Cantidad de veces que es necesario repetir en la lógica Dispersión del
de negocio las líneas de código necesarias para validar y código 2 0 0
ejecutar reglas de negocio
Cantidad de líneas de código necesarias para validar y
Código
ejecutar reglas de negocio que están mezcladas con la 8 0 0
entremezclado
lógica de negocio de la aplicación
60 Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781
Juan Carlos García González - Margarita André Ampuero
Respecto a potenciar las ventajas que ofrece utilizar la la herramienta de programación orientada a aspectos
variante AOP, al integrarla con el motor se logra eliminar AspectJ para desarrollar una aplicación en Java.
el fenómeno de código disperso y entremezclado. O - Se definen seis medidas para evaluar el desempeño
sea, tanto al aplicar la segunda como la tercera variante de las variantes que implementan el enfoque de reglas
desaparece de la lógica de negocio el código responsable de negocio: una para valorar el rendimiento, otra para
de validar y ejecutar la reglas de negocio, ya que en la el tamaño, dos para la capacidad de mantenimiento
segunda variante, el código se implementa en el cuerpo de las reglas, y dos para evaluar el código disperso y
de los aspectos y en la tercera, en el cuerpo del aspecto entremezclado, respectivamente.
se invoca al motor de reglas, quien se encarga de estas - Se comprobó que la solución propuesta constituye
tareas. Por lo tanto, ambas variantes superan a la primera. la mejor variante de las evaluadas para implementar
Respecto al tamaño, o sea, la cantidad de líneas de el enfoque de reglas de negocio ya que combina las
código para implementar reglas de negocio, se observa potencialidades de las variantes que integra, aprovecha la
cómo la variante que requiere menos líneas de código es la capacidad de mantenimiento que ofrece el empleo de los
que utiliza únicamente el motor de reglas y la solución que motores de reglas y la fortaleza de AOP para eliminar el
requiere más líneas, resulta ser la que utiliza solo AspectJ. código disperso y entremezclado.
Esto se debe a la cantidad de líneas de código que se Para trabajos futuros se propone: incorporar nuevas
necesitan para implementar cada aspecto. Respecto a la medidas que ayuden a mejorar la evaluación del
tercera variante, solución propuesta, el número de líneas desempeño de las variantes tecnológicas, implementar
de código es superior a la primera variante. Esto pudiera el enfoque de reglas utilizando otras herramientas AOP
considerarse como una desventaja, pero no es así, ya y otros motores de reglas, así como diseñar un caso
que la tercera variante al utilizar aspectos para integrar el de estudio más complejo que incluya más reglas de
motor a la aplicación, reduce los efectos de dispersión de negocio para mejorar la comparación de las variantes de
código y código entremezclado que se produce cuando implementación del enfoque basado en reglas.
hay que incorporar el motor de reglas directo al núcleo de
lógica de negocio de la aplicación. REFERENCIAS
Por lo explicado anteriormente, se puede concluir 1. VON HALLE, B. Business Rules Applied-Building
que la solución propuesta resulta la variante de mejor Better Systems Using the Business Rules Approach.
desempeño. Sin embargo, un aspecto a atender es el USA: John Wiley & Sons, Inc, 2002.
rendimiento, ya que el tiempo de ejecución utilizando la 2. ROSS, R. G. Business Rule Concepts-Getting to the
variante AOP fue ligeramente inferior que utilizando las Point of Knowledge. USA: Business Rule Solutions Inc,
variantes que aplican motores de reglas. 2005.
3. MESERVY, T. O.; ZHANG, Chen. et. al."The Business
CONCLUSIONES Rules Approach and Its Effect on Software Testing".
Al culminar el trabajo se arriban a las siguientes IEEE COMPUTER SOCIETY. 2012, núm.4, vol. 29,
conclusiones: pp. 60-66.
- Para desarrollar aplicaciones empresariales utilizando el 4. PACHECO, Y.; ESTÉVEZ, S.; MARTÍNEZ, M. E.
enfoque de reglas de negocio se necesitan herramientas "Integración de un sistema de gestión de reglas de
o tecnologías que deben ser definidas en la fase de negocio al flujo de trabajo control de historias clínicas
diseño y después juegan un papel importante de la fase para trasplante renal". Revista Cubana de Informática
de implementación. Médica. 2015, núm. 1, vol. 7, pp. 105-112.
5. CHAWARE, S.; KARANDIKAR, A, "Development
- JBoss Rules se destaca como un potente motor de
of Loan Module using Business Rules Engine".
reglas de negocios para implementar el enfoque de
COMPUSOFT, An International Journal of Advanced
estas en aplicaciones desarrolladas en Java, cumple con Computer Technology. 2014, núm. 7, vol. 3, pp. 1007-
la especiación JSR94 lo que facilita su integración en 1011.
aplicaciones y además posee una amplia documentación 6. CASAS, S.; MARCOS, C. et al. "Estrategias para la
y cuenta con un buen soporte por la comunidad de Integración y Conexión de Reglas de Negocio con
desarrolladores. Aspectos". XII Workshop de Investigadores en Ciencias
- AspectJ se destaca entre las herramienta AOP para el de la Computación, pp. 337-341, 2010.
entorno Java, dado que cuenta con un amplio modelo 7. GANG, Z.; TAO, G.; JIEJUN, L. "Implementation of
de puntos de unión, lo que facilita la intercepción de los business rules approach in transformer fault detection
métodos de la lógica de negocio, así como a la existencia system". 7th International Conference on Computer
de una amplia documentación. Science & Education (ICCSE), IEEE, vol. 12, pp. 135-
- Se definieron los nueve pasos a seguir para implementar 138, 2012.
el enfoque de reglas de negocio integrando el motor de 8. CHAWARE, S.; KARANDIKAR, A. "A Review of Methods
reglas de negocio JBoss Rules mediante el empleo de for Developing Business Rules Engine" International
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781 61
Integración de motores de reglas utilizando la programación orientada a aspectos en el desarrollo...
Journal of Advanced Research in Computer and 21. DROOLS. Reference Manual Drools 6.1. Available:
Communication Engineering. 2014, núm. 3, vol. 3, http://docs.jboss.org/drools/release/6.1.0.Final/drools-
pp. 5878-5880. docs/html_single/index.html. 2013.
9. GARCÍA, J. C.; ANDRÉ, M. "Implementación del 22. DI, L.; TAO, G.; JIANG-PING, X. "Rule Engine based on
enfoque de reglas de negocio utilizando motores de improvement rete algorithm" International Conference
reglas en el desarrollo de aplicaciones Java." Ciencias on Apperceiving Computing and Intelligence Analysis
de la Información. 2015, vol. 46, núm. 1, pp. 41-46. (ICACIA), vol. 10, pp. 346-349, 2010.
10. ALONSO, J. L. "Aplicación del Enfoque de Reglas de 23. MARTÍNEZ, J. "Introduciendo Semántica en un
Negocio sobre el paradigma MDA". Tesis de Maestría Proceso de Desarrollo de Software a través de
en Informática Aplicada, Departamento de Ingeniería Reglas de Negocio". Tesis Doctoral, Departamento
de Software, Universidad Tecnológica de La Habana de Ingeniería de Sistemas Telemáticos, Universidad
José Antonio Echeverría, Cujae, Cuba, 2011. Politécnica de Madrid, España, 2010.
24. RIVILLAS, O. "Estado del arte de los motores de
11. GARCÍA, J. C. "Utilización de Motores de Reglas
reglas de negocio BRM". Tesis de Grado, Facultad
de Negocio en Aplicaciones J2EE". Tesis de Grado,
de Ingeniería, Universidad de San Buenaventura,
Departamento de Ingeniería de Software, Universidad
Colombia, 2012.
Tecnológica de La Habana José Antonio Echeverría,
25. RYMER, J.; GUALTIERI, M. Market Overview:
Cujae, Cuba, 2009. Business Rules Platforms 2011. Forrester Research
12. KELLENS, A.; DE SCHUTTER, K. et al. "Experiences Report.
in modularizing business rules into aspects". IEEE 26. HERNÁNDEZ, L. R. "Un modelo para la implementación
International Conference on Software Maintenance, de la seguridad de una aplicación Web con el uso de la
ICSM. IEEE, vol. 8, pp. 448-451, 2008. Programación Orientada a Aspectos". Tesis de Maestría
13. MUKUNDAN, A.; CHANG, L. "An Engine-Independent en Informática Aplicada, Departamento de Ingeniería
Framework for Business Rules Development". 15th de Software, Universidad Tecnológica de La Habana
IEEE International Enterprise Distributed Object José Antonio Echeverría, Cujae, Cuba, 2012.
Computing Conference, IEEE, vol. 11, pp. 75-84, 2011.
14. CIBRÁN, M. A.; D’HONDT, M. "Composable and AUTORES
Reusable Business Rules Using AspectJ" in Proceedings Juan Carlos García González
of the Workshop on Software Engineering Properties Ingeniero Informático, Facultad de Ingeniería Informática,
of Languages for Aspect Technologies (SPLAT) at the Universidad Tecnológica de La Habana José Antonio
International Conference on Aspect-Oriented Software Echeverría, Cujae, Cuba
Development. Boston, USA, 2003.
15. SOUMEYA, D.; DJAMEL, M. "Quantitative and Margarita André Ampuero
qualitative evaluation of AspectJ, JBoss AOP and Ingeniera Informática, Doctora en Ciencias Técnicas,
CaesarJ, using Gang-of-Four design patterns". Profesora Titular, Facultad de Ingeniería Informática,
International Journal of Software Engineering and Its Universidad Tecnológica de La Habana José Antonio
Applications. 2013, vol. 7, núm. 6, pp. 157-174. Echeverría, Cujae, La Habana, Cuba
16. BOGGIANO, M. B.; CASTRO, A. "SLD149 Validación
de la funcionalidad del traductor LPT-SQL para la base
de datos de trasplante renal". IX Congreso Internacional
Informática en Salud, La Habana, Cuba, 2013.
17. WU, B.; GUO, Z. "Research and Application of
Rule Engine in Scheduled Outage Management"
in Proceedings of 2nd International Conference on
Computer and Information Application (ICCIA 2012),
pp. 446-449, 2012.
18. IBM. Business Rules Management System (BRMS).
2015. Available: http://www-01.ibm.com/software/
websphere/products/business-rule-management/.
19. SILVERIA, L. "Diseño e implementación de un
motor de reglas dinámicas usando especificaciones
GeneXus". Tesis de Maestría, Facultad de Ingeniería,
Universidad de la República, Uruguay, 2010.
20. OPENRULES. Sitio Oficial de Open Rules. 2012.
Available: http://openrules.com/.
62 Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781
Juan Carlos García González - Margarita André Ampuero
Key words: business rules approach, business rules engine, Aspect Oriented Programming, JBoss Rules,
AspectJ
Revista Cubana de Ingeniería. Vol. VII, No. 3, septiembre - diciembre, 2016, pp. 54 - 63, ISSN 2223 -1781 63
View publication stats