Última revisión realizada: 07/07/2021
Denominación de la asignatura |
Plataformas de Desarrollo de Software |
Postgrado al que pertenece |
Máster Universitario en Ingeniería del Software y Sistemas Informáticos |
Materia a la que pertenece |
Ingeniería de Software | Créditos ECTS |
6 |
Cuatrimestre en el que se imparte |
Primer cuatrimestre |
Carácter de la asignatura | Obligatoria |
El continuo avance en las tecnologías hardware y software hace que cada día vayan apareciendo nuevos tipos de dispositivos y paradigmas de computación software diferentes para dar solución a muchos problemas en las áreas de ciencias, salud, ingeniería y administración de negocios, entre otras.
Esto provoca un aumento en la variedad de los tipos de aplicaciones software que se pueden desarrollar en cada caso, desde aplicaciones de escritorio tradicionales para los ordenadores personales y aplicaciones para la web hasta, por ejemplo, las aplicaciones para los móviles de última generación o smartphones y las recientes aplicaciones para la computación en la nube o cloud computing.
El ingeniero de software debe conocer, entonces, las principales diferencias en el desarrollo de esta gran variedad de aplicaciones, tanto respecto a los lenguajes de programación en las que se programan cada una de ellas como respecto a las diferentes plataformas donde son desarrolladas, lo que es el principal objetivo de esta asignatura.
Por lo tanto, durante esta asignatura el estudiante conocerá varias plataformas desarrollo software, así como también varios entornos integrados de desarrollo (conocidos como IDE) para desarrollar distintos tipos de aplicaciones, de escritorio, móviles y para la nube.
El propósito de esta asignatura es, por tanto, que el estudiante adquiera soltura en el uso de las diferentes plataformas, conociendo sus principales características a nivel teórico y manejándolas a nivel práctico a través de varias actividades donde deberá manejarlas para realizar distintos tipos de aplicaciones.
Competencias básicas
Competencias generales
Competencias específicas
Competencias transversales
Tema 1. Introducción al desarrollo de aplicaciones
Aplicaciones de escritorio
Lenguaje de programación
Entornos de desarrollo integrado
Aplicaciones web
Aplicaciones móviles
Aplicaciones en la nube
Tema 2. Desarrollo de aplicaciones Java
Entornos de desarrollo integrados para Java
Principales IDE para Java
Introducción a la plataforma de desarrollo Eclipse
Introducción a la plataforma de desarrollo NetBeans
Tema 3. La interfaz gráfica en Java
Modelo Vista Controlador para las interfaces gráficas de usuario
Diseñar una interfaz gráfica en Eclipse
Diseñar una interfaz gráfica en NetBeans
Tema 4. Depuración y pruebas en Java
Pruebas y depuración de programas en Java
Depuración en Eclipse
Depuración en NetBeans
Tema 5. Desarrollo de aplicaciones en .NET
Net Framework
Componentes de la plataforma de desarrollo .NET
Visual Studio .NET
Tema 6. La interfaz gráfica en la plataforma .NET
Herramientas de .NET para GUI
La GUI con Windows Presentation Foundation
Depurar y compilar una aplicación de WPF
Tema 7. Programación para redes .NET
Introducción a la programación para redes en .NET
Peticiones y respuestas en .NET
Uso de protocolos de aplicación en .NET
Seguridad en la programación para redes en .NET
Tema 8. Entornos de desarrollo de aplicaciones móviles
Aplicaciones móviles
Aplicaciones móviles Android
Pasos para el desarrollo en Android
El IDE Android Studio
Tema 9. Desarrollo de aplicaciones Android Studio
Instalar e iniciar Android Studio
Ejecución de una aplicación Android
Desarrollo de la interfaz gráfica en Android Studio
Iniciando actividades en Android Studio
Tema 10.Depuración y publicación de aplicaciones Android
Depuración de una aplicación en Android Studio
Memorizar aplicaciones en Android Studio
Publicación de una aplicación en Google Play
Tema 11. Desarrollo de aplicaciones para la nube
Cloud computing
Niveles de cloud: SaaS, PaaS, IaaS
Principales plataformas de desarrollo en la nube
Referencias bibliográficas
Tema 12. Introducción a Google Cloud Platform
Conceptos básicos de Google Cloud Platform
Servicios de Google Cloud Platform
Herramientas de Google Cloud Platform
Las actividades formativas de la asignatura se han elaborado con el objetivo de adaptar el proceso de aprendizaje a las diferentes capacidades, necesidades e intereses de los alumnos.
Las actividades formativas de esta asignatura son las siguientes:
En la programación semanal puedes consultar cuáles son las actividades concretas que tienes que realizar en esta asignatura.
Estas actividades formativas prácticas se completan, por supuesto, con estas otras:
Las horas de dedicación a cada actividad se detallan en la siguiente tabla:
ACTIVIDADES FORMATIVAS |
HORAS | %PRESENCIAL |
Sesiones presenciales virtuales | 15 |
100% |
Recursos didácticos audiovisuales | 6 |
0% |
Estudio del material básico | 60 |
0% |
Lectura del material complementario | 45 |
0% |
Trabajos, casos prácticos | 17 |
0% |
Prácticas de laboratorio | 8 |
50% |
Tutorías | 16 |
5% |
Trabajo colaborativo | 7 |
0% |
Test de autoevaluación | 4 |
0% |
Examen final presencial | 2 |
100% |
Total |
180 |
Para la correcta participación de los alumnos en las diferentes actividades propuestas en la asignatura se recomienda disponer de un ordenador con las siguientes especificaciones mínimas recomendadas:
Bibliografía básica
Los textos necesarios para el estudio de la asignatura están disponibles en formato digital para consulta, descarga e impresión en el aula virtual.
Ceballos, S. F. J. (2013). Enciclopedia de Microsoft Visual C#: interfaces gráficas y aplicaciones para Internet con Windows Forms y ASP.NET (4a. ed.). RA-MA Editorial.
ONTSI. (2012). Cloud Computing: Retos y oportunidades. Observatorio Nacional de las Telecomunicaciones y de la SI. Recuperado de http://www.ontsi.red.es/ontsi/es/estudios-informes/cloud-computing-retos-y-oportunidades
Robledo, D. (2017). Desarrollo de aplicaciones para android I. Ministerio de Educación de España.
Sánchez, A. J., y Fernández, M. B. (2009). Programación en Java (3a. ed.). McGraw-Hill España.
Bibliografía complementaria
De la Torre, C., y Carmon, D. (2013). NET Technology Guide for Business Applications. Microsoft Press. Recuperado de: https://mva.microsoft.com/ebooks/
Doar, M. B. (2008). Practical Development Environments. O’Reilly Media.
INTECO-CERT. (2011). Riesgos y amenazas en Cloud Computing. Instituto Nacional de Tecnologías de la Comunicación. Recuperado de: https://www.incibe.es/extfrontinteco/img/File/intecocert/EstudiosInformes/cert_inf_riesgos_y_amenazas_en_cloud_computing.pdf.
Prieto, N. y Cassanova, A. (2016). Empezar a programar usando Java (3a. ed.). Editorial de la Universidad Politécnica de Valencia.
Zamora, V. (2014). Estudio de Cloud Computing y su interoperabilidad (Proyecto Final de Carrera). Universidad Carlos III de Madrid. Departamento de informática, Madrid. Recuperado de: http://hdl.handle.net/10016/22696.
El sistema de calificación se basa en la siguiente escala numérica:
0 - 4, 9 |
Suspenso |
(SS) |
5,0 - 6,9 |
Aprobado |
(AP) |
7,0 - 8,9 |
Notable |
(NT) |
9,0 - 10 |
Sobresaliente |
(SB) |
La calificación se compone de dos partes principales:
El examen se realiza al final del cuatrimestre y es de carácter PRESENCIAL y OBLIGATORIO. Supone el 60% de la calificación final y para que la nota obtenida en este examen se sume a la nota final, es obligatorio APROBARLO.
La evaluación continua supone el 40% de la calificación final. Este 40% de la nota final se compone de las calificaciones obtenidas en las diferentes actividades formativas llevadas a cabo durante el cuatrimestre.
Ten en cuenta que la suma de las puntuaciones de las actividades de la evaluación continua permite que realices las que prefieras hasta conseguir el máximo puntuable mencionado en la programación semanal. En ella se detalla la calificación máxima de cada actividad o evento concreto puntuables.
SISTEMA DE EVALUACIÓN |
PONDERACIÓN |
PONDERACIÓN |
Participación del estudiante |
0% |
10% |
Trabajos, proyectos, laboratorios y casos |
20% |
30% |
Test de autoevaluación |
0% |
10% |
Examen final presencial |
60% |
60% |
Miguel Ángel Barcelona Liédana
Formación: Ingeniero en Informática (Universidad de Zaragoza, 2001) y Doctor en Ingeniería y Tecnología del Software (Universidad de Sevilla, 2017).
Experiencia: En el Instituto Tecnológico de Aragón (ITAINNOVA) ha cubierto diversos roles como: Técnico Investigador en Ingeniería del Software (3 años); Responsable de Área y miembro del Equipo de Dirección (4,5 años); Responsable de Línea Tecnológica (4,5 años); Responsable de Departamento (2,2 años); Técnico (5 años). Adicionalmente cuenta con experiencia en el ámbito privado en organizaciones como everis NTTData, Teltronic e Instrumentación y Componentes.
Líneas de investigación: Ha desarrollado su carrera investigadora y su tesis doctoral en el ámbito de la Ingeniería dirigida por modelos y la definición de procesos industriales dentro del grupo de Ingeniería Web y Testing Temprano (IWT2) de la Universidad de Sevilla. Sus principales intereses se centran en la automatización del desarrollo, modernización y testeo de software, mediante la ingeniería del software dirigida por modelos y su aplicación en la industria.
Laura García Borgoñón
Formación: Ingeniera en Informática por Universidad de Zaragoza en 2002 y Doctora en Ingeniería y Tecnología del Software por la Universidad de Sevilla en 2016.
Experiencia: En el Instituto Tecnológico de Aragón (ITAINNOVA) ha cubierto diversos roles como Consultora en Calidad del Software, Técnico Investigador en Ingeniería del Software, Responsable de Línea de Investigación de MDE, y Técnico I+D en BigData y Sistemas Cognitivos. Adicionalmente ha participado como investigadora contratada en un proyecto del Plan nacional en el grupo IWT2 de la Universidad de Sevilla.
Líneas de investigación: Ha desarrollado su carrera investigadora y su tesis doctoral en el ámbito de la Ingeniería dirigida por modelos y la definición de procesos industriales dentro del grupo de Ingeniería Web y Testing Temprano (IWT2) de la Universidad de Sevilla. Sus principales intereses se centran en la ingeniería del software y su automatización, técnicas y modelos de testing de software, la ingeniería del software dirigida por modelos y su aplicación en la industria.
Obviamente, al tratarse de formación on-line puedes organizar tu tiempo de estudio como desees, siempre y cuando vayas cumpliendo las fechas de entrega de actividades, trabajos y exámenes. Nosotros, para ayudarte, te proponemos los siguientes pasos:
Ten en cuenta estos consejos…
|