Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2015 820 - EUETIB - Escuela Universitaria de Ingeniería Técnica Industrial de Barcelona 723 - CS - Departamento de Ciencias de la Computación GRADO EN INGENIERÍA DE LA ENERGÍA (Plan 2009). (Unidad docente Optativa) GRADO EN INGENIERÍA ELÉCTRICA (Plan 2009). (Unidad docente Optativa) GRADO EN INGENIERÍA MECÁNICA (Plan 2009). (Unidad docente Optativa) GRADO EN INGENIERÍA ELECTRÓNICA INDUSTRIAL Y AUTOMÁTICA (Plan 2009). (Unidad docente Optativa) GRADO EN INGENIERÍA BIOMÉDICA (Plan 2009). (Unidad docente Optativa) GRADO EN INGENIERÍA QUÍMICA (Plan 2009). (Unidad docente Optativa) 6 Idiomas docencia: Catalán, Castellano Profesorado Responsable: Otros: JAVIER FARRERES DE LA MORENA JAVIER FARRERES DE LA MORENA - FERRAN JUAN BARUEL - FERRAN VIRGOS BEL Capacidades previas Éste es un segundo curso de programación. Los alumnos ya han realizado un curso de programación en primero de carrera donde han adquirido unas capacidades básicas en programación. Competencias de la titulación a las cuales contribuye la asignatura Específicas: 1. Conocimientos fundamentales sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en ingeniería. Transversales: 2. USO SOLVENTE DE LOS RECURSOS DE INFORMACIÓN - Nivel 3: Planificar y utilizar la información necesaria para un trabajo académico (por ejemplo, para el trabajo de fin de grado) a partir de una reflexión crítica sobre los recursos de información utilizados. Metodologías docentes Semanalmente habrá una sesión teórica y una sesión práctica en laboratorio con ordenadores. Paralelamente el alumno desarrollará un proyecto cuyo enunciado él mismo propondrá. Algunas sesiones de laboratorio durante el curso se dedicarán a la propuesta del alumno. Objetivos de aprendizaje de la asignatura La asignatura pretende enseñar a: 1. Analizar problemas complejos mediante mecanismos de reducción a problemas más pequeños 2. Intruducir al alumno en el uso de tipos abstractos de datos 3. Ofrecer una introducción a la programación orientada a objetos. 4. Introducir conceptos de programación visual. 1 / 6
Horas totales de dedicación del estudiantado Dedicación total: 150h Horas grupo grande: 45h 30.00% Horas grupo pequeño: 15h 10.00% Horas aprendizaje autónomo: 90h 60.00% 2 / 6
Contenidos Introducción Dedicación: 6h Clases de laboratorio: 4h Se explican las tareas a realizar en la asignatura y el método de evaluación. Propuesta de proyecto por parte del alumno Recordatorio sobre la programación con acciones. Análisis y ciclo de vida Dedicación: 17h Trabajo autónomo (no presencial): 15h En este tema se da a los alumnos una visión general del proceso de desarrollo de una aplicación informática. Análisis de requerimientos de la propuesta Estado del arte en el diseño de aplicaciones -Describir el ciclo de vida de una aplicación informática, y por extensión, de un proyecto de desarrollo informático -Describir cómo realizar un análisis de requerimientos Diseño de aplicaciones Dedicación: 39h Clases teóricas: 10h Clases de laboratorio: 6h Trabajo autónomo (no presencial): 23h Se explica y se pone en práctica la metodología de diseño de aplicaciones. Diseño descendente de la propuesta (primer refinamiento) Diseño completo de la propuesta (segundo o tercer refinamiento) Diagrama modular de la propuesta Diseño descendente Diseño modular 3 / 6
Programación visual Dedicación: 12h Clases de laboratorio: 6h Trabajo autónomo (no presencial): 6h Se explican las nociones necesarias para poder utilizar elementos visuales de programación. Tipos abstractos de datos Dedicación: 18h Clases teóricas: 6h Clases de laboratorio: 8h Aprendizaje autónomo: 4h Se explica el concepto de Tipo Abstracto de Datos y se utilizan mediante llamadas a acciones predefinidas. Aplicación de Tipos Abstractos de Datos a la propuesta Describir y aprender a utilizar: -ficheros -punteros -colas -pilas -listas Validación de datos y diagramas de estado Dedicación: 2h Descripción de cómo programar un autómata de estados. 4 / 6
Programación orientada a objetos Dedicación: 6h Clases teóricas: 6h Se explican los conceptos teóticos en los que se basa la programación orientada a objetos, una extensión del concepto de Tipo Abstracto de Datos. Se explican los conceptos de: -clase -instancia -atributo -método -herencia -polimorfismo Excepciones Dedicación: 2h Se explican mecanismos para controlar las excepciones. Desarrollo Dedicación: 48h Clases de laboratorio: 6h Trabajo autónomo (no presencial): 42h Desarrollo de la propuesta por parte del alumno hasta llegar a obtener un programa completo y ejecutable Desarrollo de la propuesta Sistema de calificación La asignatura se evalúa en sucesivas entregas de un proyecto que el alumno desarrolla a lo largo del curso. Las distintas entregas y sus pesos son: 10% Primera entrega: Primer refinamiento de la propuesta 15% Segunda entrega: Segundo o Tercer refinamiento de la propuesta 20% Tercera entrega: Diagrama modular con precondiciones y postcondiciones 10% Cuarta entrega: Aplicación de TADs a la propuesta 35% Quinta entrega: Desarrollo de la propuesta 10% Estado del arte en análisis partiendo de un resumen e interpretación del artículo Parnas 5 / 6
Normas de realización de las actividades No hay exámen final Bibliografía 6 / 6