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

Presentación

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

Competencias básicas

  • CB6. Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.
  • CB7. Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.
  • CB8. Que los estudiantes sean capaces de integrar conocimientos y enfrentarse a la complejidad de formular juicios a partir de una información que, siendo incompleta o limitada, incluya reflexiones sobre las responsabilidades sociales y éticas vinculadas a la aplicación de sus conocimientos y juicios.
  • CB9. Que los estudiantes sepan comunicar sus conclusiones y los conocimientos y razones últimas que las sustentan a públicos especializados y no especializados de un modo claro y sin ambigüedades.
  • CB10. Que los estudiantes posean las habilidades de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida autodirigido o autónomo.

Competencias generales

  • CG5. Capacidad para la puesta en marcha, dirección y gestión de procesos de diseño y desarrollo de sistemas informáticos, con garantía de la seguridad para las personas y bienes, la calidad final de los productos y su homologación.

Competencias específicas

  • CE1. Capacidad para modelar, diseñar, definir la arquitectura, implantar, gestionar, operar, administrar y mantener aplicaciones, sistemas, servicios y contenidos informáticos.
  • CE2. Capacidad para utilizar y desarrollar metodologías, métodos, técnicas, programas de uso específico, normas y estándares de Ingeniería de Software.
  • CE3. Capacidad para analizar las necesidades de información que se plantean en un entorno y llevar a cabo en todas sus etapas el proceso de construcción de un sistema de información.
  • CE4. Capacidad para crear y diseñar sistemas software que resuelvan problemas del mundo real.
  • CE5. Capacidad para evaluar y utilizar entornos de Ingeniería de Software avanzados, métodos de diseño, plataformas de desarrollo y lenguajes de programación.
  • CE11. Capacidad para conceptualizar, diseñar, desarrollar y evaluar la interacción persona-ordenador de productos, sistemas, aplicaciones y servicios informáticos usables, accesibles y adaptables.
  • CE15. Conocer, comprender, seleccionar y utilizar los lenguajes, protocolos y tecnologías estándares así como las plataformas de desarrollo tanto comerciales como de dominio público.

Competencias transversales

  • CT1.Analizar de forma reflexiva y crítica las cuestiones más relevantes de la sociedad actual para una toma de decisiones coherente.
  • CT2. Identificar las nuevas tecnologías como herramientas didácticas para el intercambio comunicacional en el desarrollo de procesos de indagación y de aprendizaje grupal.
  • CT3. Aplicar los conocimientos y capacidades aportados por los estudios a casos reales y en un entorno de grupos de trabajo en empresas u organizaciones.
  • CT4. Adquirir la capacidad de trabajo independiente, impulsando la organización y favoreciendo el aprendizaje autónomo.

Contenidos

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 Plataform
Conceptos básicos de Google Cloud Plataform
Servicios de Google Cloud Plataform
Herramientas de Google Cloud Plataform

Metodología

Metodología

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:

  • Trabajos. Se trata de actividades de diferentes tipos: reflexión, análisis de casos, prácticas, etc. Además de análisis de textos relacionados con diferentes temas de la asignatura.
  • Participación en eventos. Son eventos programados todas las semanas del cuatrimestre: sesiones presenciales virtuales, foros de debate, test.
  • Laboratorios. Actividad práctica que se realiza en tiempo real e interactuando con otros alumnos. En el laboratorio los estudiantes tendrán que desarrollar los ejercicios propuestos en un entorno de simulación online. Los estudiantes contarán en todo momento con el apoyo de un tutor de laboratorio, que ayudará al alumno a desarrollar su actividad. El tutor de laboratorio podrá asignar grupos de alumnos para que, de forma colaborativa, alcancen los resultados solicitados. Este tipo de actividad posee un peso considerable en la evaluación continua del alumno, por lo que, a pesar de no ser obligatoria su realización, se recomienda firmemente la participación en los mismos.

En la programación semanal puedes consultar cuáles son las actividades concretas que tienes que realizar en esta asignatura.

Descarga el pdf de la programación

Estas actividades formativas prácticas se completan, por supuesto, con estas otras:

  • Estudio personal
  • Tutorías. Las tutorías se pueden articular a través de diversas herramientas y medios. Durante el desarrollo de la asignatura, el profesor programa tutorías en días concretos para la resolución de dudas de índole estrictamente académico a través de las denominadas “sesiones de consultas”. Como complemento de estas sesiones se dispone también del foro “Pregúntale al profesor de la asignatura” a través del cual se articulan algunas preguntas de alumnos y las correspondientes respuestas en el que se tratan aspectos generales de la asignatura. Por la propia naturaleza de los medios de comunicación empleados, no existen horarios a los que deba ajustarse el alumno.
  • Examen final presencial

Las horas de dedicación a cada actividad se detallan en la siguiente tabla:

ACTIVIDADES FORMATIVAS
HORAS
%PRESENCIAL
Sesiones presenciales virtuales
15
100%
Lecciones magistrales
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
         

 

Puedes personalizar tu plan de trabajo seleccionando aquel tipo de actividad formativa que se ajuste mejor a tu perfil. El profesor-tutor te ayudará y aconsejará en el proceso de elaboración de tu plan de trabajo. Y siempre estará disponible para orientarte durante el curso.

Recomendaciones técnicas

Metodología

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:

  • 4 GB de RAM
  • Conexión a Internet superior a 6 Mbit/s
  • Cámara web
  • Micrófono
  • Altavoces o auriculares
  • Sistema operativo Windows o Mac OS (algunas actividades pueden presentar dificultades sobre Linux. En esta circunstancia se recomienda consultar con el profesor de la asignatura)
  • Acceso de administrador al sistema (es necesario la instalación de programas, emuladores, compiladores…)
  • Navegador web Netscape, Chrome, Safari o Firefox actualizado (versiones no actualizadas pueden presentar problemas funcionales y/o de seguridad)

Bibliografía

Bibliografía básica

Recuerda que la bibliografía básica es imprescindible para el estudio de la asignatura. Cuando se indica que no está disponible en el aula virtual, tendrás que obtenerla por otros medios: librería UNIR, biblioteca… 

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.


evaluación

Evaluación y calificación

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:

calificación

El examen se realiza al final del cuatrimestre y es de carácter PRESENCIAL y OBLIGATORIO. Supone el 60% de la calificación final (6 puntos sobre 10) y para que la nota obtenida en este examen se sume a la nota final, es obligatorio APROBARLO (es decir, obtener 3 puntos de los 6 totales del examen).

La evaluación continua supone el 40% de la calificación final (es decir, 4 puntos de los 10 máximos). 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 es de 15 puntos. Así, puedes hacer las que prefieras hasta conseguir un máximo de 10 puntos (que es la calificación máxima que se puede obtener en la evaluación continua). En la programación semanal de la asignatura, se detalla la calificación máxima de cada actividad o evento concreto puntuables.

SISTEMA DE EVALUACIÓN

PONDERACIÓN
MIN

PONDERACIÓN
MAX

Participación del estudiante (sesiones, foros)

0%

10%

Trabajos, proyectos, laboratorios y casos

20%

30%

Test de autoevaluación

0%

10%

Examen final presencial

60%

60%

 

Ten en cuenta…
Si quieres presentarte solo al examen final, tendrás que obtener una calificación de 5 puntos sobre 6 para aprobar la asignatura.

Profesorado

Nadia Gámez Gómez

Formación Doctora en Informática por la Universidad de Málaga, donde también cursó el programa de doctorado en Ingeniería del Software e Inteligencia Artificial y el grado de Ingeniería en Informática. El Doctorado fue calificado como Sobresaliente cum Laude y tiene la Mención de Doctorado Europeo/Internacional, además la tesis recibió el premio extraordinario de doctorado del curso 2011/2012 de la Escuela Técnica Superior en Ingeniería Informática de la Universidad de Málaga. Está acreditada por la ANECA como Profesor Contratado Doctor.

Experiencia Programadora junior en un grupo de investigación de Neuromedicina en la Universidad del Estado de Nueva York (State University of New York, SUNY) y continuó haciendo el mismo desarrollo para el mismo grupo de investigación en la Universidad de Málaga (UMA). Investigador técnico trabajando en diversos Proyectos Europeos por la UMA. Post-doctorando asociada al mismo grupo de Investigación trabajando para diversos Proyectos Europeos, Nacionales y Regionales. Actualmente es Profesora Adjunta de la UNIR asociada como investigadora al Instituto de Investigación iTED del Vicerrectorado de Transferencia y Tecnología.

Líneas de investigación Sus principales líneas de investigación se han enfocado en el campo de la Ingeniería y el Desarrollo del Software. Más concretamente en el Desarrollo de Software Basado en Componentes y Aspectos y en Líneas de Producto Software aplicados para el software de Ambientes Inteligentes y de Internet de las Cosas.

 

Luis Pedraza Gomara

Formación: Doctor en Automática y Robótica por la Universidad Politécnica de Madrid. Máster en Formación del Profesorado de Educación Secundaria por la Universidad Internacional de La Rioja. Máster en Economía Digital e Industrias Creativas por la Escuela de Organización Industrial. Ingeniero Industrial especializado en Automática y Electrónica por la Universidad Politécnica de Madrid.

Experiencia: Ha participado en diferentes proyectos nacionales e internacionales relacionados con la automatización industrial, los robots caminantes y los robots móviles inteligentes, tanto en el Instituto de Automática Industrial del CSIC, como en la División de Ingeniería de Sistemas y Automática de la Universidad Politécnica de Madrid. Tras la finalización de sus Tesis Doctoral que obtuvo Premio Extraordinario de la Universidad Politécnica de Madrid, desempeñó labores docentes en la Universidad Carlos III de Madrid en las áreas de visión por computador, automatización, y control inteligente. También ha trabajado como ingeniero en la startup tecnológica Biicode. Actualmente desempeña tareas docentes, de gestión e investigación en UNIR.

Líneas de investigación: Su área de investigación principal se centra en la robótica móvil, y más concretamente en problemas de localización y modelización del entorno. También le interesan los problemas relacionados con la visualización de datos. Ha publicado artículos en revistas de investigación indexadas y ha participado en diferentes congresos nacionales e internacionales.


Orientaciones para el estudio

Orientación para el estudio

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:

  1. Desde el Campus virtual podrás acceder al aula virtual de cada asignatura en la que estés matriculado y, además, al aula virtual del Máster. Aquí podrás consultar la documentación disponible sobre cómo se utilizan las herramientas del aula virtual y sobre cómo se organiza una asignatura en la UNIR y también podrás organizar tu plan de trabajo personal con tu profesor-tutor.
  2. Observa la programación semanal. Allí te indicamos qué parte del temario debes trabajar cada semana.
  3. Ya sabes qué trabajo tienes que hacer durante la semana. Accede ahora a la sección Temas del aula virtual. Allí encontrarás el material teórico y práctico del tema correspondiente a esa semana.
  4. Comienza con la lectura de las Ideas clave del tema. Este resumen te ayudará a hacerte una idea del contenido más importante del tema y de cuáles son los aspectos fundamentales en los que te tendrás que fijar al estudiar el material básico. Lee siempre el primer apartado, ¿Cómo estudiar este tema?, porque allí te especificamos qué material tienes que estudiar. Consulta, además, las secciones del tema que contienen material complementario (Lo + recomendado y + Información).
  5. Dedica tiempo al trabajo práctico (sección Actividades y Test). En la programación semanal te detallamos cuáles son las actividades correspondientes a cada semana y qué calificación máxima puedes obtener con cada una de ellas.
  6. Te recomendamos que participes en los eventos del curso (sesiones presenciales virtuales, foros de debate…). Para conocer la fecha concreta de celebración de los eventos debes consultar las herramientas de comunicación del aula vitual. Tu profesor y tu profesor-tutor te informarán de las novedades de la asignatura.
En el aula virtual del Máster encontrarás siempre disponible la documentación donde te explicamos cómo se estructuran los temas y qué podrás encontrar en cada una de sus secciones: Ideas clave, Lo + recomendado, + Información, Actividades y Test.

Ten en cuenta estos consejos…

  • Sea cual sea tu plan de estudio, accede periódicamente al aula virtual, ya que de esta forma estarás al día de las novedades del curso y en contacto con tu profesor y con tu profesor tutor.
  • Recuerda que no estás solo: consulta todas tus dudas con tu profesor-tutor utilizando el correo electrónico. Si asistes a las sesiones presenciales virtuales también podrás preguntar al profesor sobre el contenido del tema. Además, siempre puedes consultar tus dudas sobre el temario en los foros que encontrarás en cada asignatura (Pregúntale al profesor).
  • ¡Participa! Siempre que te sea posible accede a los foros de debate y asiste a las sesiones presenciales virtuales. El intercambio de opiniones, materiales e ideas nos enriquece a todos.
  • Y ¡recuerda!, estás estudiando con metodología on line: tu esfuerzo y constancia son imprescindibles para conseguir buenos resultados. ¡No dejes todo para el último día!