¿Cuál es la diferencia entre solución de problemas, pruebas y depuración?
Pase cualquier cantidad de tiempo trabajando o jugando en las computadoras y pronto escuchará tres palabras sobre: solución de problemas , pruebas y depuración . Si bien los dos primeros son lo suficientemente comunes, sus significados pueden parecer borrosos o incluso sinónimos. En la práctica, cada una de estas acciones es diferente, aunque está relacionada.
La resolución de problemas es la pesadilla del usuario final y el técnico de atención al cliente, y comienza cuando el software o el hardware no funcionan como se espera, dando un resultado inesperado o insatisfactorio. En muchos casos, el error del usuario es culpable.
El primer paso en la resolución de problemas es cubrir los conceptos básicos. ¿El software o hardware está instalado correctamente? ¿Está configurado correctamente? ¿Has leído el manual y seguido todas las instrucciones? ¿Quizás cambió algo en su sistema que precipitó el problema? ¿Has estado usando este producto todo el tiempo o es una instalación nueva?
Si se trata de una instalación nueva, casi puede estar seguro de que el problema radica en el proceso de instalación, particularmente en el caso del hardware. El hardware requiere un controlador de dispositivo (archivo de software) que actúe como un puente o interfaz entre el hardware y el sistema operativo. Si el controlador del dispositivo falla, el hardware no puede comunicarse correctamente con otros componentes del sistema. Es posible que los controladores de dispositivo no estén presentes o que se hayan instalado en el orden incorrecto en relación con el dispositivo.
Si el problema radica en el hardware que funcionaba perfectamente bien hasta el momento presente, la causa podría ser la corrupción del controlador del dispositivo. Reinstalar el controlador podría resolver el problema. Un controlador actualizado también podría hacer el truco. Otras veces, volver a colocar un componente en la placa base apagando la computadora, extrayendo el componente y luego reinstalando se ocupa del problema.
La solución de problemas de hardware en los sistemas operativos Windows ™ también está disponible a través del Administrador de dispositivos y los menús de Ayuda . Un signo de exclamación amarillo junto a un componente en el Administrador de dispositivos indica un problema.
El software que comienza a comportarse mal también podría estar dañado. La reinstalación a veces puede ayudar, pero si un programa comenzó a funcionar después de instalar un software nuevo y no relacionado, podría haber un conflicto entre los dos. Los cortafuegos y los programas antivirus son conocidos por no jugar bien juntos, y probablemente sea aconsejable atenerse a un solo programa en cada una de estas categorías a menos que sea un usuario avanzado.
La resolución de problemas en general generalmente implica leer manuales o archivos de ayuda, repasar los conceptos básicos para eliminar el error del usuario como causa potencial y usar un motor de búsqueda para investigar cómo otros han resuelto el problema. Si hay algo con lo que siempre puede contar como usuario final, es que alguien ha caminado en su lugar antes. La comunidad de Internet es muy buena para proporcionar ayuda, y en la mayoría de los casos se pueden encontrar respuestas mediante una búsqueda diligente.
La prueba es el precursor de la depuración. Las pruebas suelen ser el punto fuerte de los programadores y usuarios avanzados, y se producen cuando un producto es nuevo o se está actualizando y debe ponerse a prueba para eliminar posibles problemas. Las pruebas identifican "errores" o imperfecciones para que puedan corregirse en el proceso de depuración, antes del [próximo] lanzamiento oficial del producto. Estas versiones "no oficiales" se conocen como versiones beta (por ejemplo, 3.0 b ), y los voluntarios públicos se conocen como beta testers.
La prueba beta es un recurso valioso para los desarrolladores de software debido a la variedad de sistemas informáticos que participan, combinados con la gran cantidad de horas y escenarios bajo los cuales se utiliza el programa. Esto elimina problemas imprevistos de una manera que no se puede lograr de manera efectiva utilizando solo depuradores internos. La fase de prueba beta les da a los autores una buena idea de la preparación de un producto para el dominio público.
El hardware también se prueba en versión beta, pero dado que es financieramente prohibitivo proporcionar hardware beta gratuito al público, las pruebas de hardware y la depuración se realizan comúnmente internamente. Sin embargo, los productos beta podrían ser presentados y, en algunos casos, distribuidos en cantidades limitadas a expertos de la industria en conferencias como COMDEX.
El software Beta está específicamente disponible para pruebas y no se considera una versión estable. Los probadores beta instalan software beta bajo su propio riesgo, y para ayudar a los desarrolladores de software a identificar la fuente de un problema, deben proporcionar una cantidad saludable de información al informar un error. Los datos requeridos varían, pero generalmente incluyen especificaciones del sistema, versión beta y compilación, las condiciones exactas en que se produjo el error y el contenido del mensaje de error.
La depuración es el fuerte de los programadores y desarrolladores, y consiste en arreglar el código del software para eliminar errores o errores. Los desarrolladores intentan replicar errores reportados beta en sistemas internos con el fin de eliminarlos.
Si bien existen muchos tipos de herramientas de depuración, un ejemplo simple es una herramienta que permite al programador monitorear el código del programa mientras lo manipula para ejecutar varios comandos y rutinas. Un enfoque básico es simplificar el código tanto como sea posible en el lugar problemático sospechoso, mientras se sigue replicando el problema, reduciendo el enfoque a posibles líneas problemáticas. En realidad, la depuración es un proceso complejo que requiere diferentes enfoques basados en factores como la complejidad y la longitud del código del software en sí, y el lenguaje con el que está escrito.
La depuración puede ser una tarea agotadora, aunque algunos idiomas son más fáciles de depurar que otros. Java, por ejemplo, incluye rutinas que manejan errores de excepción. Se produce un error de excepción cuando el programa encuentra una situación que debe abordarse antes de que el programa pueda continuar correctamente. En este caso, una rutina integrada inicia una "búsqueda" dentro de las diversas capas de código de software, buscando una respuesta al problema. Si no se puede encontrar una solución, se produce un error de excepción grave y el programa se cierra. El mensaje de error resultante puede incluir una dirección de memoria o algún otro dato críptico que no ayudará al usuario, pero podría ser valioso para la depuración. Los programas bien escritos no deberían tener errores fatales.
Los lenguajes de programación más antiguos como C o ensamblaje no son tan transparentes y no manejan los errores de manera tan eficiente. Los programas de depuración escritos en estos idiomas pueden probar las habilidades y la paciencia del depurador.
Afortunadamente para el usuario final, el software disponible comercialmente ya ha sido eliminado de fallas importantes. Debido a esta misma razón, la mayoría de los problemas encontrados por el usuario final están dentro del alcance de la resolución de problemas y se pueden solucionar por los medios mencionados anteriormente. En aquellas ocasiones en que un usuario final encuentra un error, seguir los pasos de la solución de problemas puede revelar una solución hasta que el desarrollador solucione el error.
Cuando solicite ayuda en un foro web o grupo de noticias, asegúrese de hacer su tarea con anticipación. La resolución de problemas requiere mucho tiempo, y las personas que ofrecen su ayuda voluntariamente aprecian a alguien que se ha esforzado por encontrar respuestas. Indagar sobre un problema que se ha preguntado y respondido repetidamente no le hará ganar amigos y se considera una netiquette pobre.