• No se han encontrado resultados

2.3.1.1 Descripción de la Metodología PROTEUS® 

Capítulo II Estado de la Cuestión 

II. 2.3.1.1 Descripción de la Metodología PROTEUS® 

Como primer punto, cabe destacar que no se consideran reglas de negocio únicamente desde  el punto de vista de los SI, sino desde el punto de vista del negocio, más genérico. Esto significa  que  no  todas  las  reglas  de  negocio  identificadas  deben  corresponderse  con  una  implementación en los SI de la organización. 

En  la  metodología  PROTEUS®  se  consideran  las  siguientes  acepciones  para  los  conceptos  básicos a manejar: 

ƒ Negocio:  1.  una  organización  económica  o  actividad  (como  una  fábrica,  una  mina  o  una  granja);  especialmente:  una  organización  de  negocio:  FIRMA,  COMPAÑÍA.  2.  Cualquier actividad o tipo de actividad sistemática y con sentido. 

ƒ Capacidad  de  Negocio:  Subconjunto  significativo  de  un  negocio,  posiblemente  comprendiendo  uno  o  más  procesos  de  negocio,  áreas  funcionales  y/o  puntos  de  decisión. 

ƒ Evento  de  Negocio:  Aquellos  sucesos  que  requieren  una  respuesta  por  parte  del  negocio,  habitualmente  de  manera  no  trivial  y  a  menudo  siguiendo  algún  patrón  de  actividad  desarrollado  previamente,  por  ejemplo,  como  un  modelo  de  procesos  de  negocio, un modelo de flujos de trabajo, procedimientos, etc. 

ƒ Regla de negocio: Regla que está bajo la jurisdicción del negocio. 

ƒ Categoría:  Clase  de  elementos  cuyo  significado  es  más  restrictivo,  aunque  también  conforme a alguna otra clase de elementos. 

ƒ Concepto: 1. Algo concebido en la mente: PENSAMIENTO, IDEA, NOCIÓN. 2. Una idea  que comprende los atributos esenciales de una clase o especie lógica. 3. Una idea que  incluye todo aquello que característicamente se asocia o sugiere un término. 

ƒ Catálogo  de  Conceptos:  Listado  de  los  contenidos  de  un  vocabulario  de  negocio  estructurado. 

Introduciendo Semántica en un Proceso de Desarrollo Software a través de Reglas de Negocio

   

ƒ Modelo  de  Hechos:  Una  visualización  o  guía  para  un  vocabulario  de  negocio  estructurado.  ƒ Tipo de Hecho: Característica específica que puede conocerse sobre una o más cosas y  que es importante para la operativa del negocio (p. e.: que un cliente puede emitir una  orden).  ƒ Regla de gobierno (governing rule): Cualquier ley, acta, estatuto, regulación, contrato,  política de negocio, determinación legal, etc. a partir del cual pueden interpretarse las  reglas de negocio. 

ƒ Regla:  1.  Guía  para  una  conducta  o  acción.  2.  Elemento  de  un  conjunto  de  regulaciones,  habitualmente  oficiales,  a  través  del  cual  se  rige  una  actividad.  3.  Estándar en el cual puede basarse un juicio o decisión. 

ƒ Término:  1.  Una  palabra  o  expresión  que  tiene  un  significado  perfectamente  delimitado  en  algunos  usos  o  que  es  particular  a  una  ciencia,  arte,  profesión  o  tema  especial. 

Estas  definiciones  podrían  mejorarse  teniendo  en  cuenta  los  trabajos  de  organismos  de  estandarización como OMG o ANSI (American National Standards Institute) 

Según  esta  metodología,  una  regla  de  negocio  debería  tener  relación  con  el  componente  o  módulo que interviene en su implementación. Entre estos componentes podrían encontrarse:  bases  de  datos,  procedimientos  almacenados  dentro  de  una  base  de  datos,  módulos,  programas,  clases,  etc.  Si  una  regla  no  va  a  ser  soportada  directamente  por  un  gestor  de  reglas, deberían elaborarse entregables de diseño para la misma. Estos entregables de diseño  pueden corresponderse con modelos de datos, modelos de flujos de trabajo, casos de uso, etc.  Aparte  de  lo  ya  mencionado,  cuando  se  define  una  regla  deberían  tenerse  en  cuenta  otros  aspectos como:  • El ámbito en que la regla tiene validez. La metodología PROTEUS® distingue tres tipos  de ámbito: unidad organizativa, entidad política o área geográfica, marcando, además,  que una regla debería estar asociada al ámbito de mayor nivel posible.  • Los actores que intervienen en la regla. Personas u organizaciones que participan en el  ciclo de vida completo de la regla de negocio y que pueden jugar distintos roles: autor,  desarrollador, consejero de negocio, etc.  • El proceso de mantenimiento de la regla. A lo largo de su ciclo de vida, una regla puede  tener distintas versiones. El ciclo de vida de una regla de negocio puede dividirse en las  siguientes  fases:  propuesta,  aprobada,  asignada  para  cambiar  de  esfuerzo,  implementada,  retirada  y  bajo  revisión.    Una  versión  es  una  revisión  del  texto  de  la  regla, habitualmente para especificar umbrales más finos (a menudo numéricos).  • Las causas de la definición de la regla. La correcta creación y mantenimiento de una 

regla  pasa  por  conocer  qué  influencias  condujeron  a  su  creación.  Estas  influencias  pueden  ser  tanto  externas  como  internas  al  negocio.  Entre  las  externas  podemos 

Introduciendo Semántica en un Proceso de Desarrollo Software a través de Reglas de Negocio

   

encontrar:  las  leyes  o  regulaciones  (impuestos,  fraude,  personal,  etc.),  el  mercado  (competencia,  clientes,  proveedores,  inversores,  etc.)  o  el  entorno  (natural,  social/cultural,  económico,  tecnológico,  experiencia,  etc.).  En  cambio,  entre  las  influencias  internas  se  encuentran:  infraestructura  existente,  cuestiones  varias  (p.  e.:  "La empresa cliente no siempre sabe quiénes son sus clientes"), asunciones (p. e.: "Los  clientes  no  siempre  saben  cuáles  son  sus  necesidades  o  no  comprenden  nuestros  productos")  o  valores  (p.  e.:  "En  esta  empresa  preferimos  contratar  gente  con  experiencia").  También  sería  necesario  establecer  a  qué  propósitos  sirve  la  regla,  de  manera  que  se  indica  qué  aporta  al  negocio.  Entre  los  propósitos  a  los  que  puede  servir una regla se distinguen: objetivo, o el efecto que el negocio quiere producir al  ejecutar  su  misión  (p.  e.:  "Mantener  a  los  clientes  satisfechos");  táctico,  o  cualquier  secuencia de acciones que proporciona los medios para dar soporte a la misión, para  lograr  objetivos  o  para  contrarrestar  ciertos  riesgos  (p.  e.:  "Las  pizzas  deberían  entregarse  en  un  tiempo  adecuado");  y,  por  último,  el  propósito  de  riesgo,  que  considera  cualquier  elemento  que  pudiera  llegar  a  impedir  alcanzar  los  efectos  perseguidos por el negocio (p. e.: "congestión de tráfico") 

La metodología PROTEUS® distingue dos grandes etapas en el proceso de desarrollo de reglas  de  negocio.  En  la  primera  de  esas  grandes  etapas  se  define  un  modelo  de  negocio  que  contempla  tanto  la  especificación  del  dominio  en  que  se  desenvuelve  el  negocio  como  la  detección  de  las  reglas  de  negocio  que  deben  reflejarse  para  obtener  el  producto  o  servicio  deseado. 

La  Figura  II‐  5  (tomada  de  (Ross,2006a))  muestra  el  flujo  de  actividades  que  contempla  la  metodología para la especificación del modelo de negocio. No es interesante realizar aquí una  descripción pormenorizada de las actividades incluidas en esta fase de la metodología; basta  con describir algunos aspectos que resultarán comunes a cualquier proceso de identificación y  definición de reglas de negocio. En el paso 4 de la Figura II‐ 5 se habla de términos y hechos, es  decir,  de  definir  el  vocabulario  sobre  el  que  se  van  a  definir  las  reglas  de  negocio.  Puede  parecer  que  las  fases  6  y  8  son  redundantes;  no  es  así  si  se  tiene  en  cuenta  que  la  fase  8  pretende recoger reglas de negocio específicas para un producto o servicio, mientras que las  fases  4  a  6  se  dedican  a  establecer  el  modelo  de  negocio  genérico  sobre  el  que  se  van  a  desarrollar todos los productos y/o servicios. 

De la misma forma, la metodología define una serie de etapas para construir el que denomina  modelo de sistema, es decir, la implementación del modelo de negocio definido en la primera  etapa.  Esta  segunda  etapa  resulta  menos  interesante,  puesto  que  la  implementación  del  modelo  de  negocio  va  a  depender  en  gran  medida  de  las  alternativas  tecnológicas  que  se  seleccionen para construir el sistema final. A modo informativo, se incluye en la Figura II‐ 6 la  secuencia de actividades que se definen para esta etapa de definición del modelo de sistema. 

II.2.3.2.

El  Manifiesto  de  Reglas  de  Negocio  (Business  Rules 

Manifesto) 

La  definición  del  concepto  de  regla  de  negocio  tiene  su  origen  en  el  Grupo  de  Reglas  de  Negocio, BRG (Business Rules Group) (BRG,2009) un conjunto de investigadores interesado en  resaltar el papel de las reglas de  negocio en la  construcción de  un SI.  Este  grupo de trabajo, 

Introduciendo Semántica en un Proceso de Desarrollo Software a través de Reglas de Negocio

   

creado en 1989, persigue dos fines principales: destacar las reglas de negocio como elementos  básicos en el proceso de captura de requisitos y modelado de un SI y, por otra parte, declarar  el  nacimiento  de  un  nuevo  tipo  de  arquitectura  de  negocio  y  de  plataforma  para  la  construcción de sistemas de información. En 2002, este grupo de trabajo publica un conjunto  de  principios  que  deberían  tenerse  en  cuenta  a  la  hora  de  trabajar  con  reglas  de  negocio,  destacando  su  independencia  respecto  al  resto  de  elementos  que  constituyen  el  modelo  de  negocio y los modelos tecnológicos en que se apoya dicho modelo de negocio. 

En  el  Apéndice  I  se  incluye  la  versión en  español  de  este  manifiesto,  tomada  de  (BRG,2002).  Este manifiesto ayuda a comprender y a tratar adecuadamente las reglas de negocio a la hora  de construir sistemas basados en este paradigma. Cabe mencionar que este mismo grupo de  trabajo ha respondido a la llamada del OMG para la definición de un lenguaje estándar para la  representación  de  reglas  de  negocio,  denominado  Semantic  Business  Vocabulary  and  Rules  (SBVR),  recientemente  aceptado  por  el  OMG  y  que  se  describirá  detalladamente  en  el  apartado II.4.2.3. 

II.2.4. Aplicaciones de los Sistemas de Gestión de Reglas de Negocio 

Idealmente,  cualquier  aplicación  que  pueda  ser  descrita  a  través  de  un  conjunto  de  reglas  puede  construirse  empleando  un  SGRN.  En  la  práctica,  disponer  de  esas  reglas  conlleva  conocer  los  conceptos  a  los  que  hacen  referencia  y,  en  la  mayoría  de  ocasiones,  las  implementaciones de estos conceptos residen en distintos SI cuya integración es compleja o se  realiza  a  través  de  intermediarios.  En  casos  sencillos,  existe  una  correspondencia  biunívoca  entre estos conceptos y los objetos de negocio que los implementan, simplificando el proceso  de  adopción  de  un  SGRN  para  dar  soporte  a  la  aplicación.  Tradicionalmente,  las  reglas  de  negocio  han  quedado  ocultas  entre  las  líneas  de  código  de  los  distintos  programas  que  componen los SI de las organizaciones. Esto ha sido así porque en los paradigmas de desarrollo  de  software  existentes,  el  elemento  importante  es  el  proceso  o,  en  ocasiones,  el  dato,  quedando  relativamente  al  margen  las  restricciones,  es  decir,  las  reglas,  que  los  datos  gestionados en las aplicaciones deben cumplir. Este hecho dificulta la localización y extracción  de reglas de negocio cuando se desea adoptar un SGRN. Como ya se ha visto, la bondad de la  expresión  en  forma  de  reglas  de  las  características  que  definen  un  determinado  dominio  de  negocio, reside en la centralización del conocimiento que se tiene del negocio, facilitando su  adaptación, gestión y control. Cuando existe un sistema de gestión de bases de datos dando  soporte  a  la  aplicación,  algunas  de  las  reglas  de  negocio  necesarias  quedan  expresadas  en  forma  de  restricciones,  disparadores  o  procesos  de  la  propia  base  de  datos.  El  principal  problema  reside  en  que  la  limitada  capacidad  de  representación  semántica  de  las  bases  de  datos obliga a que muchas de esas reglas acaben dejándose al cuidado de las aplicaciones que  se apoyan en dichas bases de datos. Cabe destacar también la incapacidad de los mecanismos  de  representación  de  restricciones  semánticas  de  las  bases  de datos  para  realizar  inferencia,  capacidad que sí está presente en los SGRN.  La migración a un paradigma basado en reglas de  negocio facilita la centralización de las reglas de negocio y, por tanto, del conocimiento que se  tiene  del  negocio.  Así,  cuando  se  desea  modificar  el  comportamiento  del  sistema  basta  con  acudir  al  repositorio  de  reglas,  modificando  aquellas  que  sea  necesario.  Si  estas  reglas  están  expresadas en lenguaje natural, como exige el Manifiesto de Reglas de Negocio (ver apartado  II.2.3.2),  resulta  más  fácil  a  los  expertos  de  negocio,  que  normalmente  carecen  de 

Introduciendo Semántica en un Proceso de Desarrollo Software a través de Reglas de Negocio

   

conocimientos  técnicos,  su  adaptación.  Si,  además,  se  dispone  de  un  SGRN  que  controla  el  proceso de implementación de las reglas de negocio, la migración de las modificaciones en las  reglas a sus implementaciones resultará más eficiente.