Pág.69 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php UNIDAD 4: DEPURACIÓN CUANDO SE PRESENTAN PROBLEMAS Ilustración 4-1: Cuarta fase del ciclo de programación. Es muy difícil elaborar procedimientos perfectos en un primer intento y la dificultad aumenta a medida que los problemas se vuelven más complejos. Después de traducir el algoritmo en un lenguaje de programación, el procedimiento resultante debe ser probado y los resultados validados (revisión). A este proceso se le conoce como depuración y contribuye a mejorar en los estudiantes la capacidad para resolver problemas puesto que la depuración basada en la retroalimentación es una habilidad útil para toda la vida (Stager, 2003). La depuración de un procedimiento hace parte fundamental del ciclo de programación y desde el punto de vista educativo estimula en los estudiantes la curiosidad, la perspectiva, la comunicación y promueve valores como responsabilidad, fortaleza, laboriosidad, paciencia y perseverancia. La programación facilita un diálogo interior en el cual la retroalimentación constante y el éxito gradual empujan a los alumnos a ir más allá de sus expectativas (Stager, 2003). Otras dos actividades relacionadas con esta etapa, que no se tratarán en esta guía, son la afinación y la documentación. La primera consiste en realizar retoques para lograr una mejor apariencia del programa (en pantalla o en los resultados impresos) o para ofrecer funcionalidades más allá de los resultados esperados, especificados en la fase de análisis del problema. La segunda tiene un carácter eminentemente comunicativo, con la documentación de un programa se pone a prueba la capacidad del estudiante para informar a otras personas qué hace su programa, cómo lo hace y el significado de cada elemento utilizado. Esta actividad se puede llevar a cabo mediante comentarios introducidos al código o por medio de documentación formal en un documento que se anexa al procedimiento elaborado. Depuración La corrección de fallas es una de las situaciones que mayor frecuencia tienen en el mundo profesional. Con esta actividad se intenta identificar fallas sintácticas o lógicas en programas que no funcionan adecuadamente; una vez aislada la falla, esta se soluciona y se vuelve a probar el programa y a validar los resultados. Según Jonassen (2003), para corregir fallas efectiva y eficientemente se requiere conocimiento del sistema (comprensión conceptual de cómo funciona el sistema), conocimiento procedimental (cómo llevar a cabo tanto procedimientos de solución de fallas, como actividades de prueba) y conocimiento estratégico (saber cuándo, dónde y por qué aplicar procedimientos de solución de fallas y actividades de prueba). Fallas de sintaxis Este tipo de fallas solo se presenta en MicroMundos ya que el entorno de programación de Scratch es gráfico y los estudiantes no deben escribir el código. Además, los bloques con las instrucciones son autoencajables, por tanto no es posible ubicar un bloque de manera que se generen fallas de sintaxis. Las fallas sintácticas son las más sencillas de identificar ya que el entorno de programación indica dónde se ha producido el error y de que tipo es. Por ejemplo, MicroMundos reportará el error “valorDos no tiene valor en prueba” cuando, en el procedimiento “prueba”, se intenta mostrar el contenido de la variable “valorDos” sin haberla asignado antes. En caso de presentarse una falla de sintaxis, el estudiante debe: Comprender el mensaje de error que reporta el ambiente de programación (apoyarse en las opciones de ayuda que ofrece MicroMundos o en el docente). Examinar el código del programa para identificar en cuál instrucción se encuentra la falla Corregir la falla Probar el programa de nuevo EJEMPLO 4-1 Retomemos el ejemplo del estudiante que aprueba un examen cuando obtiene una calificación mayor o igual a seis (ejemplo 3-14). Se requiere elaborar un procedimiento que pida al usuario una calificación, aplique el criterio de aprobación e imprima “Aprobado” o “Reprobado”, según sea el caso. R/. ANÁLISIS DEL PROBLEMA Formular el problema: Es un problema sencillo de selección doble.
Created with BuildVu