stringtranslate.com

tabla de decisiones

Las tablas de decisiones son una representación visual concisa para especificar qué acciones realizar según las condiciones dadas. Tabla de decisiones es el término utilizado para una tabla de control o tabla de transición de estado en el campo del modelado de procesos de negocio ; Por lo general, se formatean como transposición de la forma en que se formatean en ingeniería de software .

Descripción general

Cada decisión corresponde a una variable, relación o predicado cuyos posibles valores se enumeran entre las condiciones alternativas. Cada acción es un procedimiento u operación a realizar, y las entradas especifican si (o en qué orden) la acción se debe realizar para el conjunto de condiciones alternativas a las que corresponde la entrada.

Para hacerlas más concisas, muchas tablas de decisiones incluyen en sus alternativas de condición un símbolo de no importa . Puede ser un guión [1] [2] [3] o un espacio en blanco, [4] aunque se desaconseja el uso de un espacio en blanco ya que puede simplemente indicar que la tabla de decisiones no se ha terminado. [ cita necesaria ] Uno de los usos de las tablas de decisión es revelar condiciones bajo las cuales ciertos factores de entrada son irrelevantes para las acciones a tomar, lo que permite omitir estas pruebas de entrada y, por lo tanto, agilizar los procedimientos de toma de decisiones. [5]

Aparte de la estructura básica de cuatro cuadrantes, las tablas de decisión varían ampliamente en la forma en que se representan las alternativas de condición y las entradas de acción. [6] [7] Algunas tablas de decisión usan valores simples de verdadero/falso para representar las alternativas a una condición (similar a if-then-else), otras tablas pueden usar alternativas numeradas (similar a switch-case), y algunas tablas incluso Utilice lógica difusa o representaciones probabilísticas para alternativas de condiciones. [8] De manera similar, las entradas de acciones pueden simplemente representar si se debe realizar una acción (verificar las acciones a realizar), o en tablas de decisión más avanzadas, la secuencia de acciones a realizar (numerar las acciones a realizar).

Una tabla de decisiones se considera equilibrada [4] o completa [3] si incluye todas las combinaciones posibles de variables de entrada. En otras palabras, las tablas de decisión equilibradas prescriben una acción en cada situación en la que se proporcionan las variables de entrada. [4]

Ejemplo

La tabla de decisiones de entrada limitada es la más sencilla de describir. Las alternativas de condición son valores booleanos simples y las entradas de acción son marcas de verificación que representan cuáles de las acciones en una columna determinada se deben realizar.

La siguiente tabla de decisiones equilibrada es un ejemplo en el que una empresa de soporte técnico escribe una tabla de decisiones para permitir que los empleados de soporte técnico diagnostiquen de manera eficiente los problemas de la impresora en función de los síntomas que sus clientes les describen por teléfono.

Este es sólo un ejemplo sencillo y no necesariamente corresponde a la realidad de la solución de problemas de la impresora. Aun así, demuestra cómo las tablas de decisión pueden adaptarse a varias condiciones con muchas posibilidades.

Beneficios de la ingeniería de software

Las tablas de decisiones, especialmente cuando se combinan con el uso de un lenguaje específico de dominio , permiten a los desarrolladores y expertos en políticas trabajar a partir de la misma información: las tablas de decisiones mismas.

Las herramientas para representar declaraciones if anidadas de lenguajes de programación tradicionales en tablas de decisiones también se pueden utilizar como herramienta de depuración. [9] [10]

Las tablas de decisiones han demostrado ser más fáciles de entender y revisar que el código, y se han utilizado extensamente y con éxito para producir especificaciones para sistemas complejos. [11]

Historia

En las décadas de 1960 y 1970, una variedad de lenguajes "basados ​​en tablas de decisiones", como Filetab, eran populares para la programación empresarial.

Tablas de decisiones integradas en el programa

Las tablas de decisiones pueden estar, y a menudo están, integradas en programas de computadora y utilizadas para "impulsar" la lógica del programa. Un ejemplo sencillo podría ser una tabla de búsqueda que contenga un rango de posibles valores de entrada y un puntero de función a la sección de código para procesar esa entrada.

Mesas de control

Se pueden codificar múltiples condiciones de manera similar para encapsular toda la lógica del programa en forma de una tabla de decisiones o de control "ejecutable" . En la práctica, puede haber varias tablas de este tipo, que operan en diferentes niveles y a menudo están vinculadas entre sí (ya sea mediante punteros o un valor de índice).

Implementaciones

Ver también

Referencias

  1. ^ LI Jing (1 de abril de 2015). "Tutorial SEEM 3430: Tablas de decisión" (PDF) . pag. 23 . Consultado el 11 de noviembre de 2017 .
  2. ^ "Creación de una tabla de decisiones en reglas comerciales". Centro de ayuda de Oracle . 6 de agosto de 2017 . Consultado el 11 de noviembre de 2017 .
  3. ^ ab Ross, Ronald G. (2005). "Tablas de decisiones, parte 2 ~ El camino hacia la integridad". Diario de reglas comerciales . 6 (8) . Consultado el 11 de noviembre de 2017 .
  4. ^ abc Snow, Paul (19 de julio de 2012). "Tablas de decisión". DTRules: un motor de reglas de tablas de decisión basado en Java . Consultado el 11 de noviembre de 2017 .
  5. ^ LI Jing 2015, pag. 24-25.
  6. ^ Rogers, William T. "Ejemplos de tablas de decisiones: seguro médico". Análisis y diseño de sistemas de la Universidad Saint Xavier . Archivado desde el original el 29 de marzo de 2007.
  7. ^ "Tablas de decisiones". Archivado desde el original el 8 de septiembre de 2012 . Consultado el 7 de julio de 2010 .
  8. ^ Mojados, Geert; Witlox, Frank; Timmermans, Harry; Vanthienen, enero (1996). "Modelado de elección de ubicación mediante tablas de decisión difusa". Nuevas fronteras en informática y lógica difusa: conferencia bienal de 1996 de la Sociedad Norteamericana de Procesamiento de Información Difusa – NAFIPS. Conferencia bienal de la Sociedad Norteamericana de Procesamiento de Información Difusa. Berkeley, California: IEEE. págs. 80–84. doi :10.1109/NAFIPS.1996.534708. ISBN 0-7803-3225-3. S2CID  62056954.
  9. ^ "Un ejemplo real del CCIDE"
  10. ^ "Experiencia con el procesador de mesa de decisiones Cope". Archivado desde el original el 4 de mayo de 2017 . Consultado el 7 de julio de 2010 .
  11. ^ Udo W. Pooch, "Traducción de tablas de decisiones", ACM Computing Surveys, volumen 6, número 2 (junio de 1974) Páginas: 125–151 ISSN  0360-0300
  12. ^ "FORTAB: un lenguaje de tabla de decisiones para aplicaciones de informática científica", 1962, Rand
  13. ^ Alejandro Williams (2015). "Analizador de tablas de decisiones Ruby"

Otras lecturas

enlaces externos