Mapa de la lección
Lección 09 publicada. Mapa, ejemplo, EX025.
flowchart TD
N0["Resultados de aprendizaje y conexión"]
N1["9.1 Lo que indica una buena medida"]
N2["9.2 Distribuciones, no solo medias"]
N3["9.3 Elementos abiertos y supervivencia"]
N4["9.4 Las muestras pequeñas necesitan intervalos"]
N5["9.6 Actividad práctica: medidas honestas"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
N6 --> EX["Ejemplo resuelto"]
EX --> Q["Ejercicio EX025"]
Dibujo lógico
flowchart LR
N0["Resultados de aprendizaje y conexión"]
N1["9.1 Lo que indica una buena medida"]
N2["9.2 Distribuciones, no solo medias"]
N3["9.3 Elementos abiertos y supervivencia"]
N4["9.4 Las muestras pequeñas necesitan intervalos"]
N5["9.6 Actividad práctica: medidas honestas"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX025"]
[Resultados de aprendizaje y conexión]
|
v
[9.1 Lo que indica una buena medida]
|
v
[9.2 Distribuciones, no solo medias]
|
v
[9.3 Elementos abiertos y supervivencia]
|
v
[9.4 Las muestras pequeñas necesitan intervalos]
|
v
[9.6 Actividad práctica: medidas honestas]
|
v
[Síntesis del capítulo]
|
v
[Ejemplo resuelto] --> [Ejercicio EX025]
Resultados de aprendizaje y conexión
Al terminar este capítulo, usted debería ser capaz de:
- elegir una medida que responda a una pregunta operativa e indicar su numerador, denominador y periodo;
- informar de las distribuciones con medianas y percentiles altos, y decir qué oculta una media;
- incluir lo que aún no ha ocurrido (los elementos abiertos) en las medidas de latencia;
- informar de una tasa de éxito obtenida con pocos ensayos mediante un intervalo honesto.
Todos los capítulos posteriores le piden demostrar algo con evidencia: que un control funciona, que los parches se aplican a tiempo, que una restauración cumple su objetivo. Medir es la forma en que un implementador convierte «está bien» en una afirmación que otra persona puede comprobar. También es la forma en que las organizaciones se engañan a sí mismas, normalmente no mintiendo, sino eligiendo un denominador conveniente.
9.1 Lo que indica una buena medida
Una medida es útil cuando otra persona podría volver a calcularla. Indique la pregunta («¿con qué rapidez instalamos las correcciones del proveedor en los controladores de las estaciones?»), la población (qué activos, qué correcciones), el numerador y el denominador, el periodo, la fuente de los datos y qué se excluye y por qué. Una cifra de cumplimiento de parches del «96 %» sin denominador podría referirse al 96 % de los portátiles de oficina, lo que no dice nada de las estaciones de bombeo. La mediana conjunta de 9 días del Lab 9 no supera esta prueba: no indica población, y su denominador excluye en silencio siete correcciones abiertas.
9.2 Distribuciones, no solo medias
Las magnitudes operativas (tiempo hasta el parche, tiempo hasta la restauración, tiempo de respuesta a una alerta) suelen ser asimétricas: la mayoría son rápidas, unas pocas son muy lentas, y las lentas son las que importan. La mediana describe el caso típico; el percentil 90 (p90) describe los casos malos; la media se ve arrastrada por los valores atípicos y no describe bien ninguno de los dos. Informe de la mediana y del p90 juntos, y mire el máximo. En el Lab 9, la mediana de 95 días de los controladores de las estaciones, con cinco correcciones aún abiertas, es la cifra que ocultaba la mediana conjunta.
9.3 Elementos abiertos y supervivencia
Un error frecuente en las medidas de latencia es calcularlas solo sobre los elementos completados. Si se han publicado cinco correcciones para los controladores de las estaciones pero no se han instalado, son las más lentas de todas, y son invisibles para una mediana calculada sobre las correcciones instaladas. Informe siempre de cuántos elementos siguen abiertos y de su antigüedad. La guía del NIST sobre gestión de parches en la empresa trata la aplicación de parches como un proceso de respuesta al riesgo con una puntualidad medible, y recomienda métricas que la reflejen (NIST SP 800-40 Rev. 4).
Agrupar conjuntos con comportamientos muy distintos es la trampa relacionada. Una única mediana para la TI de oficina, los servidores y los controladores de las estaciones queda dominada por el grupo con más elementos (normalmente la TI de oficina) y oculta el grupo de mayores consecuencias.
9.4 Las muestras pequeñas necesitan intervalos
Las pruebas en servicios críticos son caras, así que las muestras son pequeñas: diez simulacros de restauración, ocho alertas de prueba inyectadas. «9 de 10 simulacros cumplieron el objetivo» es un hecho; «nuestra tasa de éxito en restauraciones es del 90 %» es una afirmación excesiva. Un intervalo de confianza muestra el rango de tasas subyacentes compatibles con los datos. Para proporciones de muestras pequeñas, el intervalo de puntuación de Wilson se comporta bien (Wilson, 1927). Para 9 de 10, el intervalo de Wilson al 95 % va aproximadamente de 0,60 a 0,98: la tasa real podría ser razonablemente tan baja como el 60 %. Por eso la restauración de copias de seguridad del Lab 23, con 9 de 10 simulacros dentro del objetivo, sigue sin cumplir una regla de afirmación cuyo límite inferior debe llegar a 0,70.
9.5 Ejemplo resuelto: latencia de parches y simulacros de restauración (sintético)
El informe mensual de FSTS dice: «latencia mediana de parches: 9 días». El Lab 9 la vuelve a calcular por grupos. TI corporativa: 12 de 12 correcciones instaladas, mediana de 5,5 días, p90 de unos 9. Retransmisor/historiador: 6 de 8 instaladas, mediana de 18,5 días, p90 de unos 31,5, dos aún abiertas. PLC/RTU de las estaciones: solo 3 de 8 instaladas, mediana de 95 días, cinco aún abiertas. La mediana conjunta de 9 días es aritméticamente correcta y operativamente engañosa: describe portátiles y omite las siete correcciones abiertas, cinco de ellas en los activos de mayores consecuencias.
Los controladores de las estaciones tardan más en parchearse por buenas razones: los proveedores deben certificar las correcciones, y la instalación puede requerir una visita a la instalación y una ventana de corte acordada con operaciones (capítulo 16). La medida no debería castigarlo; debería mostrarlo, para que puedan justificarse controles compensatorios durante el periodo de exposición.
9.6 Actividad práctica: medidas honestas
Lab 9 (guárdelo como lab09.py y ejecútelo con python3 lab09.py):
# Lab 9 - measuring patch latency and a restore drill honestly (offline, standard library only)
# Synthetic: days from vendor fix release to installation, Fallowmere estate, last two quarters.
import math, statistics as st
latency = {"corp IT": [3, 5, 4, 9, 6, 2, 7, 5, 30, 4, 6, 8],
"relay/historian": [12, 19, 15, 41, 22, 18],
"station PLC/RTU": [64, 140, 95]}
not_yet = {"corp IT": 0, "relay/historian": 2, "station PLC/RTU": 5} # fixes released but not installed
def pct(xs, p):
xs = sorted(xs); k = (len(xs) - 1) * p; f = math.floor(k); c = math.ceil(k)
return xs[f] + (xs[c] - xs[f]) * (k - f)
for g, xs in latency.items():
n = len(xs) + not_yet[g]
print(f"{g:<16} installed {len(xs):>2}/{n:<2} median {st.median(xs):>5.1f} d p90 {pct(xs, .9):>6.1f} d mean {st.mean(xs):>5.1f} d")
allx = [x for xs in latency.values() for x in xs]
print(f"pooled (misleading) median {st.median(allx):.1f} d over {len(allx)} installed fixes; {sum(not_yet.values())} still open are invisible to it")
def wilson(k, n, z=1.96):
p = k / n; d = 1 + z*z/n; c = (p + z*z/(2*n)) / d; h = z*math.sqrt(p*(1-p)/n + z*z/(4*n*n)) / d
return c - h, c + h
k, n = 9, 10 # restore drills that met the 4-hour target
lo, hi = wilson(k, n)
print(f"restore drills within target: {k}/{n} = {k/n:.0%}, 95% Wilson interval [{lo:.2f}, {hi:.2f}]")
Salida esperada (Python 3.13.5):
corp IT installed 12/12 median 5.5 d p90 8.9 d mean 7.4 d
relay/historian installed 6/8 median 18.5 d p90 31.5 d mean 21.2 d
station PLC/RTU installed 3/8 median 95.0 d p90 131.0 d mean 99.7 d
pooled (misleading) median 9.0 d over 21 installed fixes; 7 still open are invisible to it
restore drills within target: 9/10 = 90%, 95% Wilson interval [0.60, 0.98]
Escriba la línea de informe que enviaría en lugar de «latencia mediana de parches: 9 días». Debería caber en dos frases.
Una línea de dos frases que aprobaría: «La TI corporativa instaló 12 de 12 correcciones, con una mediana de 5,5 días; el retransmisor y el historiador, 6 de 8, con una mediana de 18,5 días y dos abiertas. Los controladores de las estaciones instalaron 3 de 8, con una mediana de 95 días y cinco correcciones abiertas bajo controles compensatorios y con planes fechados». Es más larga que «9 días», pero ahora el lector puede ver dónde está el riesgo, y los controladores de las estaciones ya no quedan ocultos detrás de los portátiles de oficina.
9.7 Errores frecuentes y límites
- Informar de un porcentaje sin su denominador.
- Medias para magnitudes asimétricas.
- Calcular la latencia solo sobre los elementos cerrados.
- Agrupar conjuntos de modo que el grupo grande y de pocas consecuencias oculte el pequeño y de muchas consecuencias.
- Convertir un número pequeño de ensayos con éxito en una tasa sin intervalo.
- Cambiar la definición de una medida entre informes sin decirlo.
Las medidas describen lo que se registró. Si los datos de origen están incompletos (correcciones no registradas, simulacros no anotados), ninguna estadística lo reparará. En el Lab 9, la mediana conjunta muestra tres de estos errores a la vez: sin denominador, con los elementos abiertos excluidos y con los grupos agrupados.
Ejercicios — capítulo 9
EX025 — Reescriba la línea del informe. Objetivo: comunicar una medida con honestidad. Entradas: la salida del Lab 9. Restricciones: dos frases como máximo; incluya denominadores y elementos abiertos. Pasos: escríbala y después enumere lo que dejó fuera y por qué. Evidencia esperada: la línea y una nota. Rúbrica: 3 = medianas o p90 por grupo con recuentos de instaladas/total, correcciones abiertas de las estaciones mencionadas expresamente, ninguna cifra conjunta presentada como titular; 2 = en su mayor parte; 1 = repite la mediana conjunta; 0 = nada.
EX026 — Calcule la antigüedad de los elementos abiertos. Objetivo: incluir los elementos abiertos en la medida. Entradas: las cinco correcciones abiertas de las estaciones se publicaron hace 20, 45, 70, 130 y 200 días; las dos correcciones abiertas del retransmisor/historiador, hace 10 y 35 días. Restricciones: trate la antigüedad de cada corrección abierta como un límite inferior de su latencia. Pasos: (1) combine las latencias instaladas con las antigüedades abiertas de los PLC/RTU de las estaciones; (2) calcule una mediana que sea un límite inferior; (3) explique por qué es un límite inferior y no una estimación. Evidencia esperada: cálculo y explicación. Rúbrica: 3 = valores combinados 20, 45, 64, 70, 95, 130, 140, 200 → límite inferior de la mediana 82,5 días, correctamente explicado (los elementos abiertos solo pueden envejecer); 2 = error aritmético; 1 = ignora los elementos abiertos; 0 = nada.
EX027 — ¿Cuántos simulacros? Objetivo: planificar el tamaño de la muestra a partir de un intervalo. Entradas: la función de Wilson del Lab 9. Restricciones: suponga que todos los simulacros tienen éxito. Pasos: (1) encuentre el menor número de simulacros consecutivos con éxito para el que el límite inferior de Wilson al 95 % sea al menos 0,80; (2) indique si es asumible a un simulacro por mes y qué haría en su lugar. Evidencia esperada: el número, con la ejecución que lo muestra, y un párrafo. Rúbrica: 3 = 16 simulacros (límite inferior ≈ 0,806; 15 da ≈ 0,796), reconocidos como 16 meses a uno por mes, con alternativas sensatas como restauraciones parciales más pequeñas y frecuentes o pruebas de restauración automatizadas; 2 = número correcto, sin plan; 1 = adivinado; 0 = nada.
Síntesis del capítulo
Una medida es útil cuando indica su pregunta, población, numerador, denominador, periodo, fuente y exclusiones. Informe de medianas con percentiles altos para las magnitudes asimétricas; incluya los elementos abiertos; no agrupe conjuntos con consecuencias distintas; y acompañe de intervalos las tasas de éxito de muestras pequeñas. El objetivo no es una cifra favorecedora, sino una que otra persona pueda volver a calcular y sobre la que pueda actuar.