Entre mas tarde se encuentren los errores, mas costoso es arreglarlos. Muchas veces incluso, esos errores no son solucionados ya que es resulta muy costoso solucionarlos.
Cuanto más complejo y costoso sea el producto, mayor será el costo de encontrar defectos tarde
Los errores hallados en la etapa de requisitos son los mas baratos de solucionar, luego están los errores en una etapa de desarrollo. Finalmente corregir errores en producción es lo mas costoso para un proyecto, esto desde un punto de vista económico y técnico.
- Radiotherapy system Therac-25
- Patriot Missile
- Ariane 5 rocket
- Mars Climate Orbiter
En todos estos ejemplos, hubo una serie de factores que finalmente resultaron en la tragedia. Tener un error en el código no es el verdadero problema ya que ningún software está 100% libre de defectos. Sin embargo, el software necesita salvaguardas y comprobaciones para detectar errores y manejarlos correctamente. Y para eso necesita un diseño de sistema bueno y considerado y pruebas adecuadas, especialmente cuando las versiones anteriores de código se reutilizan y cambian. En todos estos casos, faltaban pruebas de software.