Sergey Nivens - Fotolia
Cómo escribir un buen reporte de un error de software
Cuando se trata de reportar defectos, cuantos más detalles, mejor. Aquí le mostramos cómo generar informes de defectos que hagan que los errores se solucionen rápidamente.
Ningún software es perfecto. Por innumerables razones, el comportamiento real de un producto de software se desvía de los comportamientos establecidos o esperados. La forma en que un equipo aborda estos problemas marca la diferencia entre los problemas persistentes de calidad del software y un producto confiable.
Las desviaciones del resultado esperado son defectos, y van desde una simple falta de ortografía en un menú, hasta fallas significativas como errores de excepción y pérdida de datos. Los desarrolladores confían en los informes de errores de software cuando evalúan y corrigen estos problemas. El equipo de control de calidad de los archivos de prueba de productos presenta la mayoría de los informes de errores de software, ya que es allí donde buscan la gama más amplia de problemas. Sin embargo, los usuarios finales también pueden comunicarse con los desarrolladores para informar problemas.
Los desarrolladores necesitan documentación clara y bien respaldada para clasificar, investigar y remediar defectos. Aquí hay cinco criterios que los profesionales de control de calidad deben adoptar para escribir informes de errores de software que sean beneficiosos para los desarrolladores y, en última instancia, también para la empresa.
1. Localice y adjunte registros
Los registros proporcionan información invaluable sobre los eventos y las relaciones de causa y efecto que afectan el comportamiento del software. Los registros documentan eventos durante la operación de software y hardware.
Cuando falla una carga de trabajo, los registros generalmente pueden arrojar luz sobre lo que estaba haciendo la carga de trabajo antes de que fallara. Por ejemplo, el software intentó una determinada operación de almacenamiento en el entorno y los registros muestran que el recurso de almacenamiento deseado no estaba disponible. Estos datos de registro ofrecen una pista sólida de que los desarrolladores deben implementar mejores rutinas de manejo de errores. Del mismo modo, los archivos de registro contienen detalles sobre los errores de excepción del procesador que provocan caídas de software y otra información del entorno de operaciones.
El personal de soporte y control de calidad debe adjuntar todos los archivos de registro disponibles al ticket de seguimiento de problemas del informe de errores del software. Los marcos de gestión de sistemas, que incluyen software de gestión del rendimiento de aplicaciones y otras herramientas, ofrecen una fuente común para varios archivos de registro.
El software en desarrollo también puede generar registros directamente. Los desarrolladores pueden agregar instrumentación y funciones de registro directamente en las compilaciones de software. El registro interno produce registros granulares sobre comportamientos críticos, como la red sensible a la latencia o la actividad de procesamiento. Estos registros también pueden activar registros de cualquier error, como la entrada del usuario, el almacenamiento, el procesador y otras áreas de fallas comunes.
2. Entre en los detalles necesarios
Antes de que un desarrollador pueda remediar cualquier error de software, debe reproducir con éxito el problema informado. Esta tarea puede ser más difícil de lo que parece, y los desarrolladores pueden pasar por alto o ignorar problemas que no pueden reproducir con éxito.
Si bien muchos defectos son obvios, como la falta de ortografía del menú, otros solo aparecen en procesos específicos o bajo ciertas circunstancias. Para esta situación, un informe de error de software eficaz debe incluir una serie de detalles que pueden ayudar a los desarrolladores a comprender con precisión lo que estaba ocurriendo en el momento del incidente.
Para escribir un buen informe de error de software, comience con un resumen ejecutivo que resalte el problema y su impacto. Luego, describa el evento en detalle y evalúe la gravedad del defecto. Incluya pasos detallados necesarios para reproducir el problema. Además, el informe puede presentar resultados reales versus resultados esperados: lo que hizo el software y lo que debería haber hecho.
Un buen informe de errores de software también debe incluir detalles de configuración, como la versión del software que se está probando e información sobre la plataforma que ejecuta el software, como se detalla en la sección 5. Las diferencias en la plataforma pueden ayudar a explicar o identificar problemas relacionados con hardware incompatible o un firmware no deseado o una versión de controlador.
3. Incluya capturas de pantalla
Una imagen vale más que mil palabras. Cuando un desarrollador realmente puede ver el manifiesto del problema, proporciona un recurso invaluable y mejora la credibilidad del probador. Adjunte cualquier archivo de imagen relevante al informe de defectos junto con otra información.
Las capturas de pantalla son más valiosas para errores en la interfaz de usuario, diálogos de error incorrectos o inesperados, problemas gráficos y otros problemas visuales. Por otro lado, no todos los defectos se benefician de una imagen, y una captura de pantalla puede no mostrar la existencia de problemas profundos o internos. Por ejemplo, los elementos de entrada de datos en una interfaz de usuario deben proporcionar la seguridad adecuada en términos de manejo de errores y protección contra actos maliciosos, cosas que una imagen podría no mostrar.
Muchas herramientas pueden tomar capturas de pantalla, incluso la sencilla utilidad Microsoft Paint ayuda a capturar una imagen. Algunas plataformas, como teléfonos inteligentes y tabletas, pueden requerir utilidades de terceros.
4. Comprenda el impacto del defecto
Al igual que sus contrapartes en el mundo natural, no todos los errores son igualmente aterradores. Un error ortográfico en un diálogo de texto tiene una prioridad radicalmente diferente a un error de excepción que bloquea el software o pierde datos valiosos. Es probable que los errores en las versiones de producción tengan mayor prioridad que los descubiertos en versiones anteriores o experimentales. Los desarrolladores y los equipos de respuesta a incidentes de TI se ocupan de muchos tickets de problemas, por lo que no esperen que aborden igualmente todos los defectos informados.
Un informe de error de software debe incluir una clasificación prudente y pragmática del defecto. Un sistema de clasificación de defectos ayuda en la organización y priorización del flujo de trabajo del desarrollador y el soporte de TI. Por ejemplo, un defecto de software que detiene el espectáculo irá directamente a la parte superior de la cola de un equipo de desarrollo, donde varios desarrolladores colaboran en una solución rápida. Los errores menos severos llamarán la atención una vez que los defectos de alta prioridad estén contenidos. Meras molestias, o problemas que tienen soluciones fáciles, podrían pasar a futuros lanzamientos de parches de rutina.
5. Tenga en cuenta la plataforma
Las computadoras son notablemente diversas en sus componentes, como extensiones de procesador, chipset, puertos de red y sistemas operativos. El software impone un conjunto de requisitos para el hardware para garantizar que un sistema informático host pueda ejecutar la aplicación correctamente.
Los probadores generalmente evalúan un conjunto limitado de sistemas informáticos con configuraciones bien conocidas y documentadas. Más allá de esos sistemas, las variaciones en la configuración del sistema pueden causar problemas inesperados que deben abordarse. Los usuarios beta son una buena manera de obtener una evaluación del mundo real de la estabilidad y el rendimiento de una compilación de software en una amplia gama de configuraciones de hardware.
Cuando surgen defectos en los dispositivos de prueba seleccionados o en la gama más amplia de opciones, los evaluadores deben incluir un resumen de la configuración del sistema subyacente en el informe de errores. Varias herramientas pueden generar resúmenes de la configuración de un sistema. La utilidad de información del sistema en Windows 10 es un ejemplo simple de una herramienta que puede exportar un resumen del sistema a un archivo de texto. Las herramientas de administración de sistemas proporcionan resúmenes detallados del sistema de los servidores y otros equipos del centro de datos.