Nombre: PROGRAMACIÓN PARA SISTEMAS DE TELECOMUNICACIÓN
Código: 504103010
Carácter: Obligatoria
ECTS: 6
Unidad Temporal: Cuatrimestral
Despliegue Temporal: Curso 3º - Segundo cuatrimestre
Menciones/Especialidades:
Lengua en la que se imparte: Castellano
Carácter: Presencial
Nombre y apellidos: SÁNCHEZ PALMA, PEDRO
Área de conocimiento: Lenguajes y Sistemas Informáticos
Departamento: Tecnologías de la Información y las Comunicaciones
Teléfono: 968326460
Correo electrónico: pedro.sanchez@upct.es
Horario de atención y ubicación durante las tutorias:
Titulaciones:
Doctor en Informática en la Universidad Politécnica de Valencia (ESPAÑA) - 2000
Licenciado en Informática en la Universidad de Málaga (ESPAÑA) - 1993
Categoría profesional: Catedrático de Universidad
Nº de quinquenios: 5
Nº de sexenios: 4 de investigación y 1 de transferencia
Curriculum Vitae: Perfil Completo
[CG3 ]. Conocimiento de materias básicas y tecnologías, que le capacite para el aprendizaje de nuevos métodos y tecnologías, así como que le dote de una gran versatilidad para adaptarse a nuevas situaciones.
[CG9 ]. Capacidad de trabajar en un grupo multidisciplinar y en un entorno multilingüe y de comunicar, tanto por escrito como de forma oral, conocimientos, procedimientos, resultados e ideas relacionadas con las telecomunicaciones y la electrónica.
[ST1 ]. Capacidad para construir, explotar y gestionar las redes, servicios, procesos y aplicaciones de telecomunicaciones, entendidas éstas como sistemas de captación, transporte, representación, procesado, almacenamiento, gestión y presentación de información multimedia, desde el punto de vista de los sistemas de transmisión.
[ST6 ]. Capacidad para analizar, codificar, procesar y transmitir información multimedia empleando técnicas de procesado analógico y digital de señal.
[TR5 ]. Aplicar a la práctica los conocimientos adquiridos
Al finalizar el programa formativo, el estudiante debe ser capaz de:
Describir los objetivos del desarrollo de software.
Identificar los aspectos del desarrollo que tienen que ver con la calidad del software.
Describir los distintos modelos de ciclos de desarrollo de software.
Emplear notaciones estándar para la representación del diseño software.
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Emplear los mecanismos habituales en el uso de frameworks en el desarrollo de interfaces gráficas de usuario.
Enunciar las propiedades fundamentales de las estructuras de datos más habituales en el desarrollo de software incluyendo, conjuntos, listas, pilas, colas y árboles.
Diseñar sistemas informáticos utilizando elementos reusables de diseño (patrones).
Seleccionar la estructura de datos que mejor se adapte en la resolución de un problema software.
Desarrollar programas de ordenador cumpliendo atributos de calidad a partir de las estructuras de datos seleccionadas.
Aspectos avanzados de programación orientada a objetos. Algoritmos de<br>ordenación y búsqueda. Estructuras dinámicas de datos. Gestión de la<br>entrada y salida de datos desde los lenguajes de programación.
UD I. Introducción a la Ingeniería del Software
Tema 1. Introducción a la Ingeniería del Software
1.1. La Ingeniería del Software como disciplina
1.2. Calidad del software
1.3. Modelos de ciclos de desarrollo de software
1.4. El Lenguaje de Modelado UML
UD II . Desarrollo de Software Orientado a objetos Tema 2. Conceptos de la Orientación a Objetos
Tema 2. Conceptos de la Orientación a Objetos
2.1. Clases, objetos, estado y comportamiento
2.1. Herencia e Interfaces: Polimorfismo
2.1. Tipos genéricos y Enumerados
2.2. Patrones de Diseño Orientados a Objeto
2.3 Ordenación y Búsqueda
UD III.- Aspectos Avanzados de Programación Orientada a Objetos
Tema 3. Gestión de Excepciones
3.1. Definición y manejo de Excepciones
3.2. Categorías de Excepciones
3.3 Definición de Excepciones por el programador
Tema 4. Gestión de la Entrada/Salida
4.1. El patrón Decorador en la Entrada/Salida.
4.2. Tipos de Archivos y organización de datos.
4.3. Entrada/Salida a archivos de texto y binarios
4.4. Ficheros de Acceso Aleatorio.
4.5. Serialización de Objetos.
Tema 5. Interfaces Gráficas de Usuario
5.1. El Framework como elemento de diseño.
5.2. Estructura de un Framework para Interfaces Gráficas de Usuario (GUI).
5.3. Elementos de Diseño en un Framework para GUI.
5.4. Gestión de Eventos.
5.5. Gestión de Diseños.
Tema 6. Bases de Datos Relacionales.
6.1. Fundamentos de Bases de Datos.
6.2. El Modelo Entidad-Relación.
6.3. El Modelo Relacional. Transformaciones.
6.4. El lenguaje SQL.
UD IV.- Estructuras Dinámicas de Datos
Tema 7. Conjuntos.
Tema 8. Estructuras Auto-Referenciadas.
Tema 9. Pilas.
Tema 10. Colas.
Tema 11. Listas Enlazadas.
Tema 12. Árboles.
Prácticas
Las prácticas se realizan en aula de informática Sesiones 1 y 2.- Puesta en práctica mediante ejemplos de los conceptos desarrollados en la UD II de clase. Sesiones 3 a 8.- Puesta en práctica mediante ejemplos de los conceptos desarrollados en el UD III de clase. Sesiones 9 a 14.- Puesta en práctica mediante ejemplos de los conceptos desarrollados en el UD IV de clase. Todas las prácticas se publican con antelación en el aula virtual de la Universidad. Al completar la sesión el profesor hace público los ejercicios resueltos también en el aula virtual.
La Universidad Politécnica de Cartagena considera como uno de sus principios básicos y objetivos fundamentales la promoción de la mejora continua de las condiciones de trabajo y estudio de toda la Comunidad Universitaria. Este compromiso con la prevención y las responsabilidades que se derivan atañe a todos los niveles que integran la Universidad: órganos de gobierno, equipo de dirección, personal docente e investigador, personal de administración y servicios y estudiantes. El Servicio de Prevención de Riesgos Laborales de la UPCT ha elaborado un "Manual de acogida al estudiante en materia de prevención de riesgos" que puedes encontrar en el Aula Virtual, y en el que encontraras instrucciones y recomendaciones acerca de cómo actuar de forma correcta, desde el punto de vista de la prevención (seguridad, ergonomía, etc.), cuando desarrolles cualquier tipo de actividad en la Universidad. También encontrarás recomendaciones sobre cómo proceder en caso de emergencia o que se produzca algún incidente. En especial, cuando realices prácticas docentes en laboratorios, talleres o trabajo de campo, debes seguir todas las instrucciones del profesorado, que es la persona responsable de tu seguridad y salud durante su realización. Consúltale todas las dudas que te surjan y no pongas en riesgo tu seguridad ni la de tus compañeros.
UD I. The Software Development Process
1.1. Software Engineering as a discipline
1.2. Software Quality
1.3. Life cycles for developing software
1.4. The UML modeling language
UD II. Object-Oriented Software Development
2.1. Classes, objects, state and behaviour
2.1. Inheritance and Interfaces: Polimorphism
2.1. Generic Types and Enumerates
2.2. Object-Oriented Design Patterns for Software Development
UD III. Advanced Aspects of Object Oriented Programming
3.1. The Decorator pattern for implementing I/O.
3.2. Archive types and data organization.
3.3. Text and binary I/O.
3.4. Random Access Files.
3.5. Objects Serialization.
4.1. Frameworks are reusable design units.
4.2. Frameworks for implementing GUIs.
4.3. Design elements in a framework for GUI implementation.
4.4. Event handling.
4.5. Layouts of design.
5.1 Relational Data Bases
5.2 Fundamental of Data Bases.
5.3 Entity-Relationship model.
5.4 Relational Model.
5.5 SQL language.
UD IV. Collections.
6.1 Sets.
6.2 Auto-referenced structures.
6.3 Stacks.
6.4 Queues.
6.5 Linked lists.
6.6 Trees.
Clase en aula convencional: teoría, problemas, casos prácticos, seminarios, etc
Exposición, por parte del profesor de la asignatura, del temario de la asignatura. Punto de partida para la realización del resto de actividades de formación que permitirán al alumno ampliar su conocimiento.
Resultados de aprendizaje vinculados a esta actividad:
Describir los objetivos del desarrollo de software.
Identificar los aspectos del desarrollo que tienen que ver con la calidad del software.
Describir los distintos modelos de ciclos de desarrollo de software.
Enunciar las propiedades fundamentales de las estructuras de datos más habituales en el desarrollo de software incluyendo, conjuntos, listas, pilas, colas y árboles.
Competencias vinculadas a esta actividad: [CG3], [ST6], [ST1].
Clases en las que se resuelven cuestiones prácticas y dudas sobre el caso de estudio evaluable.
Resultados de aprendizaje:
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Seleccionar la estructura de datos que mejor se adapte en la resolución de un problema software.
Desarrollar programas de ordenador cumpliendo atributos de calidad a partir de las estructuras de datos seleccionadas.
Competencias vinculadas: [TR5] y [CG9].
38
100
Clase en laboratorio: prácticas
Realización de ejercicios de programación durante sesiones de prácticas, que tendrán un grado de dificultad superior a los ejercicios resueltos en clase de teoría.
Resultados de aprendizaje vinculados a esta actividad:
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Emplear los mecanismos habituales en el uso de frameworks en el desarrollo de interfaces gráficas de usuario.
Diseñar sistemas informáticos utilizando elementos reusables de diseño (patrones).
Seleccionar la estructura de datos que mejor se adapte en la resolución de un problema software.
Desarrollar programas de ordenador cumpliendo atributos de calidad a partir de las estructuras de datos seleccionadas.
Competencias vinculadas a esta actividad: [CG9]
0
100
Clase en campo o aula abierta (visitas técnicas, conferencias, etc.). En general, actividades que requieren de unos recursos o de una planificación especiales
Realización de ejercicios de programación durante sesiones de prácticas, que tendrán un grado de dificultad superior a los ejercicios resueltos en clase de teoría.
Resultados de aprendizaje vinculados a esta actividad:
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Emplear los mecanismos habituales en el uso de frameworks en el desarrollo de interfaces gráficas de usuario.
Diseñar sistemas informáticos utilizando elementos reusables de diseño (patrones).
Seleccionar la estructura de datos que mejor se adapte en la resolución de un problema software.
Desarrollar programas de ordenador cumpliendo atributos de calidad a partir de las estructuras de datos seleccionadas.
Competencias vinculadas a esta actividad: [CG9]
No se realizan seminarios ni actividades similares.
0
100
Clase en aula de informática: prácticas
10 sesiones prácticas de bases de datos y de programación en C en aula de informática.
19
100
Actividades de evaluación (sistema de evaluación continua)
Tiempo dedicado a realización de pruebas de examen y posible entrevista para defensa de trabajo del cuatrimestre.
3
100
Actividades de evaluación (sistema de evaluación final)
Tiempo dedicado a la realización de las pruebas finales
3
100
Tutorías
Tutorías individualizadas o en grupo tanto presencialmente como a distancia.
0
50
Trabajo del estudiante: estudio o realización de trabajos individuales o en grupo
Tiempo dedicado a implementar el caso de estudio y las entregas semanales que proponga el profesor a lo largo del cuatrimestre.
Resultados de aprendizaje vinculados a esta actividad:
Emplear notaciones estándar para la representación del diseño software.
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Emplear los mecanismos habituales en el uso de frameworks en el desarrollo de interfaces gráficas de usuario.
Las competencias vinculadas con esta actividad son: [CG9] y [TR5]
Horas de estudio para aprender los contenidos de la asignatura. Estudio personal o en grupo, a criterio del alumno.
Resultados de aprendizaje vinculados a esta actividad:
Aplicar técnicas avanzadas programación orientada a objetos y aplicarlas utilizando un lenguaje de programación.
Emplear los mecanismos habituales en el uso de frameworks en el desarrollo de interfaces gráficas de usuario.
Diseñar sistemas informáticos utilizando elementos reusables de diseño (patrones).
Competencias vinculadas a esta actividad: [TR5] y [CG9]
117
0
Exámenes escritos y/u orales (evaluación de contenidos teóricos, aplicados y/o prácticas de laboratorio)
Dos exámenes parciales. El primero (35%) incluyendo en contenido hasta Bases de Datos, inclusive. El segundo (35%) el resto de materia. Cada examen constará de cuestiones teórico-prácticas y de problemas. Los parciales deben superarse con al menos un 4 sobre 10 para superar la asignatura.
70 %
Entregables de ejercicios y/o prácticas
Realización de evaluaciones sobre el desarrollo de las prácticas.
Esta evaluación debe superarse con al menos un 3 sobre 10 para aprobar la asignatura. No se conserva nota de evaluación correspondiente a otros cursos.
30 %
Trabajo práctico de laboratorio
Realización de prueba en aula de informática.
Esta evaluación debe superarse con al menos un 3 sobre 10 para aprobar la asignatura. No se conserva nota de evaluación correspondiente a otros cursos.
30 %
Exámenes escritos y/u orales (evaluación de contenidos teóricos, aplicados y/o prácticas de laboratorio)
El examen final escrito se estructura en dos partes:
- Parte I correspondiente en contenidos a la primera prueba parcial y que se evalúa con hasta 3,5 puntos incluyendo cuestiones teórico-prácticas y problemas. Nota mínima: 4 puntos sobre 10.
- Parte II correspondiente en contenidos a la segunda prueba parcial y que se evalúa con hasta 3,5 puntos incluyendo cuestiones teórico-prácticas y problemas. Nota mínima: 4 puntos sobre 10.
El estudiante se debe presentar en la convocatoria oficial a la parte que no haya superado con la nota mínima correspondiente durante el cuatrimestre. No se conserva nota de evaluación correspondiente a otros cursos.
70 %
El estudiante que no ha realizado cualquiera de las actividades de evaluación desarrolladas durante el cuatrimestre puede superar la asignatura sin necesidad de solicitar evaluación global dado que se han considerado mecanismos para ser evaluado de todas las actividades formativas de la asignatura en una única prueba.
Autor: Lewis, John
Título: Estructura de datos con Java diseño de estructuras y algoritmos
Editorial: Pearson
Fecha Publicación: 2006
ISBN: 9788420550343
Autor: Lewis, John
Título: Java Software Structures designing and using data structures
Editorial: Addison Wesley
Fecha Publicación: 2013
ISBN: 9780133250121
Autor: Muñoz Caro, Camelia
Título: Introducción a la programación con orientación a objetos
Editorial: Prentice Hall,
Fecha Publicación: 2002
ISBN: 9788420534404
Autor: Miles, Russ
Título: Learning UML 2.0
Editorial: O'Reilly,
Fecha Publicación: 2006
ISBN: 0596009828
Autor: Deitel, H.M.
Título: Java how to program
Editorial: Prentice Hall
Fecha Publicación: 2010
ISBN: 9780136053064
Autor: Sommerville, Ian
Título: Ingeniería de software
Editorial: Pearson Educación
Fecha Publicación: 2011
ISBN: 9786073206037
Autor: Sommerville, Ian
Título: Software engineering
Editorial: Addison-Wesley,
Fecha Publicación: 2007
ISBN: 0321313798
Autor: Deitel, Paul .J.
Título: Java how to program
Editorial: Deitel,
Fecha Publicación: 2010
ISBN: 9780135101179
Autor: Schmuller, Joseph
Título: Aprendiendo UML en 24 horas
Editorial: Pearson Educación
Fecha Publicación: 2000
ISBN: 968444463
Autor: Britton, Carol
Título: A student guide to object-oriented development /
Editorial: Elsevier Butterworth-Heinemann,
Fecha Publicación: 2005
ISBN: 0080542042|