10 Tips fundamentales para depurar tu desarrollo de software

Esta lista para depurar tu desarrollo de software está basada en el libro Debugging: The Nine indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems (David J. Agans) y en la experiencia personal aplicando técnicas para depurar código:

debugging

debugging

 

  1. Debug de los datos: Comprobar que los datos son los que se

esperan.

 

  1. Comprender el sistema: Leer manuales al principio (RTMF), comprobar el código con código de ejemplo.

 

  1. Reproducir el error: En ocasiones, es difícil reproducir errores; para ello, en el caso en el que sucedan con poca frecuencia, se recomienda, que se analice la situación y se use el mejor criterio para “adivinar” cuáles son las variables que podrían ser y tratar de aumentar la frecuencia. No se debe dar por sentado algo que no tiene ningún efecto sobre el problema. Se trata de comprobar y volver a comprobar.

 

  1. Dejar de pensar y mirar: No consiste en obtener conclusiones basadas en información insuficiente. Provocando así atasco y empezar a recorrer el código y eliminar incógnitas. Se aconseja añadir técnicas para debugging desde el primer momento. Utilizar las herramientas de depuración apropiadas, desde análisis de código estático hasta la ejecución paso a paso en un debugger.

 

  1. Divide y vencerás: Limitar la búsqueda, reduciendo los lugares donde un bug pueda estar oculto. No obviar el resto de posibles errores que puedan aparecer aunque no estén relacionados con el que se está tratando, un bug puede ocultar los verdaderos síntomas de otro.

 

  1. Cambiar una sola cosa a la vez: Si con el cambio realizado el bug no se soluciona. Se recomienda, eliminar el cambio. Tratar de averiguar qué ha cambiado desde la última vez que el sistema funcionó con éxito.

 

  1. Intentar mantener una auditoría con el registro de eventos, teniendo en cuenta, que incluso los detalles de menos importancia pueden tener un impacto importante y pueden colaborar a la reproducción del bug y a su solución.

 

  1. Comprobar todo, incluso las suposiciones más obvias: ¿Es un error del compilador, un error de tiempo de ejecución, un error del sistema operativo, un error en el debugger o tal vez incluso un error en tests?

 

  1. Consultar a otros compañeros para clarificar ideas: Preguntar a un experto puede ofrecer una respuesta inmediata.

 

  1. Si no se soluciona el error, esto indica que no se ha solventado de ninguna manera; es decir, si llegando a este punto el bug no puede ser reproducido, todo lo que se ha hecho para fijarlo, ha implicado que sea más difícil de encontrarlo. Se recomienda, deshacer todos los cambios, intentar volver a reproducirlo y empezar de nuevo.