• No results found

4.2 Data Analysis

4.2.9 Communication Skills: Speaking Skill

Como  se  mencionaba  el  Capítulo  I,  se  han  identificado  tres  objetivos  principales:  uno  dirigido  a  reducir  el  gap  semántico  existente  entre  los  expertos  de  negocio  y  las  plataformas  de  gestión  de  reglas;  el  segundo,  centrado  en  facilitar  la  integración  de  los  procesos  de  desarrollo  de  reglas  de  negocio  en  el  proceso  de  desarrollo  software  y,  un  tercero,  conseguir  que  las  expresiones  de  las  reglas  de  negocio  puedan  llevarse  a  SGRNs  diferentes  mediante  procesos  semi‐automáticos.  Cabe  destacar que, en la actualidad, el desarrollo de aplicaciones con reglas de negocio comienza por la  elección de un SGRN de entre los disponibles (ILOG, JBoss RULES, FIBCO, etc.) lo que impide reutilizar  las reglas desarrolladas en caso de cambio de SGRN.  

Teniendo  en  cuenta  los  objetivos  indicados,  este  trabajo  de  investigación  se  orienta  en  dos  direcciones:  una  dedicada  a  introducir  lenguaje  natural  y  tecnología  semántica  en  el  proceso  de  definición de las reglas, de manera que los expertos de negocio puedan utilizar su propio vocabulario  a  la  hora  de  expresar  las  reglas  que  deben  regir  el  negocio;  la  otra  línea  de  trabajo  se  centra  en  explotar  los  estándares  existentes  en  el  ámbito  de  los  SGRN  para  facilitar  la  integración  de  esta  tecnología  en  el  proceso  de  desarrollo  software  y,  al  mismo  tiempo,  obtener  representaciones  de  reglas de negocio independientes del SGRN seleccionado para implementarlas. 

Evidentemente,  la  posibilidad  de  utilizar  lenguaje  natural  es  el  método  más  sencillo  para  que  los  expertos de  negocio, que no disponen de conocimientos técnicos, puedan  crear reglas de negocio.  Surge  entonces  un  problema  a  la  hora  de  interpretar  semánticamente  estas  frases  en  lenguaje  natural  y  su  transformación  en  las  aplicaciones  correspondientes.  Para  salvar  esta  distancia,  esta  tesis  plantea  explotar  tecnologías  de  la  Web  Semántica,  cuyo  fin  último  está  en  línea  con  este  objetivo (Gómez‐Pérez et al.,2004). La aplicación del concepto de ontología en el ámbito de las reglas  de  negocio  conduce  a  una  interpretación  común  y  centralizada  del  conocimiento  sobre  el  negocio  susceptible de ser interpretada por sistemas software. Si los conceptos de negocio a los que pueden  hacer  referencia  las  reglas  se  limitan  a  través  de  la  ontología,  cabe  la  posibilidad  de  ligar  dichos  conceptos  a  los  componentes  software  que  los  soportan.  Con  el  fin  de  asegurar  que  existen  estos  componentes software como soporte a los conceptos de negocio, en este trabajo de tesis se toman  como  punto  de  partida  los  modelos  UML  disponibles  en  la  organización,  que  representan  el  conocimiento  de  negocio  a  un  nivel  de  abstracción  menor  que  el  requerido  por  los  expertos  de  negocio. La secuencia de transformaciones planteadas se representa en la Figura III‐ 1. 

Por otro lado, las reglas de negocio en lenguaje natural deben transformarse también en expresiones  comprensibles por los SGRN. Con este fin se plantea en esta tesis la utilización de RIF, un lenguaje  estándar  para  representación  de  reglas  de  negocio,  descrito  en  II.4.2.4.  Este  estándar  permite  expresar reglas de negocio que hacen referencia a conceptos incluidos en ontologías, descritas, a su  vez,  a  través  del  lenguaje  OWL.  La  correspondencia  entre  expresiones  en  lenguaje  natural  y  las  estructuras  adecuadas  en  RIF  se  basan  en  el  estándar  SBVR  (estudiado  en  la  sección  II.4.2.3),  dedicado también a la descripción del modelo de conocimiento del negocio y las reglas asociadas a  través de lenguaje natural, eso sí, para el idioma inglés. Se emplea también el concepto de lenguaje  específico  de  dominio  (en  inglés  DSL,  Domain  Specific  Language)  para  la  asignación  de  palabras  o 

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

 

   

términos a las clases UML y, por extensión, a los conceptos de la ontología. En este caso el idioma  específico  de  dominio  viene  determinado  por  los  elementos  que  se  han  identificado  en  el  modelo  UML. 

 

Figura III- 1. Secuencia de transformaciones de lenguaje natural (LN) a lenguajes específicos

Una vez obtenida la expresión en RIF, se transforma a OMG PRR. El objetivo de esta transformación  es  proporcionar  expresiones  de  las  reglas  de  negocio  como  elementos  de  UML,  de  manera  que  pueden acompañar al modelo definido para el sistema. La idea es completar la información de diseño  Reglas  en LN  UML  OWL  RIF OMG‐ PRR Transformación de LN a  RIF‐OWL  Transformación de RIF a  OMG‐PRR  Transformación de UML  a OWL  Meno r nivel  de  abstracció n   Lenguaje  Específico  Transformación de OMG‐ PRR a Lenguaje de Reglas  Específico 

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

 

   

con una descripción de las reglas de negocio que un experto o un desarrollador hayan podido definir  para la aplicación en cuestión. 

Según  se  describió  en  el  capítulo  anterior,  existen  muchos  otros  estándares  que,  en  principio,  podrían  sustituir  a  RIF.  De  entre  ellos,  los  mejores  candidatos  frente  a  RIF  serían  SBVR  y  SWRL.  El  primero es directamente descartable debido a que aún no está resuelto el enlace con la tecnología  que podría dar soporte al estándar. Aunque existe una propuesta de sintaxis XML para representar  los  contenidos  de  SBVR,  no  está  claro  cómo  se  relacionan  esos  contenidos  con  los  sistemas  de  información de la organización en la que se están implantando los vocabularios. A fecha de finales de  2009,  existen  algunas  iniciativas  que  apuntan  a  la  definición  de  un  perfil  UML  para  SBVR,  y  ya  ha  habido algún trabajo orientado al tratamiento automático de datos en formato SBVR como (Cabot et  al.,  2009),  donde  se  plantea  emplear  información  de  los  modelos  UML  y  restricciones  OCL  para  construir, de manera automática, contenidos en SBVR. El segundo estándar que podría sustituir a RIF  sería  SWRL,  fácilmente  integrable  con  OWL  y  con  herramientas  de  apoyo  disponibles,  como  es  Protégé, que permite incorporar extensiones para la definición y procesamiento de reglas de negocio  en  formato  SWRL.  De  hecho,  fue  la  primera  opción  tomada  en  este  trabajo  de  investigación  para  representar reglas de negocio en un formato estándar y fácilmente enlazable con las ontologías que  definen  el  vocabulario.  El  principal  problema  observado  en  este  estándar  reside  en  su  capacidad  semántica. Resulta complejo representar muchas expresiones habituales en el entorno de las reglas  de  negocio,  como  el  operador  disyunción,  y,  por  otro  lado,  es  un  lenguaje  más  orientado  a  la  representación de expresiones empleando lógica de predicados de primer orden, propias de la Lógica  Descriptiva (Description Logic, en inglés). Esto hace que el estándar resulte difícilmente aplicable en  entornos  de  reglas  de  producción,  donde  RIF  se  adapta  mucho  mejor  y  presenta  una  mayor  capacidad semántica que, a la vez, facilita la interrelación con los sistemas de información que deben  implementar las reglas de negocio.  Con el fin de facilitar la integración de la tecnología de gestión de reglas en el proceso de desarrollo  software se adopta un enfoque de arquitectura basada en modelos, tal como MDA, definida por el  grupo de estandarización OMG (ver apartado II.5.3). Como es sabido, la idea principal detrás de estas  metodologías reside en la descripción de las aplicaciones empleando distintos modelos, adecuados al  nivel de abstracción requerido. Estos niveles de abstracción permiten distinguir descripciones de los  sistemas  independientes  de  los  componentes  software  o  hardware  que  los  implementan  de  las  descripciones  de  esos  mismos  sistemas  una  vez  se  ha  fijado  el  entorno  tecnológico  en  el  que  se  desenvolverá.  

En el proceso de desarrollo de reglas de negocio considerado en este trabajo de tesis se explota una  arquitectura  basada  en  modelos  que  permite  transformar  de  manera  automática  las  distintas  expresiones  de  las  reglas  de  negocio  entre  los  distintos  niveles  de  abstracción  considerados.  Las  transformaciones necesarias son las destacadas en la Figura III‐ 1 y descritas en el siguiente apartado.  Gracias a esta aproximación, un usuario capaz de definir reglas en lenguaje natural puede obtener,  automáticamente, implementaciones de dichas reglas sin necesidad de tener conocimientos técnicos  o sobre estructura de los sistemas de información empleados en la organización.