Skip to content
Tecnología · 1o de Preparatoria

Ideas de aprendizaje activo

Depuración y Pruebas de Software

La depuración y pruebas de software son habilidades que requieren práctica activa para internalizarse. Los estudiantes aprenden mejor cuando interactúan directamente con el código, cometen errores y los corrigen en tiempo real. Esto les permite desarrollar pensamiento crítico y resiliencia técnica, competencias clave en el desarrollo de software.

Aprendizajes Esperados SEPSEP EMS: Evaluación de Sistemas TecnológicosSEP EMS: Pensamiento Crítico
25–45 minParejas → Toda la clase4 actividades

Actividad 01

Rotación por Estaciones30 min · Parejas

Caza de Bugs en Parejas: Código Compartido

Proporciona a cada par un código con errores intencionales de sintaxis y lógica. Los estudiantes lo ejecutan, anotan fallos y proponen correcciones paso a paso. Al final, intercambian códigos con otra pareja para verificar soluciones.

¿Por qué el error es una parte esencial del proceso de aprendizaje en programación?

Consejo de FacilitaciónDurante 'Caza de Bugs en Parejas', pida a los estudiantes que intercambien roles cada 10 minutos para que ambos vivan la experiencia de encontrar y explicar errores.

Qué observarProporciona a los estudiantes un pequeño fragmento de código con un error lógico obvio. Pide que identifiquen el error, describan por qué ocurre y sugieran una línea de código para corregirlo.

RecordarComprenderAplicarAnalizarAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 02

Rotación por Estaciones45 min · Grupos pequeños

Estaciones de Pruebas: Casos Unitarios

Crea cuatro estaciones con funciones diferentes: una para entradas normales, otra para límites, una para errores y la última para salidas esperadas. Los grupos rotan, escriben pruebas y discuten resultados en 10 minutos por estación.

¿Qué estrategias son más efectivas para localizar un bug en un código extenso?

Consejo de FacilitaciónEn 'Estaciones de Pruebas', prepare materiales claros y variados para cada estación, con ejemplos que cubran al menos tres tipos de errores distintos.

Qué observarOrganiza a los estudiantes en parejas. Cada estudiante entrega un programa simple con un error de sintaxis intencional. El compañero debe encontrar el error de sintaxis, explicar la regla violada y corregir el código. Luego, intercambian roles.

RecordarComprenderAplicarAnalizarAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 03

Rotación por Estaciones35 min · Grupos pequeños

Simulación de Fallos: Condiciones Inesperadas

En grupos pequeños, los estudiantes modifican un programa base con inputs absurdos o nulos. Prueban, registran crashes y agregan validaciones. Presentan hallazgos al grupo grande.

¿Cómo podemos asegurar que nuestro programa funcione bajo condiciones inesperadas?

Consejo de FacilitaciónPara 'Simulación de Fallos', use inputs que representen datos reales pero problemáticos, como valores negativos en cálculos o cadenas vacías en funciones de texto.

Qué observarPresenta en pantalla dos fragmentos de código que producen el mismo resultado incorrecto. Pregunta: '¿Cuál de estas estrategias de depuración (revisar línea por línea, usar un depurador, añadir 'prints') sería más eficiente para encontrar el error en el Fragmento A y por qué?'

RecordarComprenderAplicarAnalizarAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 04

Rotación por Estaciones25 min · Individual

Depuración Individual: Reto Cronometrado

Asigna un código buggy a cada estudiante con un temporizador de 15 minutos. Usan herramientas como print statements o IDE debuggers. Discuten estrategias al final en plenaria.

¿Por qué el error es una parte esencial del proceso de aprendizaje en programación?

Consejo de FacilitaciónEn 'Depuración Individual: Reto Cronometrado', limite el tiempo a 15 minutos por ejercicio para simular presión real y fomentar la priorización de tareas.

Qué observarProporciona a los estudiantes un pequeño fragmento de código con un error lógico obvio. Pide que identifiquen el error, describan por qué ocurre y sugieran una línea de código para corregirlo.

RecordarComprenderAplicarAnalizarAutogestiónHabilidades de Relación
Generar Clase Completa

Plantillas

Plantillas que acompañan estas actividades de Tecnología

Úsalas, edítalas, imprímelas o compártelas.

Algunas notas para enseñar esta unidad

Enseñar depuración y pruebas requiere un enfoque iterativo: primero, muestre ejemplos simples de cómo un error puede pasar desapercibido hasta que las pruebas lo revelen. Evite corregir los errores por ellos; guíelos con preguntas como '¿Qué esperabas que hiciera este código?' o '¿Qué pasa si el input es X?'. La investigación en educación STEM sugiere que los estudiantes retienen mejor cuando cometen errores y los corrigen ellos mismos, en lugar de recibir soluciones prefabricadas.

Al finalizar las actividades, los estudiantes identificarán errores de sintaxis y lógicos con precisión, aplicarán estrategias de depuración sistemáticas y diseñarán pruebas unitarias efectivas. Verificarán el funcionamiento de programas bajo condiciones normales y excepcionales, demostrando un enfoque metódico y colaborativo en la resolución de problemas.


Cuidado con estas ideas erróneas

  • Durante 'Caza de Bugs en Parejas', algunos estudiantes pueden asumir que todos los errores son evidentes en el código.

    Durante 'Caza de Bugs en Parejas', observe si los estudiantes solo buscan errores de sintaxis. Si es así, guíelos para que ejecuten el código con inputs específicos y comparen los outputs con los esperados, destacando que muchos errores son lógicos y requieren pruebas activas.

  • Durante 'Estaciones de Pruebas', algunos estudiantes pueden creer que una prueba es suficiente para validar un programa.

    Durante 'Estaciones de Pruebas', pida a los estudiantes que revisen los casos de prueba propuestos por sus compañeros. Si notan que solo hay un caso por estación, instrúyalos para que agreguen al menos dos más: uno normal y uno de borde, demostrando la necesidad de cobertura amplia.

  • Durante 'Simulación de Fallos', algunos estudiantes pueden pensar que los bugs solo ocurren por errores de escritura.

    Durante 'Simulación de Fallos', cuando un programa falle inesperadamente, pregunte al grupo: '¿Qué suposiciones hizo el código sobre los datos?'. Esto ayudará a que identifiquen que los errores lógicos surgen de diseños incompletos o supuestos incorrectos.


Metodologías usadas en este resumen