Tablas de decisión

Cómo las tablas de decisión aclaran la lógica de varias condiciones y conservan las combinaciones importantes de reglas de negocio.

Actualizado:

Contenido

Las tablas de decisión ayudan cuando el comportamiento depende de varias condiciones a la vez. QA organiza las combinaciones de manera sistemática e identifica qué reglas están cubiertas y cuáles siguen sin probarse.

Cuándo resulta especialmente útil esta técnica

  • →Varias condiciones de entrada determinan conjuntamente el resultado.
  • →La lógica descrita en texto se vuelve difícil de seguir con detalle.
  • →Las combinaciones contradictorias o poco frecuentes importan tanto como el recorrido sin errores.
  • →Distintas personas del equipo pueden interpretar de manera diferente la misma regla.

Construir una tabla de decisión

  • →Enumera las condiciones que afectan al comportamiento.
  • →Identifica sus estados posibles: sí/no, válido/no válido, rol A/rol B, etcétera.
  • →Registra la acción esperada para cada combinación significativa.
  • →Elimina las combinaciones imposibles o irrelevantes para que la tabla refleje el comportamiento real.

Ejemplo

Considera un proceso de compra regido por tres factores: disponibilidad de existencias, usuario autenticado y pago confirmado. Una tabla de decisión aclara cuándo puede crearse un pedido, cuándo debe iniciarse sesión y cuándo debe bloquearse la operación, de forma más clara que una descripción en prosa enrevesada.

Errores frecuentes

  • →Incluir todos los estados imaginables sin considerar su relevancia.
  • →No distinguir las combinaciones imposibles de las reales.
  • →Describir las acciones del sistema de forma vaga, sin expectativas concretas.
  • →Crear una tabla atractiva sin convertir sus reglas en comprobaciones ejecutables.

Las tablas de decisión convierten reglas de negocio imprecisas en un mapa de decisiones transparente. Son especialmente valiosas en tecnología financiera, comercio electrónico, control de acceso, descuentos, planes de precios y sistemas de flujos de trabajo.

Tabla de decisión desarrollada: descuento para miembros

Regla ficticia: aplicar un descuento del 10% únicamente cuando el cliente sea miembro Y el subtotal del pedido sea de al menos 100 unidades monetarias enteras. En caso contrario, no aplicar descuento. El subtotal ya está validado, los impuestos y el envío quedan excluidos y los ejemplos utilizan importes enteros para evitar una política de redondeo no definida.

plain text
Regla	¿Miembro?	¿Subtotal >= 100?	Subtotal de ejemplo	Descuento	Importe tras el descuento
R1	No	No	80	0%	80
R2	No	Sí	120	0%	120
R3	Sí	No	80	0%	80
R4	Sí	Sí	120	10%	108

Dos condiciones booleanas independientes producen cuatro combinaciones; las cuatro son posibles según esta especificación. La tabla explicita la regla Y: ser miembro no basta, y tampoco basta un subtotal elevado. Si una condición es imposible en el sistema real, documenta el motivo antes de eliminar su regla.

Convertir una regla en un caso de prueba

plain text
Caso DT-R4
Precondiciones: miembro autenticado; subtotal 120; sin otras promociones.
Acción: solicitar el total del pedido.
Esperado: descuento del 10%; importe del descuento 12; importe tras el descuento 108.
Caso de control DT-R2: mismo subtotal, no miembro; descuento 0; importe 120.

Cubrir todas las reglas de decisión no significa cubrir los límites numéricos. Añade subtotales de 99, 100 y 101 para un miembro: los descuentos esperados son del 0%, 10% y 10%. Si los importes finales pueden contener fracciones, primero define la precisión monetaria y el redondeo. Separa esas comprobaciones de la decisión de aplicar o no el descuento.

Ejercicio: cambiar Y por O

Supongamos que la regla cambia a «es miembro O el subtotal es de al menos 100». ¿Qué filas cambian? R2 y R3 pasan a recibir un 10%; R1 sigue sin descuento y R4 mantiene el 10%. Los importes esperados de los ejemplos pasan a ser 80, 108, 72 y 108. Recalcula la tabla antes de actualizar las pruebas para que la suposición anterior no permanezca inadvertida.

Seguir aprendiendo

Análisis de valores límite

Casos de prueba

Referencia sobre las técnicas: programa ISTQB CTFL, secciones 4.2 y 5.5. Los ejemplos anteriores son escenarios didácticos originales.