El documento describe el uso de reglas de negocio en aplicaciones empresariales desarrolladas sobre la plataforma Java. Explica que la capa de lógica de negocio es la que más cambia debido a cambios en los procesos empresariales. Propone el uso de reglas de negocio para modelar la lógica de negocio de manera que sea más fácil de mantener y actualizar cuando cambien los requisitos. Define conceptos clave como reglas de negocio y cuando es adecuado usar esta metodología, especialmente para
0 calificaciones0% encontró este documento útil (0 votos)
62 vistas5 páginas
El documento describe el uso de reglas de negocio en aplicaciones empresariales desarrolladas sobre la plataforma Java. Explica que la capa de lógica de negocio es la que más cambia debido a cambios en los procesos empresariales. Propone el uso de reglas de negocio para modelar la lógica de negocio de manera que sea más fácil de mantener y actualizar cuando cambien los requisitos. Define conceptos clave como reglas de negocio y cuando es adecuado usar esta metodología, especialmente para
El documento describe el uso de reglas de negocio en aplicaciones empresariales desarrolladas sobre la plataforma Java. Explica que la capa de lógica de negocio es la que más cambia debido a cambios en los procesos empresariales. Propone el uso de reglas de negocio para modelar la lógica de negocio de manera que sea más fácil de mantener y actualizar cuando cambien los requisitos. Define conceptos clave como reglas de negocio y cuando es adecuado usar esta metodología, especialmente para
El documento describe el uso de reglas de negocio en aplicaciones empresariales desarrolladas sobre la plataforma Java. Explica que la capa de lógica de negocio es la que más cambia debido a cambios en los procesos empresariales. Propone el uso de reglas de negocio para modelar la lógica de negocio de manera que sea más fácil de mantener y actualizar cuando cambien los requisitos. Define conceptos clave como reglas de negocio y cuando es adecuado usar esta metodología, especialmente para
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 5
Reglas de negocio en aplicaciones sobre la
plataforma Java empresarial.
Juan Carlos Garca Gonzlez Dirigido por: Ing. Jos Luis Alonso Ochoa
Resumen lo cual, sin duda alguna, ha constituido un valioso aporte
En la actualidad ha aumentado la demanda de aplicaciones en cuanto a agilidad de trabajo y codificacin. La capa informticas en el marco empresarial, por lo cual la industria cliente fue concebida en ambiente desktop haciendo uso del de software debe garantizar que las aplicaciones brinden alta paquete Swing. La llamada capa del lado del servidor, en calidad y rendimiento. En el Grupo de Ingeniera de Software la que se agrupan las capas de acceso a datos y de lgica de y Tecnologas de la Informacin GISTI se ha alcanzado experiencia en el desarrollo de software especialmente sobre negocio, ha sido desplegada en un servidor de aplicaciones la plataforma Java 2 Enterprise Edition (J2EE). A partir de JBoss [4] y para ella ha utilizado el framework EJB2 [5]. esta experiencia se destaca el hecho de que el proceso de Durante la implementacin del proyecto, se ha evidenciado mantenimiento de los sistemas desarrollados y que la capa de lgica de negocio ha sido sin margen a principalmente en la capa de lgica de negocio resulte ser error, la ms costosa en cuanto a tiempo de respuesta ante mucho menos productivo y gil que en el resto de las capas un cambio en las polticas de negocio en el proceso de que componen los sistemas empresariales. En este artculo se mantenimiento. presenta una nueva metodologa para el desarrollo de la capa de lgica de negocios de aplicaciones de softwares as como se LAS REGLAS DE NEGOCIO describen las herramientas necesarias para la aplicacin de esta nueva metodologa. Las reglas de negocio permiten definir las condiciones para establecer un negocio o de qu forma se controlar el Palabras clave: Reglas de negocio. comportamiento de los eventos dentro de este. Muy importante resulta establecer los pasos que se deben seguir INTRODUCCIN para alcanzar las metas y objetivos del mismo. Tomando Actualmente los procesos de negocios son soportados como base el planteamiento anterior se puede afirmar que por tecnologas de informacin, como puede ser un las reglas de negocio son de vital importancia, si estos software de gestin o una aplicacin con fines negocios son soportados por aplicaciones de tecnologas de empresariales. Partiendo de esta situacin se puede afirmar la informacin. Es por esto que hace ms de una dcada se que la capa de lgica de negocio es la que generalmente ha ido produciendo un acercamiento a las reglas de tiende a variar, esto se debe al importante proceso de negocio como un nuevo enfoque para definir los procesos mantenimiento a que son sometidos todos los sistemas de de negocio. De aqu han surgido importantes gestin, ya que necesariamente presentan constantes organizaciones como es el grupo de reglas de negocio o cambios en los procesos de negocio. En esta capa de lgica BRG1 o la comunidad de reglas de negocio. Como de negocio se encuentran codificadas las polticas o reglas resultado final se ha obtenido una nueva metodologa o que definen el negocio, las cuales deben ser reflejadas en el enfoque de desarrollo basada en reglas de negocio, as comportamiento de la aplicacin. Polticas que por lo como numerosos conceptos, definiciones, tcnicas y general se encuentran enterradas en el cdigo fuente de la herramientas relacionadas con el tema. capa de lgica de negocio de la aplicacin. Otro aspecto importante es que, en ocasiones, los equipos de desarrollo CONCEPTOS O DEFINICIONES encargados del mantenimiento del software no son los En el entorno de las reglas de negocio no existe una mismos que implementaron la aplicacin, lo cual provoca definicin estndar del trmino regla de negocio. En este demora a la hora de aplicar los cambios, lo que influye de trabajo se presenta la definicin redactadas por el grupo de forma negativa en la eficiencia y rendimiento del equipo reglas de negocio o BRG, la cual es la ms utilizada por los de desarrollo. expertos en el tema: una regla de negocio es una Por citar un ejemplo se puede mencionar el Sistema de declaracin que define u obliga un cierto aspecto del Gestin de la Nueva Universidad (SIGENU), proyecto negocio. Con stas se pretende imponer la estructura del creado por un equipo del grupo de investigacin y negocio o controlar o influenciar el comportamiento del desarrollo GISTI del CEIS en la CUJAE y realizado sobre la plataforma J2EE, utilizando el paradigma MDA [1-3], 1 Del ingls Business Rules Group 50 negocio. reglas de negocio, se estn reutilizando correctamente. Luego se definen las reglas de negocio como el sistema Segn lo antes mencionado las reglas de negocio deben de condiciones que gobiernan que un evento de negocio centrarse en un solo concepto, en ocasiones en una ocurra de una manera permitida. Es decir, un evento en el aplicacin se deben identificar gran cantidad de reglas. Por negocio fracasa cuando no puede cumplir las reglas lo cual es recomendable que las reglas de negocios deban establecidas para un evento exitoso. Los lderes del negocio estar separadas de los dems artefactos de la captura de determinan la diferencia entre un exitoso y un infructuoso requisitos ya que pueden ser referenciadas desde dentro de evento de negocio, de aqu se extraen las reglas que los artefactos, como pueden ser casos de usos o diagramas definen todas las posibles y permitidas condiciones de xito de colaboracin. En ocasiones se definen las reglas de de un evento de negocio, junto con las que no son negocio dentro de los casos de usos, lo cual se puede permitidas [6]. transformar en una tarea compleja, adems se debe Cumplir una regla, es ejecutar una o ms acciones considerar que una misma regla puede ser referenciada en debido al cumplimento de una o varias condiciones ms de un caso de uso [8]. previamente definidas. Se puede definir una regla de negocio como una regla que est bajo el dominio de un CUNDO Y POR QU UTILIZAR REGLAS DE NEGOCIO EN UNA negocio, el cual puede definir, modificar, y descartar reglas APLICACIN? de negocio cuando sea necesario. Las reglas se encargan de En los sistemas de gestiones actuales la parte ms la definicin y control del proceso de negocio en una compleja radica en la lgica de negocio, aqu se encuentran organizacin, lo que es muy importante, todo software ya los requerimientos funcionales y de comportamiento, lo sea empresarial o no, est definido en gran parte por reglas cual resulta una complicada implementacin de la capa [7]. lgica de negocio. La forma ms comn de implementar la Las reglas de negocio se centran a menudo en asuntos misma ya sea en aplicaciones J2EE [9] o no, es escribiendo como el control de acceso, por ejemplo el proyecto cdigo que cumpla con los requerimientos establecidos por SIGENU el cual es un software de gestin docente que la lgica y reglas de negocio. Lo que da como resultado un puede tener la siguiente poltica de acceso a la complejo cdigo, provocando que el mantenimiento y informacin: actualizacin de la aplicacin sean arduas tareas [10]. Permite a los profesores entrar y modificar los registros Cuando se est ante una aplicacin que presenta una de los estudiantes que toman las asignaturas que ellos compleja lgica de negocio y que puede variar con bastante imparten, pero no los registros de los estudiantes en frecuencia, ya sea por demandas de los clientes o por otros otros seminarios. factores externos; y se necesita que estos cambios se Definicin de los planes de estudio solo puede ser reflejen en el comportamiento de su aplicacin en el menor realizada por los vicedecanos docentes. tiempo posible, se debe considerar el empleo de las reglas Baja docente de tipo definitiva solo puede ser revocada de negocio para modelar y administrar la lgica de negocio por la secretara docente general de la universidad. de la aplicacin [11]. Las reglas de negocio pueden tambin definir El uso de las reglas de negocio como parte de la lgica operaciones computacionales del negocio, por ejemplo, de negocio de aplicaciones se debe a los constantes cmo convertir la calificacin en forma de puntos (91 cambios en los negocios, por varios factores que pueden puntos) que recibe un estudiante en una evaluacin a una ser: calificacin en grado de letra (A -). Tambin existen Orientar el negocio hacia nuevos mercados. reglas de negocio que se centran en las polticas de la Introducir nuevos productos. organizacin como puede ser la poltica de una universidad Cumplir con nuevas regulaciones o polticas que establece separar por un ao al estudiante que administrativas. desaprueba ms de dos asignaturas en el mismo semestre Creacin de nuevos acuerdos con los clientes o los [8]. suministradores. Las reglas de negocio se identifican principalmente Cambios en los objetivos o metas del negocio. durante el transcurso de la captura y anlisis de requisitos. Una aplicacin basada en reglas de negocio es gil; con Tambin durante el modelado de casos de uso se pueden una arquitectura concebida intencionalmente para el identificar reglas de negocios. Una buena regla de negocio cambio continuo en la lgica de decisin. Las reglas de es cohesiva, es decir, describe solamente un concepto. negocio son el medio para representar las decisiones que el Asegurndose de que las reglas de negocio sean cohesivas, negocio debe tomar. Las decisiones deben ser confiables, se hacen ms fciles de definir y aumenta la probabilidad detectables, y auditadas. Para lograr eso, se necesita de que sean reutilizadas, cada vez que uno de los artefactos construir servicios de decisin que sean altamente del sistema se refiere a una regla de negocio, incluso otras reutilizables, manejables y flexibles. Los motores de reglas 51 de negocio son la tecnologa ideal para alcanzar esas adems, las reglas contienen una o ms clusulas metas. comunes [6]. Un sistema construido segn el enfoque de las reglas de Facilita el desarrollo de la aplicacin. negocio tiene muchas ventajas sobre otros sistemas. Sin Bsicamente el experto en reglas define las reglas embargo, dado el empuje del comercio electrnico y el y estas se ejecutan en aras de satisfacer las potencial de Internet para los negocios, la ventaja ms necesidades de la aplicacin, sin necesidad de importante es que un sistema de reglas de negocio est modificar el cdigo fuente u otros aspectos diseado para acomodar fcilmente cambios en el negocio tcnicos de la aplicacin [6]. con una mnima alteracin del sistema y en el menor Reutilizacin de reglas. Una vez declaradas las tiempo posible. reglas, no solo pueden ser utilizadas por la Entre las ventajas de incorporar reglas de negocio a la aplicacin, tambin pueden ser reutilizadas por aplicacin se pueden destacar: ejemplo, por sistema gestores de base de datos u Programacin declarativa: Las reglas permiten otros tipos de software. Para lograr esto se debe decir qu hacer y no cmo hacerlo. La ventaja de utilizar un sistema de administracin de reglas de este aspecto radica en que las reglas hacen ms negocio o se puede disear un sistema propio, que fcil expresar las soluciones de difciles problemas agrupe las reglas de forma lgica y puedan ser y por tanto poder verificar esas soluciones. Las reutilizadas y compartidas [6]. reglas son ms fciles de leer y entender que el Reglas dinmicas. Esta ventaja est dada por la posibilidad cdigo por parte del personal del negocio. de cambiar un sistema de reglas de negocio fcilmente. Un Separacin de los datos y la lgica: Esto se refiere experto en reglas puede cambiar una o varias reglas a la a que los datos estn en los objetos de dominio del vez, y tener ese cambio disponible al servicio del negocio negocio y la lgica est en las reglas de negocio. de forma inmediata. De esta manera, el sistema reglas de Siendo as, la lgica de negocio puede ser mucho un negocio se convierte en una plataforma para el cambio ms fcil de entender, mantener y enfrentar del negocio. Las reglas por s mismas se convierten en posibles cambios en el futuro, pues toda la lgica instrumentos para la adaptabilidad del negocio [6]. est representada en las reglas. Conocimiento centralizado: Usando reglas, se crea QU ES LA METODOLOGA DE LAS REGLAS DE NEGOCIO? un repositorio de conocimiento que permite La metodologa de reglas de negocio es un conjunto de verificar la poltica de negocio por todo el pasos y tcnicas para desarrollar sistemas de reglas de personal del negocio. Idealmente las reglas son negocio. Un sistema de reglas de negocio es un sistema tan legibles que pueden tambin servir como automatizado que separa las reglas de negocio documentacin. lgicamente, y quizs fsicamente, de otros aspectos del Simplicidad. La metodologa de las reglas de sistema y las comparte a travs de los datos almacenados, negocio es simple de entender, tanto para el interfaces de usuario, y aplicaciones [6]. personal del negocio como para el personal Existen varias razones para construir un sistema de reglas tcnico. El concepto de una regla es muy intuitivo, de negocio, las dos principales son: reducir el tiempo de incluso cuando se tiene varias clasificaciones de desarrollo y entregar un sistema diseado para el cambio. reglas. El personal del negocio puede no estar Para esto se necesita una metodologa de desarrollo de interesado en modelos de datos, modelos de sistemas que divida el dominio del problema al menos en procesos, o modelos de objetos, pero estn tres aspectos separados, pero completamente relacionados: absolutamente interesados en las polticas y reglas datos, procesos, y reglas. del negocio, ya que son las que guan el negocio El objetivo de la metodologa de reglas de negocio, es [6]. separar tres aspectos importantes de un sistema: reglas, Pequeo nmero de conceptos necesarios, no datos y procesos. Una vez separados los aspectos la tcnicos. Hay algunos conceptos alrededor de una metodologa se enfoca a los pasos y a las tcnicas para regla, como son: decisiones, patrones de reglas, capturar y manejar las reglas de negocio. Esto es de gran familias de reglas, y las clusulas de una regla. importancia, pues las reglas de negocio, con Una decisin es simplemente una agrupacin frecuencia representan el aspecto ms descuidado o con lgica de reglas. Las reglas se pueden agrupar en menos formalismo de otras metodologas. La ventaja nica los patrones de reglas para propsitos de anlisis, del acercamiento a las reglas de negocio es que influye en basados en similares clusulas en las reglas. Estos el negocio y en los desarrolladores de sistemas. Para el patrones de reglas se pueden agrupar en familias entorno del negocio, el acercamiento a las reglas de de reglas que resultan en una salida similar y negocio significan una metodologa en la cual los lderes 52 de negocio utilizan las reglas como instrumentos Se puede decir que un motor de reglas brinda una preventivos y creativos de cambios en el negocio [6]. infraestructura desacoplada del cdigo fuente de la aplicacin para la definicin, administracin y ejecucin de VENTAJAS DE APLICAR LA METODOLOGA DE LAS REGLAS DE reglas de negocio [14]. NEGOCIO Los motores brindan un conjunto de herramientas que Se basa en un modelo de datos estables, donde permite a los analistas de negocio y desarrolladores estos se comparten a travs de la aplicacin y los construir la lgica de negocio basndose en los datos del confines organizacionales. negocio. Los motores de reglas reducen el mantenimiento Se basa en las reglas que se comparten a travs la de la aplicacin, as como los costos de extensibilidad, aplicacin y los lmites organizacionales. debido a que disminuye la complejidad de los componentes que implementan la compleja lgica de negocio. Se desarrolla alrededor del centro del flujo de procesos, basndose en las dependencias de las CONCLUSIONES reglas, permitiendo la seleccin de otros tipos de flujo de proceso. El conocimiento sobre la lgica de un negocio es lo ms Permite escoger varias tecnologas de importante para optimizar el funcionamiento del mismo. arquitecturas y diseos de automatizacin de las Conocimiento, sobre qu es y que no es posible, que es o no reglas. requerido, la espina dorsal de cada compaa y Permite el seguimiento de los objetivos del organizacin es su lgica de negocio. Las reglas de negocio negocio a los requerimientos y de estos a las ofrecen conocimiento, ellas van en todas las formas al reglas automatizadas. ncleo de los procesos de negocio, las reglas proporcionan las guas para el comportamiento, ofrecen los estndares HERRAMIENTAS PARA EL DESARROLLO DE SOFTWARE para eficacia y supervisan la calidad de los datos. ENFOCADOS EN REGLAS DE NEGOCIO Consecuentemente, las reglas de negocio brindan una En la actualidad muchas organizaciones trabajan de una valoracin de la eficacia de los procesos de negocio. forma que es posible definir eventos del negocio como El acercamiento de las reglas de negocio da a la casos de uso, donde las decisiones se basan en un conjunto compaa un sistema de herramientas para controlar los de reglas. Dichas organizaciones pueden estar interesadas procesos del negocio y permiten contestar la pregunta de en aplicar la tecnologa que brindan de los motores de qu se debe hacer, independientemente de cmo se va reglas. Si se planifica hacer los casos de uso ms eficiente hacer. o incluso automtico y, al mismo tiempo controlar la Por su parte, los motores de reglas son una novedosa calidad de las decisiones, el uso de reglas y los motores de tecnologa que despliegan las reglas que definen la lgica reglas, esto resultara una buena solucin. de negocio de las organizaciones o empresas. Los motores Los motores de reglas son marcos de trabajo o se convierten en un componente vital para desarrollar una frameworks que permiten organizar la lgica de negocio de aplicacin con gran adaptabilidad a los cambios que la aplicacin, lo que le permite al usuario definir reglas enfrentan los negocios diariamente. apoyndose en conocimiento que sabe que va a ser cierto en un momento determinado, y a partir de aqu, permitir a REFERENCIAS mecanismos a bajo nivel inferir conclusiones o tomar decisiones [12]. [1] Company, T. M. :Model Driven Development for J2EE Utilizing a Model Driven Architecture (MDA) Approach, The Middleware Se define que un motor de reglas de negocio es un Company. 2003. componente que, a partir de una informacin inicial y un [2] Molina, J. J. G. Ingeniera de modelos con MDA. 2004. conjunto de reglas, detecta qu reglas deben aplicarse en [3] AndroMDA. "What is AndoMDA." 2008. un instante determinado y cules son los resultados de esas From:http://galaxy.andromda.org/index.php?option=com_content&task =blogcategory&i d=0&Itemid=42 1658642. reglas. Bsicamente un motor de reglas de negocio est [4] Jboss. The JBoss 4 Application Server Guide. 2005. compuesto de tres elementos: un conjunto de reglas, el [5] Floyd , Marinescu: EJB Design Patterns. John Wiley & Sons, Inc, espacio de trabajo o conocimiento que tiene y el procesador 2002. de reglas. [6] von Halle, B. : Business Rules AppliedBusiness Better Systems Las reglas son sentencias de la forma IF-THEN, de tal Using the Business Rules Approach. John Wiley & Sons, New York, manera que si se cumplen todas las condiciones del IF se 2002. ejecutan todas las acciones del THEN. El espacio de trabajo [7] Gonzlez, JC.: Motor de reglas: TDI Gasolina. Available: http://biztalkfridays.wordpress.com/2008/08/29/motor-de-reglas-tdi- es donde se almacena el conocimiento que el motor o-gasolina/ utilizar para decidir qu reglas deben activarse [13]. [8] Ambler, S.: Business Rules. Available: http://www.agilemodeling.com/artifacts/businessRule.htm 53 [9] Rob, Johnson:. Expert One-on-One J2EE Design and Development. Wiley Publishing, Inc, 2003.
[10] Olivieri, R.:Implement business logic with the Drools rules
[11] Giurca, A.: When to Use Rules in Your Application. Available:
http://oxygen.informatik.tu-cottbus.de/RealRules/?q=node/49 [12] P. Browne, Give Your Business Logic a Framework with Drools. Available: http://www.onjava.com/pub/au/2366 [13] Rince, W.: Drools I. Introduccin a los motores de reglas de negocios. Available: http://rincew.blogspot.com/2005/11/drools-i-introduccin-los- motores-de.html [14] Codehaus Foundation. Drools Java Rules Engine. Available: http://legacy.drools.codehaus.org/Agenda
Juan Carlos Garca Gonzlez. Ingeniero Informtico. Pertenece a un
grupo de investigacin y desarrollo de la Facultad de Ingeniera Informtica de la Cujae. Ha trabajado durante tres aos en el equipo de desarrollo del proyecto SIGENU. Ha obtenido varios premios y reconocimiento entre los cuales se puede destacar una mencin en la Feria Informtica 2009. Realiz una amplia investigacin sobre el tema de las reglas de negocio y los motores de reglas de negocios en aplicaciones empresariales a partir de lo cual elabor su trabajo de diploma. Email: jcgarcia@ceis.cujae.edu.cu