Una priorización eficaz es el eje central de una gestión de portafolios exitosa. Este artículo explica cómo construir dos marcos de priorización ampliamente utilizados — RICE (Reach, Impact, Confidence, Effort) y WSJF (Weighted Shortest Job First) — mediante Expresiones dentro de Fluid. Describe los elementos básicos comunes a cualquier modelo de puntuación, los tipos de propiedad recomendados, patrones de fórmula seguros (incluyendo cómo manejar valores en blanco y evitar errores de división por cero), y ejemplos prácticos de cómo calcular tanto las puntuaciones brutas como las bandas categóricas para RICE y WSJF. Junto con la guía de implementación, también aborda consideraciones de gobernanza que ayudan a garantizar la consistencia y comparaciones significativas entre equipos.
Configuración de modelos de puntuación
Antes de revisar marcos específicos como RICE o WSJF, es útil comprender los componentes básicos comunes y los patrones de expresión que se aplican a cualquier modelo de priorización creado en Fluid. Las siguientes secciones cubren los conceptos básicos que reutilizará sin importar el marco que elija.
1. ¿Cuáles son los componentes básicos de cualquier marco de priorización?
Un marco de priorización en Fluid normalmente incluye:
-
Propiedades de entrada
Los factores de puntuación que su equipo introduce (por ejemplo Reach, Impact, Effort, Confidence). -
Una puntuación calculada
Un resultado numérico utilizado para ordenar y clasificar los elementos. -
Una banda o nivel calculado
Una etiqueta derivada como Low / Medium / High, utilizada para una revisión rápida, la generación de informes y las reglas de gobernanza.
Estos elementos funcionan en conjunto para ofrecer tanto un mecanismo de clasificación preciso como una vista fácil de interpretar para las partes interesadas.
2. ¿Qué tipos de propiedad debo usar?
Utilice estos patrones de forma consistente al definir propiedades para su modelo de puntuación:
-
Número
Ideal para la entrada numérica libre (por ejemplo Reach, Effort, Job Size, Duration). -
Opción con Valor
Ideal para escalas de puntuación controladas en las que cada opción tiene un peso numérico
(por ejemplo Impact, Confidence, Business Value, Time Criticality). -
Opción
Ideal para etiquetas o bandas (por ejemplo “Low”, “Medium”, “High”).
Recomendación: Convierta la puntuación principal en un Número para poder ordenarla, filtrarla y generar informes sobre ella de forma confiable.
3. ¿Cómo manejo los valores en blanco de forma segura?
Los valores en blanco son comunes, especialmente durante la etapa inicial de recepción o cuando las evaluaciones se completan de forma incremental. Para evitar errores o resultados inesperados, use COALESCE() para asignar un número seguro por defecto a los valores en blanco.
Patrones que puede reutilizar:
COALESCE([_AnyNumberField], 0)
COALESCE([_AnyValuedOption-Value], 0)
Esto garantiza que sus expresiones sigan evaluándose correctamente incluso cuando algunas entradas aún no se hayan proporcionado.
4. ¿Cómo evito la división por cero en los cálculos de puntuación?
Si su modelo de puntuación divide un valor entre otro (por ejemplo, valor ÷ esfuerzo), siempre debe proteger el denominador con una verificación IF().
4. ¿Cómo evito la división por cero en los cálculos de puntuación?
Si su modelo de puntuación divide un valor entre otro (por ejemplo, valor ÷ esfuerzo), siempre debe proteger el denominador con una verificación IF().
Patrón reutilizable:
IF(
COALESCE([_Denominator], 0) = 0,
0,
[_Numerator] / [_Denominator]
)
Esto evita errores de cálculo y garantiza que las puntuaciones sigan siendo predecibles y comparables entre los elementos.
Marco RICE
Esta sección muestra cómo implementar el marco de priorización RICE (Reach, Impact, Confidence, Effort) mediante propiedades personalizadas y Expresiones. Se centra en la configuración práctica: las entradas que debe capturar, cómo calcular la puntuación RICE de forma segura y cómo derivar un RICE Level para una comparación rápida y la gobernanza.
Los ejemplos asumen un modelo RICE estándar en el que Reach y Effort son entradas numéricas, y Impact y Confidence son opciones con valor. Puede adaptar los mismos patrones si su organización utiliza escalas o variaciones diferentes del marco RICE.
1. ¿Qué entradas necesito para RICE?
Una configuración típica de RICE en Fluid consiste en un pequeño conjunto de propiedades de entrada y dos salidas calculadas. Las entradas capturan los cuatro factores de RICE, mientras que los campos calculados derivan la puntuación general y una banda opcional para la generación de informes y la gobernanza.
Configuración típica de RICE:
-
Reach (Número)
Una medida numérica de cuántos usuarios, clientes o elementos se verán afectados. -
Impact (Opción con Valor)
Una escala controlada que representa la magnitud del impacto (por ejemplo 1–5 o 1–10). -
Confidence (Opción con Valor)
Una medida de qué tan seguro está de las estimaciones de Reach e Impact, expresada como una escala ponderada. -
Effort (Número)
Una estimación numérica del trabajo requerido (por ejemplo días-persona, semanas o esfuerzo relativo). -
RICE (Número, calculado)
La puntuación RICE calculada, utilizada para ordenar y clasificar. -
RICELevel (Opción, calculada)
Una banda derivada (por ejemplo Low / Medium / High) utilizada para una revisión rápida, la generación de informes y las reglas de gobernanza.
2. ¿Cuál es la fórmula estándar de la puntuación RICE?
La puntuación RICE estándar se calcula multiplicando Reach, Impact y Confidence, y luego dividiendo el resultado entre Effort. En Fluid, esto se implementa mediante una Expresión que maneja los valores en blanco de forma segura y evita errores de división por cero.
Utilice este patrón cuando Impact y Confidence sean propiedades de tipo Opción con Valor, y Reach y Effort sean propiedades de tipo Número.
Puntuación RICE (copiar/pegar):
IF(
COALESCE([Effort], 0) = 0,
0,
COALESCE([Reach], 0)
* COALESCE([_Impact-Value], 0)
* COALESCE([_Confidence-Value], 0)
/ [Effort]
)
Este enfoque garantiza que:
-
la puntuación se evalúa correctamente cuando algunas entradas están en blanco
-
los valores de Effort iguales a cero no provocan errores de cálculo
-
los registros incompletos no inflan la prioridad de forma no intencionada
Si prefiere un estilo de “denominador predeterminado”, esta alternativa es aceptable, pero tenga en cuenta que no evita explícitamente que Effort tenga un valor de cero:
COALESCE([Reach], 0)
* COALESCE([_Impact-Value], 0)
* COALESCE([_Confidence-Value], 0)
/ COALESCE([Effort], 1)
En la mayoría de los casos, se recomienda el patrón protegido IF() para mayor claridad y un comportamiento predecible.
3. ¿Cómo clasifico RICE en Low / Medium / High?
Una vez que tenga una puntuación RICE numérica, puede derivar un RICE Level para facilitar la revisión de la priorización y su aplicación en informes o reglas de gobernanza. Esto normalmente se implementa como una propiedad calculada de tipo Opción mediante una expresión CASE().
Puede abordar esto de dos maneras.
Opción A — umbrales explícitos (copiar/pegar):
CASE(
[RICE] >= 0 AND [RICE] <= 1000, "Low",
[RICE] >= 1001 AND [RICE] <= 5000, "Medium",
[RICE] >= 5001, "High",
"Low"
)
Este estilo hace que los límites sean muy explícitos, lo cual puede ser útil cuando los umbrales están definidos de forma estricta o se revisan como parte de la gobernanza.
Opción B — umbrales ordenados (recomendado para facilitar el mantenimiento):
CASE(
[RICE] >= 5001, "High",
[RICE] >= 1001, "Medium",
"Low"
)
Este enfoque generalmente es más fácil de mantener, ya que los umbrales pueden ajustarse sin necesidad de reformular rangos completos. También reduce el riesgo de vacíos o superposiciones cuando los valores cambian.
4. ¿Cómo debo establecer los umbrales para RICE Level?
No existe un único conjunto de umbrales “correcto” para RICE Level. Los umbrales deben elegirse de manera que reflejen cómo su organización puntúa el trabajo y cómo pretende utilizar las bandas en la toma de decisiones.
Al definir los umbrales, considere lo siguiente:
-
Sus escalas de puntuación
Por ejemplo, que Impact se puntúe 1–5 o 1–10 afectará considerablemente el rango de las puntuaciones RICE resultantes. -
La distribución de las puntuaciones reales en su backlog
Busque umbrales que generen una separación significativa, en lugar de agrupar la mayoría de los elementos en una sola banda. -
La intención de gobernanza
Por ejemplo, si los elementos marcados como “High” requieren una revisión adicional, o si los elementos “Low” se despriorizan de forma intencionada.
Un enfoque práctico consiste en comenzar con umbrales simples e intuitivos, y luego revisarlos y ajustarlos después de dos a cuatro ciclos de priorización, una vez que pueda observar cómo se agrupan las puntuaciones en la práctica.
Marco WSJF
Esta sección muestra cómo implementar el marco de priorización WSJF (Weighted Shortest Job First) mediante propiedades personalizadas y Expresiones. Se centra en la configuración práctica: las entradas que debe capturar, cómo calcular la puntuación WSJF de forma segura y cómo derivar un WSJF Level para la generación de informes y la gobernanza.
Los ejemplos asumen un modelo WSJF estándar en el que Cost of Delay se deriva de entradas ponderadas y Job Size es una medida numérica del esfuerzo. Los mismos patrones se pueden adaptar si su organización utiliza una ponderación o terminología diferente.
1. ¿Qué entradas necesito para WSJF?
Una configuración típica de WSJF consiste en un pequeño conjunto de propiedades de entrada y dos salidas calculadas. Las entradas capturan los factores de Cost of Delay y Job Size, mientras que los campos calculados derivan la puntuación general y una banda opcional.
Configuración típica de WSJF:
-
User / Business Value (Opción con Valor)
Una medida ponderada del valor entregado al completar el trabajo. -
Time Criticality (Opción con Valor)
Una medida de la urgencia o la sensibilidad al retraso. -
Risk Reduction / Opportunity Enablement (Opción con Valor)
Una medida ponderada de cuánto riesgo se reduce o cuánta oportunidad se desbloquea. -
Cost of Delay (Número, calculado)
El valor combinado de los factores de WSJF. -
Job Size (Número u Opción con Valor)
Una estimación numérica del tamaño o esfuerzo requerido para completar el trabajo. -
WSJF (Número, calculado)
La puntuación WSJF calculada, utilizada para ordenar y clasificar. -
WSJFLevel (Opción, calculada)
Una banda derivada (por ejemplo Low / Medium / High) utilizada para la revisión, la generación de informes y las reglas de gobernanza.
2. ¿Cómo calculo Cost of Delay (CoD)?
En WSJF, Cost of Delay representa el valor total que se pierde al retrasar una pieza de trabajo. Normalmente se calcula como la suma de varios factores ponderados que capturan el valor, la urgencia y el riesgo.
En Fluid, Cost of Delay generalmente se obtiene combinando entradas de tipo opción con valor, como Business Value, Time Criticality y Risk Reduction / Opportunity Enablement, en una sola puntuación numérica.
Cost of Delay (copiar/pegar):
COALESCE([_BusinessValue-Value], 0)
+ COALESCE([_TimeCriticality-Value], 0)
+ COALESCE([_RiskReduction-Value], 0)
Cada entrada aporta su peso numérico al total de Cost of Delay. El uso de COALESCE() garantiza que el cálculo se mantenga seguro si uno o más valores están en blanco.
3. ¿Cómo calculo WSJF?
WSJF se calcula dividiendo Cost of Delay entre Job Size. Esto garantiza que el trabajo que entrega mayor valor antes, en relación con su tamaño, se priorice por encima de elementos más grandes o de menor valor.
En Fluid, esto se implementa mediante una Expresión que maneja los valores en blanco de forma segura y evita errores de división por cero.
WSJF (copiar/pegar):
IF(
COALESCE([JobSize], 0) = 0,
0,
COALESCE([CostOfDelay], 0) / [JobSize]
)
Si JobSize es una Opción con Valor, utilice en su lugar el valor numérico:
IF(
COALESCE([_JobSize-Value], 0) = 0,
0,
COALESCE([CostOfDelay], 0) / [_JobSize-Value]
)
Este patrón garantiza que la puntuación WSJF se mantenga predecible y adecuada para ordenar, filtrar y generar informes.
4. ¿Cómo clasifico WSJF en Low / Medium / High?
Una vez que tenga una puntuación WSJF numérica, puede derivar un WSJF Level para facilitar la revisión de la priorización y su aplicación en informes o reglas de gobernanza. Esto normalmente se implementa como una propiedad calculada de tipo Opción mediante una expresión CASE().
Los umbrales deben elegirse de forma que coincidan con su escala de puntuación y la distribución de los valores de WSJF en su backlog.
Ejemplo de WSJF Level (copiar/pegar):
CASE(
[WSJF] >= 10, "High",
[WSJF] >= 5, "Medium",
"Low"
)
Al igual que con RICE, comience con umbrales simples y ajústelos con el tiempo, una vez que pueda observar cómo se agrupan las puntuaciones de WSJF en la práctica.
Preguntas frecuentes de diseño y gobernanza
1. ¿Cómo mantengo la puntuación consistente entre equipos?
La consistencia importa más que la precisión al usar modelos de puntuación para la priorización. Para mantener las puntuaciones comparables entre equipos y portafolios, aplique los siguientes controles:
-
Utilice Opciones con Valor
Defina pesos acordados de forma centralizada para entradas subjetivas como Impact, Confidence y Business Value. -
Estabilice las escalas de puntuación
Evite cambios frecuentes en las escalas, especialmente a mitad de trimestre o a mitad de un ciclo de planeación, ya que esto rompe la comparabilidad. -
Proporcione una guía clara
Agregue descripciones breves a cada opción de la escala para que los equipos entiendan qué representa en la práctica un “3” frente a un “5”.
Estos controles ayudan a garantizar que las puntuaciones reflejen diferencias genuinas de prioridad, en lugar de diferencias de interpretación.
2. ¿Debo usar Reach como “usuarios”, “cuentas” o “valor en £”?
Elija una sola unidad de medida para Reach dentro de un espacio de trabajo o portafolio, y hágala explícita. Los enfoques comunes incluyen:
-
Usuarios o clientes afectados (por mes o por trimestre).
-
Cuentas afectadas.
-
Transacciones afectadas.
-
Ingresos potenciales (solo si esto se puede estimar de forma consistente).
Para la priorización, la consistencia importa más que la precisión absoluta. Una medida sencilla aplicada de forma consistente producirá clasificaciones más confiables que una medida muy detallada pero utilizada de forma inconsistente.
3. ¿Cuáles son los errores de implementación más comunes?
Los siguientes problemas suelen debilitar los modelos de puntuación y generar resultados engañosos:
-
Devolver una puntuación numérica en una propiedad de tipo Texto en lugar de Número.
-
No manejar los valores en blanco, lo que permite que las entradas faltantes propaguen resultados inesperados.
-
Dividir por cero (por ejemplo, cuando Effort o Job Size se establece en 0).
-
Usar la etiqueta visible en lugar del valor numérico al trabajar con Opciones con Valor.
Evitar estos errores ayuda a mantener los resultados de la priorización estables, predecibles y confiables.
Plantillas para copiar y pegar
Las expresiones a continuación reúnen los patrones recomendados de este artículo en una sola sección de referencia. Puede copiarlas y pegarlas directamente en propiedades calculadas, y luego ajustar los nombres de propiedad o los umbrales según su configuración.
Estas plantillas asumen que:
-
las puntuaciones numéricas se almacenan en propiedades Número
-
las entradas ponderadas utilizan Opciones con Valor
-
los valores en blanco se manejan de forma segura mediante
COALESCE() -
la división por cero está protegida explícitamente
Puntuación RICE
IF(
COALESCE([Effort], 0) = 0,
0,
COALESCE([Reach], 0)
* COALESCE([_Impact-Value], 0)
* COALESCE([_Confidence-Value], 0)
/ [Effort]
)
RICE Level
CASE(
[RICE] >= 5001, "High",
[RICE] >= 1001, "Medium",
"Low"
)
Cost of Delay
COALESCE([_BusinessValue-Value], 0)
+ COALESCE([_TimeCriticality-Value], 0)
+ COALESCE([_RiskReduction-Value], 0)
WSJF
IF(
COALESCE([JobSize], 0) = 0,
0,
COALESCE([CostOfDelay], 0) / [JobSize]
)
WSJF Level
CASE(
[WSJF] >= 10, "High",
[WSJF] >= 5, "Medium",
"Low"
)