Datos Identificativos 2022/23
Asignatura (*) Programación de Sistemas Código 614G01058
Titulación
Grao en Enxeñaría Informática
Descriptores Ciclo Periodo Curso Tipo Créditos
Grado 1º cuatrimestre
Cuarto Optativa 6
Idioma
Castellano
Inglés
Modalidad docente Híbrida
Prerrequisitos
Departamento Enxeñaría de Computadores
Coordinador/a
Vazquez Regueiro, Carlos
Correo electrónico
carlos.vazquez.regueiro@udc.es
Profesorado
Vazquez Regueiro, Carlos
Correo electrónico
carlos.vazquez.regueiro@udc.es
Web
Descripción general Programación de sistemas encaixados e dispositivos móbiles

Competencias del título
Código Competencias del título
A32 Capacidad de desarrollar procesadores específicos y sistemas empotrados, así como desarrollar y optimizar el software de dichos sistemas.
A34 Capacidad de diseñar e implementar software de sistemas y de comunicaciones.
B1 Capacidad de resolución de problemas
C6 Valorar críticamente el conocimiento, la tecnología y la información disponible para resolver los problemas con los que deben enfrentarse.
C7 Asumir como profesional y ciudadano la importancia del aprendizaje a lo largo de la vida.
C8 Valorar la importancia que tiene la investigación, la innovación y el desarrollo tecnológico en el avance socioeconómico y cultural de la sociedad.

Resultados de aprendizaje
Resultados de aprendizaje Competencias del título
Capacidad para desarrollar aplicaciones Android en dispositivos móviles, procesadores específicos y sistemas empotrados A32
A34
B1
C6
C7
C8
Capacidad de desarrollar aplicaciones Android con capacidad de comunicaciones e interacción A32
A34
B1
C6
C7
C8

Contenidos
Tema Subtema
1.1. Introducción a la Programación de Sistemas Introducción a la Programación de Sistemas
Presentación de la asignatura
1.2. Introducción a Android Historia y evolución
Arquitectura y características
Componentes principales
Manifiesto
1.3. Herramientas de desarrollo Instalación del SDK y Android Studio
Aplicación básica y estructura de una aplicación
Depuración y testing
Recursos de aplicaciones
2.1. Actividades, Fragmentos e Intents Actividades y ciclo de vida
Intents explícitos e implícitos
Paso de parámetros
Fragmentos estáticos y dinámicos
Comunicación entre fragmentos
2.2. Interfaz de usuario Layouts y Vistas
Eventos
Notificaciones
Menúes y Diálogos
Listas y Adaptadores
2.3. Trabajando en segundo plano Servicios locales y remotos
Broadcast Receivers
Hilos, tareas y mensajes
Jobs
AppWidgets
3.1. Arquitecturas de aplicaciones Tipos de arquitecturas
Distribución en capas
Intercambios
3.2. Persistencia de datos Preferencias
Ficheros internos y externos
Base de datos: SQL y ROOM
Proveedor de Contenidos
3.3. Interconexión Comunicaciones
Servicios de red avanzados
Servicios en la nube
4.1. Servicios del sistema y Sensores Servicios del sistema
Sensores
Localización
Mapas
4.2. Distribución Publicación
Permisos
Monetización y Publicidad
Optimización

Planificación
Metodologías / pruebas Competéncias Horas presenciales Horas no presenciales / trabajo autónomo Horas totales
Prácticas de laboratorio A32 A34 B1 C6 C7 15 45 60
Trabajos tutelados A32 A34 B1 C6 C7 C8 7 35 42
Sesión magistral A32 A34 20 25 45
 
Atención personalizada 3 0 3
 
(*)Los datos que aparecen en la tabla de planificación són de carácter orientativo, considerando la heterogeneidad de los alumnos

Metodologías
Metodologías Descripción
Prácticas de laboratorio Los alumnos desarrollarán prácticas en el laboratorio para el aprendizaje de la programación de dispositivos móviles con Android. Se plantearán una serie de prácticas siguiendo un guión básico inicial para que el alumno se familiarice con los conceptos y procedimientos básicos de la programación con Android (competencias A32 y A34).

También se promoverá la ampliación y mejora de las funcionalidades básicas de cada práctica propuesta (competencia C7) así como la discusión y la resolución de problemas (competencias B1 y C6).

Las prácticas constan de una parte inmediata que se entrega al acabar y otra diferida que se entrega antes de la siguiente clase de laboratorio.

Alguna práctica también puede consistir en la creación y presentación de un trabajo individual sobre algún aspecto relevante de la programación de dispositivos móviles.

Los alumnos a tiempo parcial podrían presentar todas las prácticas de forma no presencial.
Trabajos tutelados Se propondrán trabajos (aplicaciones) para que los alumnos profundicen en temas tratados en la asignatura (competencias A32 y A34) y explorar nuevos conocimientos (competencias C6 y C7).
Se valorará especialmente que la aplicación sea funcional y robusta (competencia B1) y que pueda contribuir a la mejora de la sociedad (competencia C8).

Cada trabajo se desarrollará por un número reducido de alumnos (típicamente entre 2 y 4), por lo que la coordinación y la metodología de trabajo en grupo es muy importante. También se pedirá un pequeño informe de seguimiento en las principales fases de desarrollo.

Las ideas y problemas se discutirán fundamentalmente durante las horas de tutoría de grupos reducidos.
Sesión magistral Exposición didáctica de los contenidos teóricos de la asignatura empleando diapositivas y otros recursos TIC.
También se expondrán algunas aplicaciones básicas para que los alumnos las puedan implementar en las prácticas de laboratorio.

Este tipo de sesiones está orientado a la adquisición de los conocimientos asociados a las competencias A32 y A34, y como guía para la adquisición autónoma de nuevos conocimientos y competencias (competencia C7). También se fomentará la discusión y la valoración crítica de las diferentes alternativas y enfoques en la resolución de problemas (competencias B1 y C6).
Algunas de las sesiones podrán estar guiadas por los propios alumnos.

Atención personalizada
Metodologías
Trabajos tutelados
Prácticas de laboratorio
Sesión magistral
Descripción
Sesión magistral: Atender y resolver dudas del alumnado en relación a la materia teórica expuesta en las clases.

Prácticas de laboratorio: Atender y resolver dudas del alumnado en relación a las prácticas propuestas o realizadas en el laboratorio.

Trabajos tutelados: Atender y resolver dudas del alumnado en relación a los trabajos tutelados propuestos.

Las tutorías se realizarán preferentemente por medios telemáticos.

Evaluación
Metodologías Competéncias Descripción Calificación
Trabajos tutelados A32 A34 B1 C6 C7 C8 Evaluación de los trabajos tutelados desarrollados por el alumno mediante pruebas mixtas.
Se incluyen diversos informes de seguimiento, el repositorio y el código fuente de la aplicación, la ficha de la app y la exposición del trabajo tutelado a través de un vídeo creado por los participantes.
40
Prácticas de laboratorio A32 A34 B1 C6 C7 Evaluación del trabajo realizado por el alumno en las prácticas de laboratorio.

De esta nota, 5/6 serán de las prácticas en si, mientras que un 1/6 (10% nota final) será por seguimiento continuado.
60
 
Observaciones evaluación

La asignatura se aprueba obteniendo al menos el 50% de la calificación.

Los alumnos a tiempo parcial podrían presentar todas las prácticas de forma no presencial.

Pero la asistencia a la prueba mixta y la defensa del trabajo tutelado es obligatoria, o bien de forma presencial o bien virtual por medios telemáticos.

En la convocatoria de Julio se podrá presentar o mejorar el trabajo tutelado y las prácticas de laboratorio.


Fuentes de información
Básica Wie Meng Lee (2012). Android 4 Desarrollo de aplicaciones. Wrox (Anaya Multimedia)
Erik Hellman (2013). Android Programming: Pushing the Limits. Wiley
Scott McCracken (2012). Android. Curso de desarrollo de aplicaciones. Inforbook
Jesús Tomás Gironés (2012). El gran libro de Android. Marcombo
Joseph Annuzzi, Lauren Darcey y Shane Conder (2015). Introduction to Android Application Development. Android Essentials. Addison-Wesley
Joan Ribas Lequerica (2014). Manual imprescindible de desarrollo de aplicaciones para Android. Anaya Multimedia
Reto Meier (2016). Professional Android. WRox

Complementária Lauren Darcey y Shane Conder (2012). Android Application development in 24 hours. SAMS
Joshua J. Drake , Zach Lanier , Collin Mulliner , Pau Oliva Fora, Stephen A. Ridley , Georg Wichersk (2014). Android Hacker's Handbook. Wiley
José Enrique Amaro Soriano (2012). Android. Programación de dispositivos móviles a través de ejemplos. Marcombo
Joan Ribas Lequerica (2012). Desarrollo de aplicaciones para Android. Anaya
Anders Goransson (2014). Efficient Android Threading: Asynchronous Processing Techniques for Android Applications. O'Reilly Media


Recomendaciones
Asignaturas que se recomienda haber cursado previamente
Sistemas Operativos/614G01016
Concurrencia y Paralelismo/614G01018

Asignaturas que se recomienda cursar simultáneamente
Sistemas Empotrados/614G01060

Asignaturas que continúan el temario

Otros comentarios


(*) La Guía Docente es el documento donde se visualiza la propuesta académica de la UDC. Este documento es público y no se puede modificar, salvo cosas excepcionales bajo la revisión del órgano competente de acuerdo a la normativa vigente que establece el proceso de elaboración de guías