-
Introducción
La detección y corrección de errores en el desarrollo de software son procesos fundamentales para asegurar la calidad y funcionalidad de un programa. Durante la fase de evaluación, se verifica que la solución cumple con los requisitos de diseño y que funciona sin problemas. En programación, se presentan tres tipos principales de errores: de sintaxis, de ejecución y de lógica. Cada uno tiene características particulares y requiere de técnicas específicas para su identificación y resolución, lo cual implica un análisis sistemático y detallado.
La depuración o "debugging" es el proceso mediante el cual se localizan y corrigen estos errores. Es esencial comprender tanto el problema como el algoritmo de la solución, así como la sintaxis del lenguaje de programación utilizado. La perseverancia y la reflexión son cualidades claves para enfrentar este proceso, ya que los errores no solo se ven como obstáculos, sino como oportunidades de aprendizaje que impulsan la mejora continua del software.
-
Detección de errores, eficiencia y perseverancia
Una vez que se ha diseñado una solución, es necesario asegurarse de que sea adecuada para su propósito. La evaluación es el proceso que se aplica a una respuesta para verificar que cumple con los requerimientos de diseño y que, además, funciona correctamente, sin errores. Cuando se trabaja con programas de computadora, la evaluación es una tarea sistemática y rigurosa, ya que se juzga su efectividad y eficiencia.
Detección de errores
Los errores son inevitables en la vida y también al desarrollar un programa computacional. La estrategia más eficaz para prevenirlos es aprovechar al máximo los recursos que nos brindan las técnicas informáticas para alcanzar el objetivo trazado. El éxito en la consecución de los objetivos se basa en la constancia, la reflexividad y la paciencia. La motivación es la clave que abre la puerta de la perseverancia, y para ello, el error debe convertirse en nuestro mayor aliado.
Figura 1: Evaluación de soluciones
Fuente: Elena (2023)Figura 1: Evaluación de soluciones
Fuente: Elena (2023)Depuración o Debugging
La depuración es el proceso de búsqueda y corrección de errores en un programa. En inglés, a los errores de un programa se les llama “bugs”, y de ahí surge el término “debugging”. Para depurar un programa se requiere:
- Entender el problema y el algoritmo de la solución.
- Conocer la sintaxis del lenguaje de programación en el que fue creado el programa.
En programación existen tres tipos de errores:
- Errores de sintaxis.
- Errores de ejecución.
- Errores de lógica.
Figura 2: Detección de errores
Fuente: Invarato (2017)Figura 2: Detección de errores
Fuente: Invarato (2017)
Figura 3:Debugging (Licencia Creative Commons) Figura 3:Debugging (Licencia Creative Commons)
Errores de Sintaxis
- Suceden cuando una instrucción o palabra reservada del lenguaje de programación está mal escrita.
- Por lo general, son fáciles de detectar porque el mismo programa nos indica dónde está el error.
En el ejemplo, podemos ver cómo el programa (Python) nos subraya en color rojo dónde se encuentra el error. Al ejecutar el programa, no se puede realizar la suma y se indica el tipo de error.
Figura 4: Captura de un error de Sintaxis Figura 4: Captura de un error de Sintaxis
Errores de Ejecución
Ocurren cuando la ejecución del programa se interrumpe debido a una operación que es imposible de realizar. En el ejemplo, se intenta realizar una división por cero, lo cual no es posible. Al ejecutar el programa, se interrumpe en la línea de la división y luego se envía un mensaje de error.
Figura 5: Captura de un error de Ejecución Figura 5: Captura de un error de Ejecución
Errores de Lógica
Ocurren cuando, al finalizar la ejecución del programa, el resultado no es correcto o no se realiza lo planificado. Estos errores son más difíciles de detectar porque el programa funciona sin errores de sintaxis ni de ejecución, pero la lógica o el razonamiento utilizado es erróneo. En el ejemplo, se solicita obtener el cuadrado de un número; el programa se ejecuta sin problemas, pero el resultado es incorrecto. El razonamiento aplicado multiplica el número tres veces, lo que nos da el cubo en lugar del cuadrado.
Figura 6: Captura de un error de lógica Figura 6: Captura de un error de lógica
-
Paralelismo y sincronización mediante eventos
¿Qué es un Evento?
Un evento es una acción que provoca que suceda otra. Es un componente esencial de los medios interactivos.
Ejemplo: En tu computadora, al hacer clic en cualquiera de los programas de Office, se te permite abrirlo.
Figura 7: Evento (Licencia Creative Commons) Figura 7: Evento (Licencia Creative Commons)
Más ejemplos de eventos
Evento: Abro una cerradura → Resultado: se abre la puerta.
Evento: presiono el freno → Resultado: el auto desacelera.
Figura 8: Evento de abrir cerradura (Licencia Creative Commons) Figura 8: Evento de abrir cerradura (Licencia Creative Commons)
Figura 9: Evento presionar freno del coche (Licencia Creative Commons) Figura 9: Evento presionar freno del coche (Licencia Creative Commons)
¿Qué es Sincronizar?
Mira dos definiciones:
- Según la RAE: “Hacer que coincidan en el tiempo dos o más movimientos o fenómenos.”
- En informática: Hacer que coincidan dos o más acciones en el mismo tiempo o que se organicen según un determinado orden.
Ejemplo: Sincronizar los archivos de tu computadora con tu OneDrive en la nube.
Figura 10: Sincronización en OneDrive
Fuente: Pomeyrol (2019)Figura 10: Sincronización en OneDrive
Fuente: Pomeyrol (2019)Otros ejemplos de sincronizar
Sincronizar tu reloj inteligente con tu teléfono celular.
Figura 11: Sincronizar reloj a smartphone
Fuente: Martínez (2015)Figura 11: Sincronizar reloj a smartphone
Fuente: Martínez (2015)Sincronizar el audio de una película con los subtítulos.
Figura 12: Sincronizar reloj a smartphone
Fuente: Hernández (2023)Figura 12: Sincronizar reloj a smartphone
Fuente: Hernández (2023) -
¿Qué es Paralelismo?
El paralelismo se define como la capacidad de los artefactos programables para realizar tareas o acciones de manera simultánea (Brenan y Resnik, 2012).
- En el pensamiento computacional, el paralelismo se refiere a la posibilidad de que varios eventos ocurran al mismo tiempo.
- En muchas situaciones, es necesario que varias acciones sean concurrentes.
- Para el programador, es una competencia básica en la elaboración de programas, la cual además presenta un nivel de dificultad mayor, relacionado, por ejemplo, con la identificación de patrones.
Figura 13: Escribir un mensaje de texto mientras está en una videollamada (Licencia Creative Commons) Figura 13: Escribir un mensaje de texto mientras está en una videollamada (Licencia Creative Commons)
Ejemplo de paralelismo
En un concurso de baile:
- Suena la música./
- Las parejas bailan.
- Los jurados califican.
Es un conjunto de instrucciones que ocurren de manera concurrente en el tiempo.
Figura 14: Concurso de baile (Licencia Creative Commons) Figura 14: Concurso de baile (Licencia Creative Commons)
3.3 Comunicación y representación de la información
Representación de la información
- Es el proceso mediante el cual se pueden mostrar datos de manera abstracta, como, por ejemplo, modelos, maquetas, infografías y simulaciones, entre otros.
- Para la resolución de problemas, es importante la capacidad de pensar en términos abstractos y la elección de buenas representaciones.
Figura 15: Términos Abstractos (Licencia Creative Commons) Figura 15: Términos Abstractos (Licencia Creative Commons)
Abstracción para tener buenas representaciones
Es necesario identificar lo que es importante en algo; de este modo, se puede gestionar la complejidad de un problema. Todo proceso de abstracción da como resultado la construcción de una vista simplificada, que representa la idea principal de algo.
Representando a un ser humano
- El dibujo clásico de un niño.
- El bosquejo utilizado en planos de arquitectura que muestra las dimensiones en relación con una persona.
- Un dibujo típico que se observa en muchos esquemas.
- La silueta de un hombre que a menudo se utiliza en señalética.
- Una caricatura que tiene más detalles para comunicar mejor los sentimientos de los personajes.
Figura 16: Diferentes representaciones de un ser humano
Fuente: Adaptado de Bordignon F y Iglesias A. (2020)Figura 16: Diferentes representaciones de un ser humano
Fuente: Adaptado de Bordignon F y Iglesias A. (2020)Diferentes formas de representación
Es necesario tener en cuenta que las distintas representaciones de un mismo problema pueden facilitar o complicar las cosas. La representación de la información ayuda a estructurar los datos requeridos de la manera más eficiente posible.
Puntos a considerar para representar información:
- Usar una buena expresión oral y escrita.
- Crear contenidos claros.
- Ser incremental e iterativo.
- Revisar la información las veces que sean necesarias.
- Comunicar los resultados.
Figura 17: Manejo de la información
Fuente: Logicalis (s. f.)Figura 17: Manejo de la información
Fuente: Logicalis (s. f.)Ejemplos
Figura 18: Una partitura es la representación de una melodía (Licencia Creative Commons) Figura 18: Una partitura es la representación de una melodía (Licencia Creative Commons)
Figura 19: Un globo terráqueo es la representación de nuestro planeta. (Licencia Creative Commons) Figura 19: Un globo terráqueo es la representación de nuestro planeta. (Licencia Creative Commons)
Figura 20: Un mapa puede ser la representación geográfica de un país o puede ser un sistema vial. (Licencia Creative Commons) Figura 20: Un mapa puede ser la representación geográfica de un país o puede ser un sistema vial. (Licencia Creative Commons)
Formatos para representar información
Actualmente existe una gran variedad de herramientas para la representación de la información. Lo importante es seleccionar la más adecuada para una comunicación eficiente.
Figura 21: representación de información (Licencia Creative Commons) Figura 21: representación de información (Licencia Creative Commons)
Comunicación de la información
- Es el proceso mediante el cual intercambiamos información.
- Es el medio de conexión entre diferentes partes interesadas, con el objetivo de informar, generar acciones, transmitir una idea o crear un entendimiento.
Figura 22: Información no es igual a comunicación (Licencia Creative Commons) Figura 22: Información no es igual a comunicación (Licencia Creative Commons)
Recomendaciones para comunicar
- Se comunica teniendo en cuenta al receptor (quien recibe la información) con el objetivo de que comprenda el mensaje.
- La comunicación es bidireccional; al proporcionar información, se espera que exista una respuesta del receptor y viceversa.
- Elegir el formato más apropiado para representar el problema y su solución. Procura abstraer lo más importante del problema para que puedas comunicarlo a los demás.
Figura 23: Enseñar a comunicar (Licencia Creative Commons) Figura 23: Enseñar a comunicar (Licencia Creative Commons)
Diferencia entre información y comunicación en algunas situaciones
- En un auto
- Información: Tengo frío.
- Comunicación: Tengo frío, ¿puedes encender la calefacción?
- En clase
- Información: Hay que hacer la práctica.
- Comunicación: Hay que hacer la práctica y enviármela al terminar la clase.
- En casa
- Información: Son más de la 1:00 p.m.
- Comunicación: Son más de la 1:00 p.m., ¿almorzamos?
-
-
-
Detección de errores, eficiencia y perseverancia