Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Todos sabemos que la calidad tiene un costo, pero ¿cuánto es? Si bien existe una
definición estándar de costo de la calidad para el desarrollo de software, esta
métrica puede resultar engañosa si no se interpreta en su debido contexto. De
hecho, un uso descontextualizado de esta métrica desalienta aumentos de
productividad.
El Modelo PEF
PREVENCIÓN EVALUACIÓN
FALLA
Interna Externa
Ejemplo En un proyecto se usaron 1280 horas de las cuales 280 horas se usaron en adminis
tración, 60 en entrenamiento para el proyecto, 40 en adaptaciones del proceso para el
proyecto, 420 en creación, 50 en inspecciones, 160 en pruebas, 30 en correcciones debido a
inspecciones, y 150 en debugging antes de la entrega, y 90 en correcciones finales después de
la entrega. Quedan 1000 horas en actividad del proyecto propiamente tal descontadas las
horas de administración. Entonces tenemos: P=60+40, E=50+160, Fi=30+150, Fe=90,
C=420, EoQ=580, CoQ=58%, EoPQ=270, CoPQ=27% y Overhead=280/1280=21,9%.
Interpretación
Lo primero que llama la atención de las fórmulas de arriba es que nos olvidamos
completamente de los costos no incurridos por el equipo de desarrollo. Esto es tan usual como
es peligroso. La versión cínica es que es muy difícil medir los costos como consecuencia
indirecta de la mala calidad de modo tal que es más fácil “olvidarse” de ellos. La versión más
pragmática es que las métricas y el análisis deben interpretarse en el contexto de la
organización de software y por eso sólo se refieren a ella. En cualquier caso, si se usan este
tipo de métricas siempre hay que recordar que representan una versión muy parcial de la
calidad. De hecho hay varios factores asociados al costo de la mala calidad que no miden,
como pérdida de reputación, insatisfacción del cliente, costos incurridos por el cliente, ventas
futuras no realizadas, etc.
En lo que sigue supondremos que efectivamente usaremos estas métricas y que al interpretar
los números resultantes seremos consistentes con ello.
Una pregunta obvia es qué valores de costo de calidad son razonables. Como toda buena
pregunta, la respuesta es: depende. Depende del tipo de software, del equipo, de la
metodología, y de muchas otras cosas. No nos vamos a escudar en el depende” para no dar
ningún valor, sino que sólo lo usaremos para advertir al lector que hay mucha variación.
Tiene sentido para una organización con altos niveles de calidad tener valores de CoQ entre
25% y 50% y de CoPQ entre 3% y 10%. (El ejemplo de arriba corresponde a una
Métrica peligrosa
Si la gerencia plantea objetivos de reducción de las métricas de costo de calidad (CoQ) y
costo de la mala calidad (CoPQ) pueden producirse algunos vicios, especialmente si las
métricas están ligadas a la evaluación del personal.
El problema es que si el autor de un documento no quiere tener fallas internas podría dedicar
demasiado tiempo a las revisiones personales informales, es decir, el autor dedica más tiempo
a revisar en forma personal para asegurar una inspección triunfal. Este tiempo extra será
medido como creación. Veamos qué pasa con las métricas: ha aumentado el tiempo de
creación y ha bajado el tiempo de falla, lo que genera un CoQ y un CoPQ mucho mejor. Pero
en realidad el tiempo de las revisiones personales del autor debió haberse medido como
evaluación, empeorándo la métrica CoQ en lugar de mejorarla.
Consideremos otro ejemplo más extremo. Un desarrollador utiliza una herramienta que le
permite programar mucho más rápidamente (ejemplo, parte del código lo produce un
generador de código). La herramienta no ayuda ni perjudica a los procesos de pruebas y
revisiones. En este caso, la introducción de la herramienta, si bien no modifica el esfuerzo de
calidad EoQ, sí aumenta el costo de la calidad CoQ por tener una base menor de comparación.