BRMS
BRMS es una herramienta de gestión de decisiones, que resuelve reglas de negocio de forma intuitiva y dinámica. Esta consola permite crear soluciones modulares para diferentes requisitos de negocio que involucran la evaluación de reglas, como una solución de gamificación, una solución de control de fraude o un programa de fidelización.
El principal beneficio de BRMS es que permite a los desarrolladores resolver diferentes necesidades de negocio dentro de un componente de la plataforma y permite al cliente implementar reglas de negocio de una manera simple y eficiente.
Las configuraciones definidas en la consola BRMS son invocadas por el cliente a través de una API que activa el conjunto de datos e impacta en la aplicación y sus usuarios. Luego, esta API se invoca desde las transacciones configuradas en Studio.
Antes de navegar por la consola y describir cada una de sus secciones, hay conceptos específicos de BRMS que debes comprender antes de comenzar a trabajar. Obtén más información sobre ellos en la lista a continuación.
Contrato: intercambio de información necesario para tomar decisiones. El contrato consta de un input (que puede ser un input o dimensiones) y un output o resultado (descrito como Outputs en la consola).
Decisión: unidad lógica que recibe un input (inputs y dimensiones) y devuelve outputs como resultado de evaluar las reglas configuradas en ella. Utilizan internamente reglas con dimensiones, inputs, constantes y outputs para producir los resultados esperados. El constructor que crea una decisión debe comprender el requerimiento del negocio según el proyecto y definir su configuración. Sólo los constructores senior (con gran experiencia) y permisos específicos pueden configurar y modificar decisiones ya que rompen los términos del contrato.
Por ejemplo: Ten en cuenta que GoldBank ya cuenta con un programa de fidelización que otorga a sus clientes puntos por cada compra realizada con su tarjeta de crédito a través de la aplicación. Ahora, piden agregar una nueva regla al programa de fidelización según la cual: los usuarios con cualquier perfil que realicen compras en tienda por un monto de USD 10 o superior con su tarjeta de crédito física obtendrán 15 puntos. Considerando este escenario, la decisión tendrá: un input compuesto por dimensiones sobre los perfiles, tipo de tarjeta (crédito o débito) y tipo de operación (en tienda o digital) y un input que será el monto de la compra; y un output que serán los 15 puntos obtenidos por compra. Estos inputs y outputs serán utilizados para configurar la decisión que establecerá que: si algún perfil de cliente realiza una compra en tienda, con tarjeta de crédito y por un monto de USD 10 o superior, obtendrá 15 puntos.
Sugerencia
Romper el contrato significa que los cambios tienen un impacto en el resultado y, en consecuencia, afectan al usuario de la aplicación.
Valores de entrada: parámetros que forman parte del contrato y consisten en inputs o dimensiones basadas en las características específicas de una o más transacciones. Agregar un input es obligatorio. Puede tener uno de tres tipos de datos: booleanos (verdadero o falso), cadenas (datos alfanuméricos) o números.
Entradas: tipo de input con valor continuo o cambiante. Las entradas son datos que no derivan de un catálogo específico y cuyos valores pueden cambiar con el tiempo. Por ejemplo, el importe o la fecha de la operación.
Dimensión: Tipo de input con valor establecido o concreto. Las dimensiones son categorías de valores que tienen asociado un catálogo según los requerimientos del proyecto. Las dimensiones son proporcionadas por el cliente en el catálogo (un archivo .txt, una base de datos, un archivo Excel, cualquier fuente de datos) y deben configurarse previamente en el backend de BRMS para luego aparecer en el desplegable Dimensions de la pestaña Decision contract. Por ejemplo: la dimensión User Type (nombre de la dimensión) contiene los valores Silver, Gold y Platinum (valores de la dimensión) o la dimensión Sex contiene los valores Female (femenino) o male (masculino).
Nota
Las dimensiones las configura el miembro de ITCD en su proyecto. Este perfil define la fuente desde la que se activarán las dimensiones. Para obtener más información, comunícate con el líder de su equipo.
Outputs: Parámetros que forman parte del contrato y dan un resultado esperado después de que se realiza una transacción. Los outputs resultan de la evaluación de las reglas. Por ejemplo, puntos ganados por el usuario de la app, cashback obtenido, entre otros.
Constante: Valores de referencia utilizados dentro de la lógica de las reglas de decisión. Hay tres tipos de constantes: Valor, matriz o array, y sus valores pueden ser un número, una cadena o un valor booleano. A todos los constructores (sean senior o junior) se les permite configurar y modificar constantes ya que no rompen el contrato pero sí la lógica.
Sugerencia
Romper la lógica significa que los cambios tendrán un impacto en la configuración y darán como resultado un error.
Regla de decisión: Enunciado o conjunto de criterios con condiciones bajo dimensiones, entradas y salidas específicas. Las reglas son evaluadas por BRMS y, de acuerdo con la lógica definida, dan como resultado una o varias salidas.
Estrategias de reducción de la evaluación de reglas: Define cómo BRMS evalúa las reglas en cada decisión y proporciona resultados. Las estrategias son Break, Collect y Collect-merge. Lee Crear o editar una decisiónpara saber más.
Para aprender más sobre estos conceptos, lee Decisiones y Constantes.
Nota
Las entradas, dimensiones, salidas y constantes pueden tener uno de tres tipos de datos: booleano, cadena o número.
Utiliza BRMS
En esta sección se describe cómo utilizar BRMS basándose en un ejemplo en el que GoldBank, el cliente, te pide que crees todos los elementos desde cero. También podrás modificar en el futuro cada uno de los elementos configurados en BRM, según las necesidades del proyecto.
En primer lugar, debes tener BRMS instalado en tu ambiente de Workspace y los permisos para acceder a él. Si no tiene los permisos necesarios, comunícate con tu administrador. Para ingresar a BRMS, utiliza el ambiente proporcionado por el líder del proyecto. Luego ingresa tus credenciales (usuario y contraseña). Dependiendo de tu rol, es posible que tengas diferentes permisos para operar en la consola. Para obtener más información sobre tus permisos y las tareas que puedes ejecutar, comunícate con el líder de tu proyecto. A continuación, sigue estos pasos:
Comprende los requisitos del proyecto, que incluye: el propósito de la solución requerida y las decisiones que definen las reglas que evaluará el BRMS - las decisiones incluirán el catálogo de dimensiones proporcionado por el cliente, las condiciones aplicables, las constantes y los resultados esperados.
Asegúrese de que el miembro de TI de tu equipo haya cargado las dimensiones en el backend de BRMS.
Crea las constantes. Se trata de valores de referencia establecidos proporcionados por el cliente. Para obtener más información, lee Crear o editar una constante.
Crea las decisiones. Para obtener más información, lee Crear o editar una decisión.
Importante
BRMS se abre en la página Decisions de forma predeterminada. Asegúrate de comenzar a trabajar en la página Constants primero.
Navegar por BRMS

La consola se abre en la pestaña Decisions. Desde esta página, podrás ver los detalles de las decisiones creadas por ti y tu equipo y, si es necesario, editarlas. Al hacer clic en una decisión, esta se abre y puedes ver la configuración del contrato de decisión y las reglas.
Además, puedes crear nuevas decisiones o importar otras creadas en un ambiente diferente; por ejemplo, una decisión creada en un ambiente de pruebas que necesitas utilizar en tu ambiente de producción. También puedes exportar decisiones a tu dispositivo (en formato JSON) para luego importarlas en otros ambientes.
También puedes hacer clic en Constants para abrir la página Constants, donde tienes las mismas acciones disponibles. Dado que el propósito de una constante es diferente del propósito de una decisión, podrás configurar el contrato y los valores de la constante (pero no se incluyen reglas).