A continuación, se presenta el Plan de Asignatura consolidado, diseñado para cubrir las necesidades comunes en los primeros cortes y ofrecer las rutas de especialización (Ruta A para Ingeniería Civil y Ruta B para Ingeniería Agroindustrial) en el tramo final del semestre. Todo esto basado en los notebooks interactivos y las herramientas en la nube que hemos configurado.


PLAN DE ASIGNATURA: PROGRAMACIÓN DE COMPUTADORES CON PYTHON

1. INFORMACIÓN GENERAL

  • Asignatura: Programación de Computadores / Fundamentos de Programación
  • Programas: Ingeniería Civil, Ingeniería Agrícola e Ingeniería Agroindustrial
  • Duración: 16 Semanas
  • Herramientas de Software: Google Colab, Visual Studio Code (VSCode), Git, GitHub, Streamlit (Community Cloud).
  • Librerías Clave: NumPy, Matplotlib, Pandas, SymPy (Civil).

2. JUSTIFICACIÓN

En la ingeniería moderna, el uso de herramientas computacionales ya no es una habilidad opcional, sino una competencia fundamental. Este curso transforma el aprendizaje de la programación, pasando de una consola de texto abstracta a la creación de herramientas web interactivas (aplicaciones en la nube y dashboards) aplicadas directamente a problemas reales de las ingenierías Civil y Agroindustrial, fomentando que los estudiantes de la Universidad de Sucre sean creadores de soluciones tecnológicas y no solo consumidores de software.

3. OBJETIVO GENERAL

Desarrollar en el estudiante habilidades de pensamiento algorítmico y programación en Python, capacitándolo para diseñar, codificar y desplegar aplicaciones web interactivas que resuelvan problemas específicos de su disciplina ingenieril.

4. COMPETENCIAS A DESARROLLAR

  • Pensamiento Algorítmico: Capacidad para abstraer un problema de ingeniería y modelarlo usando la lógica de Entradas, Proceso y Salidas (E-P-S).
  • Desarrollo de Software: Dominio de un flujo de trabajo profesional utilizando entornos locales (VSCode) y control de versiones en la nube (Git y GitHub).
  • Análisis y Visualización de Datos: Habilidad para procesar grandes volúmenes de datos numéricos y crear representaciones visuales interactivas para la toma de decisiones.
  • Aplicación Disciplinar: Capacidad para traducir modelos matemáticos (estática estructural o termodinámica de secado) en código de programación.

5. CONTENIDOS DEL CURSO (16 SEMANAS)

MÓDULO 1: Fundamentos de Lógica Computacional (Núcleo Común)

  • Semana 1: Introducción a la Programación y al Entorno de Trabajo (Google Colab). El modelo E-P-S y el pensamiento algorítmico.
  • Semana 2: Variables, Tipos de Datos y Operaciones. Asignación de variables físicas y matemáticas.
  • Semana 3: Estructuras Condicionales (if, elif, else). Operadores relacionales y toma de decisiones.
  • Semana 4: Bucles de Control (while, for). Procesos iterativos, contadores y acumuladores aplicados a mediciones continuas.
  • Semana 5: Funciones en Python (def, return). Modularidad y encapsulamiento de fórmulas ingenieriles.

MÓDULO 2: Entorno Profesional e Interfaces Web (Núcleo Común)

  • Semana 6: De la Lógica a la Web. Introducción a Streamlit en Colab para transformar código de consola en interfaces gráficas.
  • Semana 7: Entorno Profesional Local. Migración de la nube al equipo (VSCode), fundamentos de Git y subida de proyectos a GitHub.
  • Semana 8: Despliegue en la Nube. Configuración del archivo requirements.txt y publicación de aplicaciones con URL pública mediante Streamlit Community Cloud.

MÓDULO 3: Análisis Numérico y Ciencia de Datos (Núcleo Común)

  • Semana 9: Análisis Numérico y Visualización Gráfica. Operaciones vectorizadas masivas con NumPy y creación de gráficos técnicos con Matplotlib.
  • Semana 10: Manipulación de Datos con Pandas. Lectura de archivos (CSV, Excel), uso de DataFrames, filtrado lógico y agrupación (groupby).
  • Semana 11: Dashboards Interactivos. Integración de Pandas y Streamlit para la construcción de tableros de control estadístico interactivos.

MÓDULO 4: Especialización Disciplinar y Proyecto Final (Bifurcación)

RUTA A: INGENIERÍA CIVIL (Modelado Estructural)

  • Semana 12: Álgebra Simbólica y Estática. Uso de SymPy para el planteamiento y resolución de ecuaciones de equilibrio en apoyos.
  • Semana 13: Fuerzas Internas en Vigas. Implementación del módulo continuum_mechanics para modelar vigas y extraer diagramas de fuerza cortante y momento flector.
  • Semana 14: Arquitectura Web Estructural. Construcción del backend matemático y el frontend en Streamlit para el proyecto final.
  • Semana 15: Taller de Integración Gráfica. Renderizado de gráficos de SymPy en la web usando st.pyplot().

RUTA B: INGENIERÍA AGROINDUSTRIAL Y AGRÍCOLA (Termodinámica y Secado Solar)

  • Semana 12: Algoritmos de Humedad. Programación de funciones para conversiones entre base húmeda y base seca, y cálculo de masa de agua a evaporar.
  • Semana 13: Balances de Energía y Aire. Algoritmos para determinar el calor latente requerido y el caudal volumétrico para secadores de convección natural y forzada.
  • Semana 14: Arquitectura Web Termodinámica. Construcción del backend lógico y la interfaz visual en Streamlit para el dimensionamiento del secador.
  • Semana 15: Taller de Integración Gráfica. Simulación visual de curvas de pérdida de humedad renderizadas dinámicamente en la web.

CIERRE DE SEMESTRE

  • Semana 16 (Ambas Rutas): Sustentación Final de Proyectos. Demostración en vivo de las aplicaciones alojadas en Streamlit Cloud y revisión de la arquitectura en GitHub.

6. SISTEMA DE EVALUACIÓN Y RÚBRICA GENERAL (PROYECTO FINAL - 50%)

El proyecto de fin de semestre se evaluará bajo la presentación de una Aplicación Web funcional desplegada en internet.

Criterio Descripción de la Evaluación Porcentaje / Peso
Lógica y Precisión Matemática (Backend) Las funciones procesan los datos correctamente. Los cálculos de reacciones (Civil) o balances de masa/energía (Agro) son exactos y no presentan errores (Tracebacks). 30% (1.5 / 5.0)
Interactividad y Diseño (Frontend) La interfaz de Streamlit es intuitiva, utiliza componentes visuales ordenados (sidebar, metricas) y permite fácil navegación para el usuario final. 20% (1.0 / 5.0)
Visualización Gráfica Se integra exitosamente Matplotlib o SymPy en la web, presentando diagramas estructurales o curvas de secado claros y referenciados. 20% (1.0 / 5.0)
Ingeniería de Software (Despliegue) El código está respaldado en GitHub y la aplicación es accesible globalmente a través de una URL funcional de Streamlit Community Cloud. 10% (0.5 / 5.0)
Sustentación y Dominio Temático Capacidad del estudiante para defender su lógica computacional y justificar la pertinencia física o matemática de su aplicación. 20% (1.0 / 5.0)

Este documento consolida la visión innovadora que has diseñado para el semestre. ¿Hay algún módulo o descripción adicional que te gustaría refinar antes de presentarlo oficialmente?