Introducción a la Programación
- Prácticas de Aula/Semina (7 Hours)
- Tutorías Grupales (2 Hours)
- Prácticas de Laboratorio (28 Hours)
- Clases Expositivas (21 Hours)
Esta asignatura se enmarca dentro de la materia de Programación, y en el módulo de Formación Básica, junto con la asignatura de Metodología de la programación, la cual constituye la continuación natural de ésta en el segundo semestre. A esta materia de programación corresponden también las asignaturas de Estructuras de Datos, Tecnologías y Paradigmas de la programación, Algoritmia, Diseño de lenguajes de programación, Software de entretenimiento y videojuegos, Software para dispositivos móviles y Software para robots.
La asignatura se imparte durante el primer semestre del primer curso. Cuenta con 6 créditos ECTS, que suponen un total de 150 horas de trabajo; 60 horas presenciales y 90 horas no presenciales.
Organizativamente, la asignatura tendrá 2 horas de clases expositivas a la semana (hasta un total de 21 horas), una hora de seminario (hasta un total de 7 horas) 2 horas de prácticas de laboratorio (hasta un total de 28 horas) y 2 horas totales de tutorías grupales.
Los contenidos generales de la asignatura son: Introducción al análisis y diseño en Ingeniería del Software. Conceptos básicos de Programación. Introducción a las metodologías de desarrollo de Software. Elementos y estructuras de programación básicos.
No se requiere ningún requisito previo específico.
Competencias
Las competencias que debe adquirir el alumno en la materia de “Introducción a la Programación” forman parte de las competencias definidas en la titulación. Se especifica en algunos casos un segundo nivel que constituye la parte de la competencia a desarrollar en esta asignatura dentro de una competencia completa compartida con otras asignaturas.
1- Competencias específicas
Bas.4 | Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en ingeniería. |
Bas.5 | Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería. |
Com.7 | Conocimiento, diseño y utilización de forma eficiente de los tipos y estructuras de datos más adecuados a la resolución de un problema. |
Com.8 | Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados. |
2- Competencias generales
CG3 | Capacidad de abstracción. |
CG5 | Competencia para el análisis, selección y utilización de herramientas informáticas básicas y de apoyo. |
CG6 | Búsqueda, análisis y gestión de información para transformarla en conocimiento. |
CG11 | Competencia para el trabajo en equipo. |
CG20 | Creatividad. |
CG22 | Capacidad de planificación y organización. |
CG25 | Razonamiento crítico. |
CG26 | Habilidad para aprender y trabajar de forma autónoma. |
CG28 | Motivación por la calidad. |
3- Resultados de aprendizaje
RA.P-1 | Adquirir los conocimientos básicos sobre el uso y programación de los ordenadores y programas informáticos con aplicación en ingeniería. |
RA.P-2 | Conocer la estructura, organización y funcionamiento de los sistemas informáticos y sistemas inteligentes, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería. |
RA.P-3 | Analizar, diseñar, desarrollar, seleccionar, evaluar y mantener aplicaciones y sistemas informáticos, asegurando su fiabilidad y calidad aplicando las teorías, principios, métodos y prácticas de la Ingeniería del Software, eligiendo el paradigma y los lenguajes de programación más adecuados, considerando las limitaciones derivadas del coste, del tiempo, de la existencia de sistemas ya desarrollados y de las propias organizaciones. |
RA.P-4 | Conocer y aplicar procedimientos algorítmicos básicos, tipos y estructuras de datos más adecuados a la resolución de un problema, analizando la idoneidad y complejidad de los mismos. |
En base a los objetivos planteados se seleccionan los siguientes contenidos:
- El Modelo de objetos
- Objetos
- Propiedades
- Métodos
- Clases
- Elementos fundamentales de un lenguaje de programación orientado a objetos
- Sintaxis y semántica
- Tipos de datos básicos
- Constantes y Variables
- Asignación y expresiones.
- Estructuras de control.
- Entrada/Salida.
- Estructuras de datos fundamentales
- Arrays.
- Cadenas y procesamiento de cadenas.
- Elementos avanzados de la programación orientada a objetos
- Encapsulación y ocultación de información.
- Jerarquías de clases.
- Metodologías y desarrollo de software de calidad
- Conceptos fundamentales de análisis y diseño.
- Uso de lenguaje de modelado de software
- Documentación
- Depuración, pruebas y validación.
El desarrollo de las competencias, se muestra en la siguiente tabla:
Temas | Competencias Específicas | Competencias Generales |
Tema 1 | Bas.5 | CG3,CG20 |
Tema 2 | Bas.4, Bas.5, Com.7 | CG3, CG6, CG26, CG20,CG28 |
Tema 3 | Bas.4, Bas.5, Com.7 | CG6, CG11, CG20,CG28 |
Tema 4 | Bas.4, Bas.5, Com.7, Com.8 | CG3,CG26 |
Tema 5 | Bas.4, Bas.5, Com.7, Com.8 | CG3, CG20, CG28, CG11 |
Para llevar a cabo un aprendizaje activo y desarrollar las competencias que han sido marcadas en esta asignatura se plantean distintos tipos de actividades:
- Teoría: Clases presenciales donde se utiliza principalmente el método expositivo, complementado en su caso con la realización de cuestionarios online realizados de forma individual, con la puesta en común de los resultados, así como con la propuesta de pequeños ejercicios a realizar, bien individualmente o bien en grupo.
- Prácticas de Aula/Seminario: Clases presenciales donde se utiliza fundamentalmente el método de aprendizaje basado en problemas. En cada clase se propondrán una serie de ejercicios para que se realicen de manera individual y/o en grupo, con la posterior discusión y puesta en común de las soluciones.
- Prácticas de Laboratorio: Clases presenciales donde se utiliza el método de aprendizaje basado en proyectos. Durante el semestre se van desarrollando gradualmente proyectos de manera guiada, proponiéndose en cada clase la funcionalidad a implementar por el estudiante y supervisado en todo momento por el profesor.
De forma excepcional, si las condiciones sanitarias lo requieren, se podrán incluir actividades de docencia no presencial. En cuyo caso, se informará al estudiantado de los cambios efectuados.
Las siguientes tablas resumen los contenidos que se van a tratar por tipos de actividad, indicando también el número de horas presenciales y no presenciales.
MODALIDADES | Horas | % | Totales | |
Presencial | Clases Expositivas | 21 | 14 | 60 |
Práctica de aula / Seminarios / Talleres | 7 | 4,7 | ||
Prácticas de laboratorio / campo / aula de informática / aula de idiomas | 28 | 18,7 | ||
Prácticas clínicas hospitalarias | ||||
Tutorías grupales | 2 | 1,3 | ||
Prácticas Externas | ||||
Sesiones de evaluación | 2 | 1,3 | ||
No presencial | Trabajo en Grupo | 9 | 6 | 90 |
Trabajo Individual | 81 | 54 | ||
Total | 150 |
Esta asignatura requiere un alto grado de evaluación continua y aprendizaje cooperativo, mediante pruebas y controles en el aula de teoría, en los seminarios y en el laboratorio, las cuales pueden ser tanto individuales como colectivas.
La evaluación contempla los siguientes aspectos:
- Nota de Teoría: controles de aprendizaje de la parte teórica de la asignatura mediante exámenes que podrán incluir preguntas de tipo test, de respuesta corta y de respuesta larga.
- Nota de Seminario: Trabajos a realizar por el alumno en los seminarios de la asignatura.
- Nota de laboratorio: Evaluación periódica de las prácticas realizadas en el laboratorio mediante el desarrollo de uno o de varios proyectos. El estudiante defenderá cada proyecto en una prueba en la que se propondrán diversas modificaciones y/o añadidos al mismo, con su correspondiente evaluación.
Se obtiene así:
Nota Preliminar = Nota Teoría * 0,25 + Nota Prácticas * 0,65 + Nota Seminarios * 0,10
Para superar este proceso de evaluación continua se requiere:
- Asistencia mínima. Una asistencia mínima de un 80% en las clases expositivas, un 80% en los seminarios y un 80% en clases prácticas de laboratorio.
- Puntuación Mínima: Se requiere obtener al menos 3 puntos (sobre 10) en todas y cada una de las pruebas individuales de evaluación realizadas, tanto de la parte de teoría, de seminario y de las prácticas de laboratorio.
Si cumplen los requisitos anteriores, la nota final se calculará como:
Nota Final = Nota Preliminar.
Si no se cumplen los requisitos y el estudiante ha participado en actividades de evaluación cuyo peso en la calificación total suponga al menos el 50%, la nota final se calculará como:
Nota Final = Mínimo (4, Nota Preliminar)
En otro caso, se considerará al alumno como No Presentado
Se aplicarán mecanismos automatizados de detección de plagios en el código de las evaluaciones. Tanto los autores del plagio como los plagiados tendrán automáticamente una evaluación de 0 en la evaluación y, en consecuencia, perderán el derecho a la evaluación continua.
Aquellos estudiantes que no hayan superado la asignatura a lo largo del semestre podrán hacerlo también de la siguiente manera:
Convocatoria Ordinaria
A esta convocatoria podrán presentarse aquellos estudiantes que durante el semestre hayan cumplido el requisito de Asistencia Mínima, tengan una Nota preliminar >=3, hayan realizado todos los test teóricos y prácticos y hayan entregado todos los trabajos y/o proyectos requeridos.
Examen práctico en el laboratorio. Los estudiantes desarrollarán un proyecto práctico en el laboratorio del que se valorará su solución y las respuestas dadas a las preguntas planteadas por los profesores.
El proyecto constará de una funcionalidad básica (compuesta por varios apartados) cuyo nivel de implementación, prueba y documentación debe ser del 100% para alcanzar la nota mínima (5). El proyecto tendrá una funcionalidad avanzada cuyo nivel de implementación, prueba y documentación determinará la nota entre 5 y 10.
La nota final de la asignatura se corresponderá con la nota de este examen.
Aquellos alumnos que estando aprobados por el sistema de evaluación continua decidan presentarse a esta convocatoria perderán la nota obtenida con anterioridad, asignándose aquella que obtengan en este examen.
Convocatorias Extraordinarias y Evaluación Diferenciada
Examen práctico en el laboratorio. Los estudiantes desarrollarán un proyecto práctico en el laboratorio del que se valorarán su solución y las respuestas dadas a las preguntas planteadas por los profesores.
El proyecto constará de una funcionalidad básica (compuesta por varios apartados) cuyo nivel de implementación, prueba y documentación debe ser del 100% para alcanzar la nota mínima (5). El proyecto tendrá una funcionalidad avanzada cuyo nivel de implementación, prueba y documentación determinará la nota entre 5 y 10.
De forma excepcional, si las condiciones sanitarias lo requieren, se podrán incluir métodos de evaluación no presencial. En cuyo caso, se informará al estudiantado de los cambios efectuados.
Referencias bibliográficas
- Programación Orientada a Objetos con Java: Una Introducción Practica usando Bluej. David J. Barnes and Michael Kölins.Pearson Education; 5ª Edición. ISBN:978-84-8322-791-6
Referencias electrónicas
- Aprenda Java como si estuviera en primero http://www.abcdatos.com/tutoriales/tutorial/l7041.html
- Tutorial de Java: http://java.sun.com/docs/books/tutorial/java/index.html
- Aprendiendo Java – Libro de edición libre: http://www.compunauta.com/forums/linux/programacion/java/ebook.html
Toda la información, material y recursos utilizados para la asignatura será incluido en página web del Campus Virtual de la Universidad, a la que tendrán acceso los alumnos.