Introducción

Cimentar las estructuras conceptuales y prácticas de la programación, brindando las herramientas necesarias para garantizar el desarrollo de las competencias básicas del curso, afianzando la lógica conceptual de los estudiantes para el desarrollo o solución de un problema.

            

 

Fundamentos de Programación

 

a.    Asignatura

b. Nro. Créditos

c. Código

d. Horas de trabajo directo con el docente

e. Horas de trabajo autónomo del estudiante

 

Fundamentos de Programación

 

2

 

 

32

 

64

 

f. Del nivel

 

g. Asignaturas pre-requisitos

h. Código

 

Técnico profesional

 

 

 

 

Tecnológico

 

 

 

 

Profesional

 

 

 

 

 

i. Corresponde al programa académico

 

Ingeniería de sistemas e ingeniería electrónica

 

j. Unidad académica que oferta la asignatura

 

Ingeniería de Sistemas

 

k. Correo electrónico de la unidad que oferta

 

prog_sistemas@cunedu.co

  1. Perfil académico del docente – tutor:

 

Docente con pregrado en Ingeniería de Sistemas, especialización y/o maestría en la línea de desarrollo de Software, experiencia mínima de 2 años como docente en educación superior y 2 años en el sector empresarial.

 

Dominio demostrable en Algoritmos y Lenguajes de programación.

 

Profesional con un alto nivel de compromiso, gusto por el aprendizaje permanente y excelente relación con estudiantes y compañeros.

 

 

 

  1. Importancia de esta asignatura en el proceso de formación:

 

Como su nombre lo indica; la asignatura Fundamentos de Programación tiene como propósito principal desarrollar competencias básicas en el estudiante relacionadas con la adquisición de la lógica de programación y estructurar su pensamiento lógico para utilizarlo en el desarrollo de software.   De igual manera busca orientar al estudiante hacia la solución de problemas reales empleando el pensamiento lógico  y  la algoritmia como herramientas principales.

 

 

 

  1. Al finalizar el curso el estudiante estará en condiciones de:

 

  • Identificar plenamente los elementos de un algoritmo de programación.
  • Analizar detalladamente los elementos de un problema.
  • Plantear soluciones alternas a una problemática por medio de un algoritmo de programación.
  • Aplicar esquemas de revisión lógica del algoritmo.
  • Diseñar pruebas de escritorio que garanticen la efectividad del algoritmo.
  • Conocer herramientas de las TICs para complementar las prácticas sobre una plataforma.

 

 

ñ. Problemas (preguntas) que determinan el propósito de formación en la asignatura:

 

  • ¿Cómo abordar problemas y plantear soluciones utilizando el pensamiento Lógico?
  • ¿De qué forma la lógica aporta en la comprensión, planeación y resolución de problemas?
  • ¿Cuáles son los factores que se deben tener en cuenta al diseñar un algoritmo para la resolución de un problema?
  • ¿Cómo el uso de la estructura secuencial, iterativa y condicional,  en un algoritmo permite representar una idea?
  • ¿Cuáles son los elementos que se deben tener en cuenta para diseñar una prueba de escritorio?
  • ¿Cuál es la estructura de un programa básico en un lenguaje de programación estructurado?
  • ¿De qué forma se debe aplicar un algoritmo a un lenguaje de programación?

 

 

  1. Competencias

 

 

  • Generar habilidades que permitan al estudiante analizar, sintetizar, formular, plantear y dar solución a problemas utilizando pensamiento Lógico, representándolo en algoritmos, Diagramas o Pseudocódigo.
  • Diseñar pruebas de escritorio que permitan evaluar el algoritmo y medir su productividad.
  • Implementar un algoritmo de programación que resuelva un problema aplicando el pensamiento lógico para luego ser implementado en cualquier lenguaje de programación.

 

 

 

 

 

 

  1. Plan de trabajo

 

 

Planeación del proceso de formación

 

 

 

 

Sesión

Propósitos de formación

Acciones a desarrollar

Tiempos de trabajo por créditos: tutoría, trabajo autónomo, trabajo colaborativo

 

 

 

 

Horas de trabajo autónomo del estudiante

Horas de trabajo directo con el docente

1.    Fundamentos de programación, conceptos básicos y objetivos

 

Comprender la terminología         relacionada con los algoritmos.

 

Identificar los elementos Lógicos de un algoritmo

Abordar problemas,  interpretarlos  y plantear soluciones lógicas

 

Definir concepto sobre pseudocódigo

 

Conceptualizar que es una prueba de escritorio

 

Especificar la importancia de la prueba de escritorio

 

 

 

Exposición Magistral de:

 

     Definición de Algoritmo

     características de un algoritmo. (Carácter Finito, precisión, entrada, salida, eficacia, resolución).

     Pasos que interviene en la solución de problemas (entender el problema, trazar un plan, ejecutarlo y revisar)

 

     Actividad en Clase

 

     Describir una situación real utilizando algoritmos.

 

     Actividad Autónoma

 

     Solucionar problemas aplicando los pasos expuestos anteriormente-

 

 

4

2

2 Diagrama de Flujo de Datos

Comprender que es un Diagrama de flujo de datos.

 

Identificar y reconocer la simbología de los Diagramas de Flujos de Datos

 

Representar. Simbólicamente  los algoritmos en lo Diagramas

 

Exposición Magistral de:

 

Definición y características de los diagramas de datos.

 

Importancia y utilidad

 

Actividad en Clase:

 

 

Trabajar con enunciados de  problemas y representarlos de forma  algorítmica o/y con  diagramas de flujos de datos.

 

Actividad Autónoma

 

Definir los tipos de Diagramas de flujo.

 

Desarrollo de ejercicios

 

4

2

    3.        Variables, tipos de datos y operadores

 

     Identificar claramente los tipos de datos

     Asimilar los elementos para la declaración de una variable

     Diferenciar entre variables globales y locales

     Identificar operadores de Relación, Aritméticos y Lógicos.

 

Clase Magistral.

 

 

Actividad en clase

 

Elaborar una tabla en la cual se identifiquen los tipos de datos (Carácter, Numérico y Boolean), tamaño byte o bits y rango

 

 

Construir una tabla que contenga los operadores clasificándolos.

 

Actividad Autónoma

 

Ejercicios prácticos

 

Consulta:

Que es un lenguaje Tipado y no Tipado.

 

4

2

4 Estructuras condicionales

 

Identificar la estructura Condicional

 

Aplicar la estructura  condicional como componentes básicos de los diagramas y aplicar la combinación de ellas para el desarrollo de algoritmos más complejos.

     Clase Magistral

 

Definir estructuras condicionales:

Simple

Compuesta y Anidados

Utilizar:

     Operadores relacionales

     Operadores Aritméticos

     Operadores Lógicos

 

Elaborar procedimientos con estructuras condicionales.

Actividad en Clase

       Elaborar procedimientos con cada tipo de estructura condicional.

      Verificar los resultados utilizando prueba de escritorio.

Actividad Autónoma

Ejercicios prácticos

4

2

    5.        Estructura condicional

Conocer las diferentes estructuras algorítmicas condicionales como componentes básicos de los diagramas y aplicar la combinación de ellas para el desarrollo de algoritmos más complejos.

     Clase Magistral

     Ejercicios Prácticos combinando las estructuras condicionales

 

     Aplicaciones a proyecto de aula

4

2

    6.        Estructura de repetición ciclo condicionado al inicio, mientras-hacer y para

Diseñar eficazmente ciclos repetitivos para el desarrollo de multiprocesos.

 

     Clase Magistral

     Ejercicios Prácticos Pseudocódigo

     Aplicaciones a proyecto de aula

4

2

PRIMER PARCIAL

30 %

 

4

2

8.    Arreglos

Unidimensionales

Reconocer la diferencia entre el almacenamiento de una variable y un Vector de almacenamiento. Almacenar datos en vectores y a través de las estructuras de repetición mostrar los datos almacenados

     Clase Magistral

     Ejercicios Prácticos Pseudocódigo

     Aplicaciones a proyecto de aula

4

2

9.    Aplicaciones con Arreglos Unidimensionales

Reconocer la estructura de un arreglo lineal y los subíndices que utiliza en cada uno de sus elementos.

     Clase Magistral

     Ejercicios Prácticos utilizando Pseudocódigo

     Aplicaciones a proyecto de aula

     Cargar un arreglo lineal y hacer una búsqueda de un elemento en el vector.

     consultar link de ejercicios http://cunacademyc.gnomio.com/

4

2

10. Formulación de algoritmos en Herramientas para ello. Diagramas lógicos y prueba de escritorio

Diseñar algoritmos basados en las características del problema utilizando herramienta como PROGRANIMATE,DFD o PSEINT

Seguimiento del algoritmo, diagrama o pseudocódigo por medio de prueba de escritorio

     Clase Magistral

     Ejercicios Prácticos

     Hacer el mismo ejercicio en cada una de las plataformas para analizar su entorno.

     Consultar link de ejercicios

Actividad Autónoma

 

Consultar

 

La herramienta structorizer

4

 

 

2

11. Formulación de algoritmos en Herramientas para ello. Diagramas lógicos y prueba de escritorio

Diferenciar claramente el uso y los beneficios de una estructura secuencial de asignación, usando   herramienta PROGRANIMATE, DFD o PSEINT.

     Clase Magistral

     Ejercicios Prácticos

     consultar link de ejercicios

      

 

4

2

12. Segundo parcial

30%

 

4

2

13. Formulación de algoritmos en Herramientas para ello,. Diagramas lógicos y prueba de escritorio

Diseñar algoritmos basados en las características del problema utilizando la herramienta PROGRANIMATE, DFD o PSEINT.

Seguimiento de algoritmo por medio de prueba de escritorio

     Clase Magistral

     Ejercicios Prácticos

     consultar link de ejercicios en

 

4

2

14. Formulación de algoritmos en Herramientas para ellos. Diagramas lógicos y prueba de escritorio

Diferenciar claramente el uso y los beneficios de una estructura secuencial de asignación, usando la  herramienta PROGRANIMATE, DFD o PSEINT.

 

     Clase Magistral

     Ejercicios Prácticos

     consultar link de ejercicios

4

2

15. Formulación de algoritmos en Herramientas para ello. Diagramas lógicos y prueba de escritorio

Diferenciar claramente el uso y los beneficios de una estructura secuencial de asignación, usando la  herramienta PROGRANIMATE, DFD o PSEINT.

 

     Clase Magistral

     Ejercicios Prácticos

     consultar link de ejercicios

 

4

2

16. Semana de la Generación C

Aplicar lo aprendido al proyecto de aula

proyecto básico

4

2

17. Examen   40%

Sustentación Proyecto Final Integrador.

 

4

2

 

 

 

 

 

  1. Sistema de evaluación (criterios y descripción)

 

Evaluación diagnóstica: Para establecer el nivel de conocimientos que el estudiante tiene acerca del tema.

 

Evaluación formativa: Le permite al docente y al estudiante detectar las fortalezas y debilidades.

 

Evaluación sumativa: de acuerdo con la exigencia de la institución para cualificar el nivel de competencias y está compuesta por tres cortes,  Primer corte 30%, segundo corte 30% y tercer corte 40%  y la escala de las mismas es de 1 a 5.

 

Lo anterior debe estar directamente relacionado con la metodología ABP, los acuerdos pedagógicos logrados al inicio del curso y lo consagrado en el reglamento estudiantil, los profesores que dicte esta área deben colocar una base de datos con ejercicios que se alimentaran en la platforma cunacademyc.gnomio.com.

 

 

  1. Calificación (distribución de notas)

 

Prueba parcial 1

Prueba parcial 2

Prueba final

 

-       Evaluación principal:  15%

-       Talleres                   :  12%

-       Adelanto proyecto   :    3%

 

 

-       Evaluación principal: 15%

-       Talleres                   :  12%

-       Adelanto proyecto   :   3%

 

 

-       Evaluación principal:  15%

-       Talleres                   :    5%

-       Proyecto                  :   20%

 

Total 30%

Total 30%

Total 40%

 

 

  1. Bibliografía y cibergrafía

 

Bibliografía:

 

  • Joyanes Aguilar, Luis. Fundamentos de Programación: Algoritmos y Estructura de datos. McGrawHill. 4 edición.
  • Kruse, Robert Estructura de datos y diseño de programas. Prentice Hall. 1 edición.

 

 

Cibergrafía:

 

           

 

 

 

 

Desarrollado por

Fecha

Validado por

Aprobado por

Ing. Magda Fernández

Ing. Dacarth Sarmiento Porto.

24/10/2014

Ing. Yesid Luengas

Ing. Sandra Castiblanco

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Observaciones:

 

Iniciar con clase teórica e ir rotando las salas de centro de cómputo, previamente formalizando con los diferentes docentes el esquema de trabajo Sala y Salón.

 

Para la siguiente malla tener en cuenta de extender el horario de fundamentos de programación a 3 créditos para poder enfocarlos en unos de los pilares de la programación que es el pensamiento lógico.