[Audio] FORMATO DE MICROCURRICULO 1. PRESENTACION DE LA ASIGNATURA NOMBRE ASIGNATURA: ÁREA: COMPONENTE: PROGRAMACION ESTRUCTURADA FORMACIÓN ESPECIFICA INGENIERÍA DE SOFTWARE PRERREQUISITOS: SEMESTRE ACADÉMICO: NÚMERO DE CRÉDITOS: LÓGICA DE PROGRAMACIÓN 2 3 HORAS HORAS TEÓRICAS HORAS DE PRÁCTICA LABORATORIO TRABAJO (HAD) (HLAB): INDEPENDIENTE (HTI): 1 2 6 TIPO ASIGNATURA: MODALIDAD: NIVEL DE FORMACIÓN: OBLIGATORIA PRESENCIAL TÉCNICO PROFESIONAL PROGRAMA ACADÉMICO: TÉCNICA PROFESIONAL EN SOPORTE DE SISTEMAS INFORMÁTICOS 2. JUSTIFICACIÓN DE LA ASIGNATURA La asignatura de Programación Estructurada se incorpora al plan de estudios del programa de Técnico Profesional en Soporte de Sistemas Informáticos porque desarrolla las habilidades fundamentales de pensamiento lógico, resolución de problemas y estructuración algorítmica, que son pilares para el diseño y desarrollo de soluciones computacionales básicas. A través de su desarrollo, se promueve el fortalecimiento de las competencias técnicas del perfil profesional, específicamente en la comprensión y construcción de programas que se ajusten a estándares lógicos, secuenciales y sistemáticos. Esta asignatura resulta especialmente pertinente dado que responde a las características de una población en formación que requiere una sólida base para desempeñarse con eficiencia en contextos reales del sector productivo, facilitando la transición hacia lenguajes más complejos o paradigmas avanzados. Además, propicia.
[Audio] una experiencia formativa coherente con los objetivos institucionales de aprendizaje por competencias, mediada por actividades prácticas, herramientas TIC y desafíos que reflejan problemas del mundo real. 3. OBJETIVO DE LA ASIGNATURA Desarrollar en los estudiantes las competencias necesarias para la programación de soluciones algorítmicas mediante el uso de estructuras secuenciales, condicionales, repetitivas y modulares, aplicando los principios de la programación estructurada con base en buenas prácticas de desarrollo de software, como fundamento esencial para la solución de problemas computacionales en contextos técnicos y profesionales. 4. RESULTADOS DE APRENDIZAJE COMPETENCIA GENERAL RESULTADO DE APRENDIZAJE RA1 – ACTITUDINAL: Demostrar la proactividad y el compromiso en el aprendizaje y aplicación de principios y técnicas de desarrollo de software en contextos académicos y prácticos con el fin de fortalecer el desempeño profesional y la calidad de las soluciones en problemas del contexto. RA2 – CONOCIMIENTO: Reconocer los conceptos fundamentales de la programación estructurada en la solución de problemas Programar software aplicando estándares y procedimientos técnicos que respondan a la solución de problemas de un contexto especifico computacionales reales o simulados, con el fin de desarrollar programas funcionales, eficientes y mantenibles. R3 – DESEMPEÑO: Aplicar conceptos en la codificación de programas estructurados en entornos de desarrollo integrados y situaciones prácticas, con el fin de evidenciar un desempeño técnico competente y.
[Audio] alineado con estándares de calidad en el desarrollo de software. 5. CONOCIMIENTOS PREVIOS El estudiante debe haber cursado la asignatura de lógica de programación, en donde adquirió conocimientos básicos en algoritmos de programación, diseño de diagramas de flujo de datos, manejo de pseudocódigo, comprensión de variables, operadores y estructuras de entrada/salida. También requiere conocimientos en el uso de herramientas informáticas. 6. UNIDADES TEMÁTICAS RESULTADOS DE APRENDIZAJE CONTENIDOS PROPUESTOS APORTE AL PROYECTO INTEGRADOR Diseño de la arquitectura lógica del programa mediante la descomposición del problema en funciones interrelacionadas, identificando entradas, procesos y salidas necesarias. Unidad 1 -Diseño modular de soluciones algorítmicas Análisis de requerimientos y descomposición funcional de problemas. Diseño modular basado en funciones o RA1 – ACTITUDINAL: Demostrar la proactividad y el compromiso en el aprendizaje y aplicación de principios y técnicas de desarrollo de software en contextos académicos y prácticos con el fin de fortalecer el desempeño profesional y la calidad de las soluciones en problemas del contexto. RA2 – CONOCIMIENTO: Reconocer los conceptos fundamentales de la programación estructurada en la solución de problemas procedimientos. Parámetros por valor y por referencia. Alcance de variables y tipos de paso de datos. Diagramación estructurada de procesos (estructuras jerárquicas) Implementación del computacionales reales o simulados, con el fin de desarrollar programas Unidad 2 - Estructuras de control avanzadas y control lógico de flujo y estructuras de manejo de datos.
[Audio] almacenamiento necesarias para la Revisión de estructuras gestión de información en el sistema desarrollado. funcionales, eficientes y mantenibles. RA3 – DESEMPEÑO: Aplicar conceptos en la codificación de condicionales y repetitivas con casos complejos. Uso de sentencias de programas estructurados en entornos de desarrollo integrados y situaciones control: break, continue, return. Validaciones de entrada y control de errores en prácticas, con el fin de evidenciar un desempeño técnico competente y alineado con estándares de calidad en el tiempo de ejecución. Arreglos unidimensionales y bidimensionales. Recorrido, ordenamiento y búsqueda de datos desarrollo de software. básicos Construcción del Unidad 3 - Implementación funcional y programa funcional final, con pruebas básicas, documentación del software Integración de funciones y módulos en programas documentación técnica del código y uso de componentes reutilizables o librerías del lenguaje seleccionado. completos. Introducción a pruebas unitarias y depuración. Documentación de código fuente y estructuras de datos. Análisis de eficiencia de código (nociones básicas)..
[Audio] Introducción al uso de librerías externas estándar. 7. RECURSOS La asignatura de Programación Estructurada, por su naturaleza teórico-práctica y su asignación de tres créditos académicos, requiere de un entorno que facilite tanto la comprensión conceptual como el desarrollo aplicado de habilidades de programación. Por ello, se hace necesaria la disponibilidad de medios educativos que respalden los procesos de enseñanza y aprendizaje desde múltiples dimensiones. A nivel bibliográfico, se debe contar con acceso a libros de texto actualizados, manuales de lenguajes de programación estructurada (como C, Python, Java), artículos científicos, documentos técnicos y recursos multimedia disponibles tanto en formato físico como digital. Se recomienda el uso activo de bases de datos académicas institucionales, como Ebook Central (ebrary) y la IEEE Digital Library, que ofrecen contenidos validados y actualizados en programación, estructura de datos, diseño modular y paradigmas de desarrollo. En cuanto a infraestructura física y tecnológica, se requiere una sala de sistemas con equipos de cómputo con acceso a internet, procesadores de mediano rendimiento, sistemas operativos actualizados y software libre o licenciado, como Visual Studio Code, Dev C++, Thonny, NetBeans u otros IDE según el lenguaje seleccionado. Se requiere también un videobeam, acceso a plataformas educativas como Moodle y herramientas colaborativas como GitHub Classroom, Replit o Tinkercad este último es de mucha utilidad para implementar en los procesos de semilleros de investigación como el de robótica y transformación digital. Dado el enfoque experiencial de la asignatura, se hace relevante la implementación de estrategias inmersivas mediante el uso de simuladores, plataformas gamificadas como por ejemplo (Codingame, Codewars), herramientas de evaluación interactiva (Kahoot, Quizizz, Socrative) y entornos de visualización algorítmica como Visualgo, que permiten al estudiante vivir el proceso de construcción lógica más allá del código textual. Se puede sugerir como estrategia complementaria la participación en eventos virtuales (talleres, hackathones, charlas) o el seguimiento de comunidades globales de programación, para fortalecer la integración entre el conocimiento adquirido y su aplicación en escenarios reales..
[Audio] 8. METODOLOGÍA La asignatura se desarrolla bajo el enfoque pedagógico institucional de aprendizaje experiencial, entendido como un proceso continuo donde el estudiante construye conocimiento a partir de la interacción activa con su entorno, la experimentación directa y la reflexión crítica sobre sus acciones. Este modelo concibe el aprendizaje no como un resultado aislado, sino como una serie de ciclos vivenciales donde el hacer, reflexionar, conceptualizar y aplicar están interconectados permanentemente. En coherencia con este enfoque, se implementan estrategias pedagógicas activas que promueven la participación del estudiante en todas las fases del proceso formativo, combinando el desarrollo conceptual con la aplicación práctica de conocimientos a problemas del mundo real. Entre estas estrategias se encuentran: Aprendizaje basado en retos (ABR): los estudiantes enfrentan desafíos relacionados con contextos reales del soporte y desarrollo de software, que deben resolver mediante el diseño, la codificación y validación de soluciones estructuradas. Proyectos integradores por unidad: cada unidad culmina con un entregable funcional que se integra progresivamente al proyecto final, permitiendo evaluar de manera continua el progreso del estudiante. Clase invertida: el estudiante consulta de manera autónoma los contenidos teóricos por medio de videos, guías o lecturas asignadas antes de clase, de forma que el tiempo presencial se orienta a la resolución de dudas, aplicación práctica y construcción colaborativa del conocimiento. Estudio de casos: se analizan situaciones reales o simuladas en las que los estudiantes deben diagnosticar problemas, diseñar soluciones modulares y argumentar la toma de decisiones a nivel de lógica estructurada. Ciclos de retroalimentación: se realizan sesiones periódicas de análisis de código en clase, donde se identifican errores comunes, se promueven buenas prácticas de programación y se refuerza la argumentación lógica. Estas estrategias se desarrollan en el aula de manera presencial, favoreciendo la interacción directa entre docentes y estudiantes, el trabajo colaborativo, la discusión técnica y la validación inmediata del aprendizaje a través de la práctica. Se establece un equilibrio entre el trabajo guiado por el docente y el trabajo autónomo del estudiante..
[Audio] Durante las sesiones presenciales, se fomentan actividades prácticas supervisadas, resolución de problemas, revisión de ejercicios y retroalimentación continua, mientras que en el trabajo independiente el estudiante asume un rol activo en la consulta de recursos, la ejecución de tareas, la preparación previa de contenidos y el avance de su proyecto integrador. El docente acompaña este proceso diseñando experiencias significativas, guiando técnicamente la ejecución y promoviendo la reflexión sobre los errores como oportunidades de aprendizaje. De esta manera, el estudiante no solo adquiere habilidades técnicas en programación estructurada, sino que también desarrolla competencias clave como la autonomía, el pensamiento analítico, la solución eficiente de problemas, el trabajo en equipo y la adaptabilidad, fundamentales para su desempeño en el campo del desarrollo de software. 9. SISTEMA DE EVALUACIÓN La Evaluación, tal como lo plantea el PEI de la institución, es un proceso, orientado hacia el crecimiento de los estudiantes. Es un proceso permanente con continua realimentación por parte de docente y con participación del estudiante mediante la autoevaluación y co-evaluación, con incidencia en la mejora continua. La evaluación es también una herramienta para promover el aprendizaje, para motivar al estudiante, para valorar el avance y los resultados del estudiante a partir de las evidencias que se generan, de tal forma que permitan definir su promoción..
[Audio] El sistema de evaluación está definido en el reglamento estudiantil, y se lleva a cabo en dos periodos o cortes durante el semestre, de la siguiente manera: Ponderación Descripción Primer Corte Académico 10% Actividades establecidas en el aula virtual 20% Talleres y actividades extra - clase 20% Avances proyecto integrador Segundo Corte Académico 10% Autoevaluación Estudiante 20% Talleres y actividades extra - clase 20% Actividad Integradora / Proyecto Integrador 10. USO DE HERRAMIENTAS TECNOLOGICAS La asignatura de Programación Estructurada incorpora las Tecnologías de la Información y la Comunicación (TIC) como herramientas fundamentales para mediar los procesos de enseñanza y aprendizaje, garantizando la interacción dinámica entre el estudiante, el conocimiento y el contexto. Su naturaleza teórico-práctica y orientada a la resolución de problemas informáticos reales, favorece el uso intensivo de recursos digitales en todas las etapas del ciclo formativo. Durante el desarrollo de la asignatura, las TIC se emplean en diversas dimensiones: en la presentación de contenidos, en la facilitación de experiencias de aprendizaje activo, en el acompañamiento y evaluación formativa, y en el desarrollo autónomo del estudiante. A través del uso de entornos de desarrollo integrados (IDEs) como Visual Studio Code, Dev C++, Thonny o entornos en línea como Replit y JDoodle, los estudiantes pueden escribir, compilar, ejecutar y depurar código de forma inmediata, permitiendo una comprensión concreta de los conceptos abordados en clase. Asimismo, se hace uso de plataformas de aula virtual como Moodle, Classroom o Teams, donde se centralizan los recursos didácticos, las guías de ejercicios, el seguimiento del proyecto integrador, la comunicación con el docente y la entrega de productos académicos. Estas plataformas permiten integrar contenidos multimedia (videos, infografías, animaciones), así como foros y autoevaluaciones interactivas..
[Audio] El componente colaborativo se fortalece mediante herramientas TIC como GitHub Classroom, que permite la gestión de versiones y el trabajo en equipo sobre código fuente, favoreciendo la práctica profesional y el aprendizaje entre pares. Del mismo modo, se utilizan simuladores visuales como Visualgo para explicar gráficamente el funcionamiento interno de estructuras de control y estructuras de datos, reforzando el razonamiento lógico. En el ámbito de la evaluación y retroalimentación, se integran plataformas como Kahoot, Socrative, Mentimeter y Quizizz, que permiten evaluar conocimientos previos, verificar aprendizajes y realizar procesos de metacognición en tiempo real, de manera interactiva y motivadora. De esta forma, las TIC no solo actúan como soporte didáctico, sino que se convierten en agentes estructurantes del aprendizaje, propiciando una experiencia significativa, flexible y contextualizada que favorece la apropiación de la lógica estructurada de programación y la preparación del estudiante para entornos digitales propios del sector productivo actual. 11. COMPONENTE DE INTERNACIONALIZACIÓN La internacionalización en la asignatura de Programación Estructurada se concibe como un eje transversal que permite formar a los estudiantes desde una perspectiva global, al acercarlos a estándares, metodologías, herramientas y recursos reconocidos internacionalmente en el ámbito del desarrollo de software. Este componente no se limita al estudio de contenidos en otros idiomas, sino que promueve el desarrollo de competencias interculturales, el acceso a saberes globales, la adaptación a entornos digitales internacionales y la comprensión de buenas prácticas profesionales adoptadas por comunidades técnicas de todo el mundo. Uno de los principales mecanismos de internacionalización en esta asignatura es el uso sistemático del inglés técnico aplicado a la programación. Los lenguajes de programación estructurados como C, Python o Java están diseñados con sintaxis en inglés, lo cual requiere que el estudiante entienda términos como if, else, while, return, function, input, output, entre otros. Además, se promueve la consulta de documentación oficial, tutoriales, artículos científicos y referencias bibliográficas en inglés, seleccionadas cuidadosamente para ser accesibles desde el nivel técnico, y que permiten al estudiante familiarizarse con el lenguaje técnico internacional y con estructuras documentales propias del campo informático..
[Audio] Se fomenta el uso de repositorios globales y colaborativos como GitHub, en donde los estudiantes exploran, clonan o contribuyen a proyectos de código abierto, reconociendo estilos de codificación estandarizados, licencias internacionales de uso y la dinámica de trabajo distribuido en comunidades de desarrollo. También se utilizan plataformas internacionales como Stack Overflow, W3Schools, Codecademy y GeeksforGeeks, que ofrecen desafíos, soluciones y discusiones en un entorno globalizado, facilitando el aprendizaje autónomo a través de contenidos y casos utilizados en distintas partes del mundo. En concordancia con el enfoque de aprendizaje experiencial, se incorporan recursos audiovisuales en inglés subtitulado, como cursos introductorios de universidades internacionales (Harvard CS50x, MIT OpenCourseWare) y contenidos de la Khan Academy, donde los estudiantes no solo se enfrentan a una diversidad de estilos de enseñanza, sino que también fortalecen sus habilidades de escucha, interpretación y adaptación de conceptos. Adicionalmente, se promueve el análisis de estándares y convenciones internacionales de codificación como PEP8 (Python Enhancement Proposal) o las guías de estilo de Java y C++, permitiendo que los estudiantes comprendan cómo se diseñan y mantienen programas con criterios de calidad universalmente aceptados. Se incluyen también prácticas éticas y normativas del software alineadas con principios internacionales (por ejemplo, la ética del software libre, el Creative Commons o el Open Source Initiative). De esta manera, la internacionalización en la asignatura no es un elemento accesorio, sino una dimensión integrada al proceso formativo que fortalece la capacidad del estudiante para desenvolverse en entornos digitales globales, comprender y aplicar conocimientos de fuentes extranjeras, y proyectar su formación hacia estándares que le permitirán insertarse con mayor facilidad en comunidades tecnológicas internacionales o procesos de actualización permanente en el campo de la programación. 12. PERFIL DEL DOCENTE El docente de esta asignatura debe ser profesional en Ingeniería de Sistemas, Ingeniería en Informática o afines, con formación mínima de nivel de especialización y/o maestría en áreas relacionadas con el desarrollo de software, educación o tecnologías de la información. Debe contar con al menos tres años de experiencia en docencia en programación, así como experiencia práctica en desarrollo de software. Se requiere que posea competencias en el uso de entornos de programación, metodologías activas de.
[Audio] enseñanza, dominio de herramientas TIC para educación y competencias comunicativas en inglés técnico. 13. BIBLIOGRAFÍA Arnow, D., Dexter, J., & Weiss, M. (2021). Introduction to Programming Using Java: An Object-Oriented Approach (3rd ed.). Boston, MA: Pearson. Bergin, J., & Stehlik, M. (2020). Problem Solving with Algorithms and Data Structures Using Python (2nd ed.). Hoboken, NJ: Wiley. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022). Introduction to Algorithms (4th ed.). Cambridge, MA: MIT Press. Downey, A. (2021). Think Python: How to Think Like a Computer Scientist (2nd ed.). Green Tea Press. https://greenteapress.com/wp/think-python-2e/ Forouzan, B. A., & Gilberg, R. F. (2020). Computer Science: A Structured Programming Approach Using C (3rd ed.). Boston, MA: Cengage Learning. Gaddis, T. (2021). Starting Out with C++: From Control Structures to Objects (10th ed.). Boston, MA: Pearson. IEEE Xplore. (2023). IEEE Digital Library. https://ieeexplore.ieee.org/ Knuth, D. E. (2021). The Art of Computer Programming: Fundamental Algorithms (3rd ed.). Boston, MA: Addison-Wesley. Miller, B. N., & Ranum, D. L. (2021). Python Programming in Context (3rd ed.). Burlington, MA: Jones & Bartlett Learning. Severance, C. (2021). Python for Everybody: Exploring Data Using Python 3. CreateSpace Independent Publishing Platform. Zelle, J. M. (2020). Python Programming: An Introduction to Computer Science (3rd ed.). Franklin, Beedle & Associates Inc. Sedgewick, R., & Wayne, K. (2020). Computer Science: An Interdisciplinary Approach. Boston, MA: Pearson..