Guía docente de la asignatura
(1905) TECNOLOGÍAS DE DESARROLLO DE SOFTWARE

Curso académico 2026/2027

  1. Identificación

    1. De la asignatura

      Curso Académico
      2026/2027
      Titulación
      GRADO EN INGENIERÍA INFORMÁTICA
      PROGRAMA ACADÉMICO DE SIMULTANEIDAD DE DOBLE TITULACIÓN CON ITINERARIO ESPECIFICO DE GRADO EN MATEMÁTICAS Y GRADO EN INGENIERÍA INFORMÁTICA
      Nombre de la asignatura
      TECNOLOGÍAS DE DESARROLLO DE SOFTWARE
      Código
      1905
      Curso
      TERCERO
      CUARTO
      Carácter
      OBLIGATORIA
      Número de grupos
      4
      Créditos ECTS
      6.0
      Estimación del volumen de trabajo
      150.0
      150.0
      Organización temporal
      1º Cuatrimestre
      1º Cuatrimestre
      Idiomas en que se imparte
      Español
      Curso Académico 2026/2027
      Titulación

      GRADO EN INGENIERÍA INFORMÁTICA,

      PROGRAMA ACADÉMICO DE SIMULTANEIDAD DE DOBLE TITULACIÓN CON ITINERARIO ESPECIFICO DE GRADO EN MATEMÁTICAS Y GRADO EN INGENIERÍA INFORMÁTICA

      Nombre de la asignatura TECNOLOGÍAS DE DESARROLLO DE SOFTWARE
      Código 1905
      Curso TERCERO CUARTO
      Carácter OBLIGATORIA
      Número de grupos 4
      Créditos ECTS 6.0
      Estimación del volumen de trabajo 150.0 150.0
      Organización temporal 1º Cuatrimestre 1º Cuatrimestre
      Idiomas en que se imparte Español
    2. Del profesorado: Equipo docente

      • BERMUDEZ RUIZ, FRANCISCO JAVIER Docente: GRUPO 2, GRUPO 3 Coordinación de los grupos: GRUPO 2, GRUPO 3 Coordinador de la asignatura

        Categoría

        PROFESOR COLABORADOR (LICENCIADO)

        Área

        LENGUAJES Y SISTEMAS INFORMÁTICOS

        Departamento

        INFORMÁTICA Y SISTEMAS

        Correo electrónico / Página web / Tutoría electrónica

        fjavier@um.es Tutoría electrónica: Sí

        Teléfono, horario y lugar de atención al alumnado

        Duración:
        A
        Día:
        Martes
        Horario:
        12:00-14:00
        Lugar:
        868888524, Facultad de Informática B1.2.038 (DESPACHO BERMUDEZ RUIZ, FRANCISCO JAVIER 2.16)
        Observaciones:
        No consta
      • CANOVAS SEGURA, BERNARDO Docente: GRUPO 2, GRUPO 3 Coordinación de los grupos:

        Categoría

        PROFESOR AYUDANTE DOCTOR

        Área

        LENGUAJES Y SISTEMAS INFORMÁTICOS

        Departamento

        INFORMÁTICA Y SISTEMAS

        Correo electrónico / Página web / Tutoría electrónica

        bernardocs@um.es Tutoría electrónica: No

        Teléfono, horario y lugar de atención al alumnado

      • DELGADO YARZA, PEDRO Docente: GRUPO 3 Coordinación de los grupos:

        Categoría

        PROFESOR SUST. POR REDUCCIÓN ACTIVIDAD DOCENTE PROFESOR TC

        Área

        LENGUAJES Y SISTEMAS INFORMÁTICOS

        Departamento

        INFORMÁTICA Y SISTEMAS

        Correo electrónico / Página web / Tutoría electrónica

        pedrody@um.es Tutoría electrónica: No

        Teléfono, horario y lugar de atención al alumnado

      • HOYOS BARCELO, JOSE RAMON Docente: GRUPO 1, GRUPO DTIE Coordinación de los grupos: GRUPO 1

        Categoría

        PROFESOR PERMANENTE LABORAL

        Área

        LENGUAJES Y SISTEMAS INFORMÁTICOS

        Departamento

        INFORMÁTICA Y SISTEMAS

        Correo electrónico / Página web / Tutoría electrónica

        jose.hoyos@um.es Tutoría electrónica: Sí

        Teléfono, horario y lugar de atención al alumnado

        Duración:
        C2
        Día:
        Jueves
        Horario:
        12:30-14:00
        Lugar:
        868884398, Facultad de Informática B1.2.024 (DESPACHO HOYOS BARCELO, JOSÉ RAMÓN 2.18)
        Observaciones:
        despacho 2.18
        Duración:
        C2
        Día:
        Jueves
        Horario:
        17:30-19:00
        Lugar:
        868884398, Facultad de Informática B1.2.024 (DESPACHO HOYOS BARCELO, JOSÉ RAMÓN 2.18)
        Observaciones:
        despacho 2.18
        Duración:
        C1
        Día:
        Martes
        Horario:
        12:00-13:30
        Lugar:
        868884398, Facultad de Informática B1.2.024
        Observaciones:
        despacho 2.18
        Duración:
        C1
        Día:
        Miércoles
        Horario:
        12:00-13:30
        Lugar:
        868884398, Facultad de Informática B1.2.024
        Observaciones:
        despacho 2.18
      • SANCHEZ CUADRADO, JESUS Docente: GRUPO 1, GRUPO DTIE Coordinación de los grupos:

        Categoría

        PROFESORES TITULARES DE UNIVERSIDAD

        Área

        LENGUAJES Y SISTEMAS INFORMÁTICOS

        Departamento

        INFORMÁTICA Y SISTEMAS

        Correo electrónico / Página web / Tutoría electrónica

        jesusc@um.es Tutoría electrónica: Sí

        Teléfono, horario y lugar de atención al alumnado

  2. Presentación

    Los objetivos principales son:

    1. Que los alumnos adquieran competencias básicas en la práctica del desarrollo de software destinadas a participar en la construcción de aplicaciones reales. Esta formación continuará en la asignatura "Procesos de Desarrollo de Software" del segundo cuatrimestre y de forma opcional en la Mención y Máster de "Ingeniería del Software.
    2. El objetivo anterior implica que los alumnos aprendan conceptos, técnicas y herramientas básicas en la construcción de software.
    3. Se utilizará el lenguaje Java para el desarrollo de un caso de estudio en el que se tendrán que utilizar todos los conocimientos aprendidos en las clases de teoría y prácticas: manejo de requisitos, modelado de software, programación funcional en Java, patrones GRASP, principios de diseño orientado a objetos y patrones de diseño, y arquitectura en capas, y persistencia de datos.
    4. En el desarrollo de la aplicación del caso de estudio, los alumnos deberán abordar la creación de interfaces de usuario, utilizarán Git para el control de versiones y Maven como herramienta de construcción del proyecto.
  3. Condiciones de acceso a la asignatura

    1. Incompatibilidades

      No constan

    2. Requisitos

      No constan

    3. Recomendaciones

      El alumno debería dominar los conceptos, técnicas y herramientas estudiados en la asignatura de "Programación Orientada a Objetos" impartida en el segundo curso, sería recomendable que tuviese esta asignatura aprobada.

  4. Competencias

    1. Competencias básicas

      No constan

    2. Competencias de la titulación

      • CGII1: Capacidad de análisis y síntesis.
      • CGII2: Capacidad de organización y planificación.
      • CGII6: Capacidad de gestión de la información.
      • CGII7: Resolución de problemas.
      • CGII8: Toma de decisiones.
      • CGII9: Trabajo en equipo.
      • CGII10: Trabajo en un equipo de carácter interdisciplinar.
      • CGII11: Trabajo en un contexto internacional.
      • CGII14: Razonamiento crítico.
      • CGII15: Compromiso ético.
      • CGII16: Aprendizaje autónomo.
      • CGII17: Adaptación a nuevas situaciones.
      • CGII18: Creatividad
      • CGII19: Liderazgo
      • CGII20: Conocimiento de otras culturas y costumbres.
      • CGII21: Iniciativa y espíritu emprendedor.
      • CGII22: Motivación por la calidad.
      • CGUM2: Comprender y expresarse en un idioma extranjero en su ámbito disciplinar, particularmente el inglés.
      • CGUM6: Capacidad para trabajar en equipo y para relacionarse con otras personas del mismo o distinto ámbito profesional.
      • CEII3: Capacidad para diseñar, desarrollar, evaluar y asegurar la accesibilidad, ergonomía, usabilidad y seguridad de los sistemas, servicios y aplicaciones informáticas, así como de la información que gestionan.
      • CEII5: Capacidad para concebir, desarrollar y mantener sistemas, servicios y aplicaciones informáticas empleando los métodos de la ingeniería del software como instrumento para el aseguramiento de su calidad.
      • CEII8: Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
      • CEII9: Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.
      • CR6: Conocimiento y aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y complejidad de los algoritmos propuestos.
      • CR7: Conocimiento, diseño y utilización de forma eficiente los tipos y estructuras de datos más adecuados a la resolución de un problema.
      • CR8: Capacidad para analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, eligiendo el paradigma y los lenguajes de programación más adecuados.
      • CR16: Conocimiento y aplicación de los principios, metodologías y ciclos de vida de la ingeniería de software.
      • CR17: Capacidad para diseñar y evaluar interfaces persona computador que garanticen la accesibilidad y usabilidad a los sistemas, servicios y aplicaciones informáticas.

    3. Competencias transversales y de materia

      • El alumno aprenderá conceptos, técnicas y herramientas que le ayudarán a construir aplicaciones de un modo sistemático
      • Aprender los patrones de diseño básicos para construcción de software OO: Creación, Estructurales y Comportamiento
      • Aplicar patrones de diseño en el diseño e implementación de una aplicación
      • Desarrollar componentes de interfaz grafica
      • Valorar el papel de los sistemas de control de versiones de código fuente en el desarrollo de software
      • Valorar el papel de herramientas de automatización de la construcción para proyectos software
      • Valorar el uso de técnicas de depuración de software

  5. Contenidos

    1. Teoría

      Tema 1: Introducción al Desarrollo de Software

      Ingeniería del Software: Definición, Contexto y Evolución

      Ciclo de vida del Desarrollo del Software (SDLC): Etapas y Modelos del SDLC

      Requisitos Software: Definición y tipos; Casos de uso e Historias de Usuario; Documento SRS

      Modelado del Software con UML: Diagramas de clase; Diagramas de Secuencia y Comunicación; Máquinas de Estado

      Tema 2: Principios básicos en construcción de software orientado a objetos

      Patrones GRASP: Experto, Creador y Controlador

      Arquitectura limpia

      Principio Separación Modelo-Vista (MVC)

      Principios SOLID

      Diseño por contrato (control de precondiciones, postcondiciones e invariantes)

      Principio de Inversión de Dependencias

      Tema 3: Conceptos en Programación Orientada a Objetos

      Clases anidadas en lenguajes orientados a objetos. Caso Java: estáticas e internas

      Parametrizar métodos con funciones. Caso Java: Expresiones lambda e interfaces funcionales

      Iteradores en lenguajes de programación. Streams en Java.

      Programación funcional en Java. Tipo Optional.

      Metaprogramación e Introspección: Reflexión en Java

      Tema 4: Representación de Datos

      Lenguajes de datos estructurados y semiestrucutrados

      Patrón Repositorio

      Patrón DAO

      Tema 5: Patrones de Diseño

      Patrones de creación: Factoría Abstracta, Builder, Método Factoría, Singleton

      Patrones estructurales: Adaptador, Composite, Decorador, Fachada, Proxy

      Patrones de comportamiento: Command, Iterador, Observer, Estado, Estrategia, Método Plantilla

      Tema 6: Talleres de ejercicios

      Taller de Historias de Usuario

      Taller de Modelado del Dominio

      Taller de Modelado UML

      Taller de Patrones GRASP

      Taller de Patrones de Diseño

    2. Prácticas

      • Práctica 1: Herramientas de Depuración

        Objetivo: Se revisaran algunas de las técnicas más comunes de depuración de software. Haciendo uso de Eclipse, se aprenderán a usar las herramientas de depuración del entorno.

      • Práctica 2: Control de versiones con Git

        Objetivos:

        • Conocer los distintos conceptos que subyacen a las herramientas de control de versiones: revisión, copia local, tag, branch, commit, checkout, merge, etc, y cómo se manejan en Git
        • Estudiar commands básicos de Git: clone, push, fetch, commit, push, merge, etc
        • Instalar un repositorio Git en Github.
      • Práctica 3: Construcción de proyectos con Maven

        Objetivos:

        • Aprender a gestionar un proyecto con Maven, la herramienta más utilizada para ese propósito.
        • Comprender las distintas etapas del ciclo de vida de un proyecto Maven
        • Aprender a manejar las dependencias a librerías y software externo al proyecto.
      • Práctica 4: Interfaces de usuario. Estructura/Layouts/Eventos

        Objetivos:

        El alumno aprenderá a construir Interfaces de Usuario sobre tecnologías en Java. El desarrollo de la interfaz se basará en la construcción de ventanas para una aplicación de escritorio.

        Relacionado con:
        • Tema 3: Conceptos en Programación Orientada a Objetos
      • Práctica 5: Arquitectura de la aplicación

        Objetivos:

        1. Aplicación del principio de arquitectura limpia
        2. Aplicar la arquitectura en 3 capas a la aplicación del caso práctico de la asignatura: Controlador y Repositorio
        3. Aplicar el patrón arquitectónico DAO
        Relacionado con:
        • Tema 2: Principios básicos en construcción de software orientado a objetos
        • Tema 3: Conceptos en Programación Orientada a Objetos
      • Práctica 6: Persistencia de Datos

        Objetivos:

        1. Aprender a implementar modelos de datos haciendo uso de lenguajes de datos
        2. Aprender a aplicar tecnologías para la persistencia de datos en Java
        Relacionado con:
        • Tema 2: Principios básicos en construcción de software orientado a objetos
        • Tema 3: Conceptos en Programación Orientada a Objetos
        • Tema 4: Representación de Datos

  6. Actividades Formativas

    Actividad Formativa Metodología Horas Presencialidad
    A1: Actividades con grupo grande de alumnos entre las que se encuentran la presentación en el aula de los conceptos propios de la materia mediante metodología expositiva con lecciones magistrales participativas y medios audiovisuales. También se contemplan en este grupo las actividades de evaluación teórico prácticas. 28.0 43.1
    A2: Actividades con grupo mediano en el aula de resolución de problemas, seminarios, charlas, ejercicios basados en el aprendizaje orientado a proyectos, estudios de casos, exposición y discusión de trabajos relativas al seguimiento individual y/o grupal de adquisición de las competencias. 2.0 12.5
    A3: Actividades con grupo pequeño en el laboratorio relacionadas con la componente práctica de las asignaturas, desarrollo de trabajos con equipo técnico especializado, desarrollo de programas, etc. 21.67 34.4
    A5: Estudio y trabajo autónomo orientado a la asimilación de contenidos, realización de problemas, ejercicios o redacción de informes técnicos o memorias descriptivas, desarrollo de proyectos o prácticas individuales o en 98.33 0.0
    Totales 150,00

  7. Horario de la asignatura

    https://www.um.es/web/estudios/grados/informatica/2026-27#horarios

  8. Sistemas de Evaluación

    Identificador Denominación del instrumento de evaluación Criterios de Valoración Ponderación
    IE1 Examen teórico-práctico. En este instrumento incluimos desde el tradicional examen escrito o tipo test hasta los exámenes basados en resolución de problemas, pasando por los de tipo mixto que incluyen cuestiones cortas o de desarrollo teórico junto con pequeños problemas. También se incluye aquí la consideración de la participación activa del alumno en clase, la entrega de ejercicios o realización de pequeños trabajos escritos y presentaciones.

    Examen de los contenidos del programa de teoría formado por cuestiones teórico-prácticas similares a las incluidas en los boletines de ejercicios que se entregan a los alumnos y se resuelven en clase. En el enunciado del examen se indica la puntuación de cada cuestión

    Se debe obtener un 5 para aprobar la parte de teoría

    La nota se mantiene para las siguientes convocatorias del curso en el caso de no aprobar la parte práctica (aplicable a convocatorias II y III).

    La calificación del IE1 es recuperable en las siguientes convocatorias siguiendo los mismos criterios que en la evaluación ordinaria.

    50.0
    IE2 Informe técnico. En este instrumento incluimos los resultados de actividades prácticas, o de laboratorio, junto con sus memorias descriptivas. Los resúmenes del estado del arte o memorias de investigación sobre temas concretos. Y la posibilidad de realizar entrevistas personales o presentaciones de los trabajos realizados también entran en esta categoría.

    Se evaluará mediante examen práctico realizado en ordenador (80% de la evaluación práctica) y mediante la realización de un proyecto entregable (20% de la evaluación práctica).

    La suma de ambas evaluaciones debe superar la calificación de 5.

    La realización del proyecto entregable no es obligatoria dado que se puede obtener una calificación igual o superior a 5 sin su entrega. La entrega del proyecto puede conllevar la realización de una entrevista que requiera defender por parte del alumnado el trabajo realizado.

    La nota se mantiene para las siguientes convocatorias del curso en el caso de no aprobar la parte práctica (aplicable a convocatorias II y III).

    La calificación del IE2 es recuperable en las siguientes convocatorias siguiendo los mismos criterios que en la evaluación ordinaria.

    50.0

  9. Fechas de exámenes

    https://www.um.es/web/estudios/grados/informatica/2026-27#examenes

  10. Resultados del Aprendizaje

    Objetivos Formativos

    · Aprender a modelar sistemas orientados a objetos con UML

    · Aprender a modelar requisitos funcionales con historias de usuario

    · Aprender programación funcional en Java

    · Conocer diferentes lenguajes de datos y aprender a persistir datos en Java

    · Valorar el papel que juegan los patrones de diseño como forma de reutilización de la experiencia

    · Aprender los patrones de diseño básicos para construcción de software orientado a objetos

    · Adquirir destreza en la identificación de los patrones aplicables a un determinado problema

    · Aplicar patrones de diseño en el diseño e implementación de una aplicación

    · Aplicar el principio de arquitectura limpia

    · Desarrollar componentes de interfaz gráfica

    · Valorar el papel de los sistemas de control de versiones de código fuente en el desarrollo de software

    · Conocer los modelos de gestión de código fuente y especialmente el modelo centralizado de mezcla de versiones

    · Organizar un repositorio de código fuente y utilizarlo en un proyecto de desarrollo de software en equipo

    · Conocer y utilizar herramientas de automatización de la construcción de software

    · Utilizar un sistema de gestión de incidencias en un proceso de desarrollo

    · Identificar errores comunes en el código (sintácticos, lógicos y de ejecución) mediante el análisis manual y automatizado.

    · Aplicar técnicas de depuración como el seguimiento de flujo de ejecución, impresión de trazas (logs) y uso de puntos de interrupción (breakpoints).

    · Utilizar herramientas de depuración integradas en entornos de desarrollo (IDEs)

    · Configurar y emplear depuradores interactivos (debuggers) para inspeccionar variables, controlar el flujo del programa y evaluar expresiones en tiempo de ejecución.

    · Analizar y resolver errores a través del uso de logs, trazas de pila (stack traces) y mensajes de error del sistema o framework.

  11. Bibliografía

  12. Observaciones

    NECESIDADES EDUCATIVAS ESPECIALES

    Aquellos estudiantes con discapacidad o necesidades educativas especiales podrán dirigirse al Servicio de Atención a la Diversidad y Voluntariado (ADYV - https://www.um.es/adyv) para recibir orientación sobre un mejor aprovechamiento de su proceso formativo y, en su caso, la adopción de medidas de equiparación y de mejora para la inclusión, en virtud de la Resolución Rectoral R-358/2016. El tratamiento de la información sobre este alumnado, en cumplimiento con la LOPD, es de estricta confidencialidad.

    EVALUACIÓN

    En el procedimiento de evaluación resultarán de aplicación el artículo 135.1.v) de los Estatutos de la Universidad de Murcia, el artículo 8.6 del Reglamento de Evaluación de Estudiantes (REVA) y la instrucción SG 18/2026 del secretario general de la Universidad de Murcia que interpreta estas normas, disponible en este enlace: https://sede.um.es/sede/documento/normativa/instruccion-del-secretario-general-sg-18-2026-sobre-la-interpretacion-y-aplicacion-del-art-135-1-v-estatutos-umu/24199.pdf

    Se recuerda asimismo que el artículo 22.1 del Reglamento de Evaluación de Estudiantes (REVA) estipula que "el o la estudiante que se valga de conductas fraudulentas, incluida la indebida atribución de identidad o autoría, o esté en posesión de medios o instrumentos que faciliten dichas conductas, obtendrá la calificación de cero en el procedimiento de evaluación y, en su caso, podrá ser objeto de sanción, previa apertura de expediente disciplinario".

    OBSERVACIONES DEL EQUIPO DOCENTE

    Los criterios para establecer la nota que aparecerá en el acta en cada convocatoria son los siguientes:

    - Si un alumno no se presenta al examen de teoría ni realiza ninguna entrega de prácticas, su calificación será "No Presentado"

    - Si un alumno aprueba una parte y no se presenta a la otra, su calificación será "No presentado"

    - Si un alumno suspende una parte y no se presenta o supera la otra, su calificación será "Suspenso" con la nota de la parte suspensa

    - Cuando un alumno aprueba o suspende las dos partes, su calificación será resultado de aplicar los pesos establecidos para cada parte

    Sí un alumno sólo supera una parte después de las 3 convocatorias del curso, la nota no se mantendrá para el próximo curso

    Esta asignatura no se encuentra vinculada de forma directa con los Objetivos de Desarrollo Sostenible