Ruta de navegación

Contenido de XSL

Ingeniería del Software26017

Centro
Facultad de Informática
Titulación
Grado en Inteligencia Artificial
Curso académico
2023/24
Curso
2
Nº Créditos
6
Idiomas
Castellano
Euskera
Inglés
Código
26017

DocenciaAlternar navegación

Distribución de horas por tipo de enseñanza
Tipo de docenciaHoras de docencia presencialHoras de actividad no presencial del alumno/a
Magistral4040
P. Laboratorio2050

Guía docenteAlternar navegación

Descripción y Contextualización de la AsignaturaAlternar navegación

La Ingeniería del Software es una disciplina donde se aúnan los métodos, herramientas y procesos necesarios para desarrollar software de calidad. En esta asignatura se presentan estos fundamentos a través del desarrollo de un proyecto software.

Competencias/ Resultados de aprendizaje de la asignaturaAlternar navegación

El objetivo principal de la asignatura es diseñar e implementar aplicaciones, cuyos requisitos se capturan y definen utilizando el lenguaje de modelado UML y aplicando arquitecturas software de varios niveles, con el fin de desarrollar proyectos siguiendo un proceso sistemático y apoyándose en herramientas que permiten mejorar la calidad del software.



Una vez cursada la asignatura, el alumnado habrá aprendido a:

  * distinguir las diversas etapas que componen todo proceso de ingeniería del software.

  * entender un sistema software con orientación a objetos descrito mediante el lenguaje UML.

  * diseñar un sistema software en una arquitectura de varios niveles a partir de los requisitos.

  * implementar un sistema a partir del diseño de la aplicación.

Contenidos teórico-prácticosAlternar navegación

TEMA 1: Captura de requisitos

  1.1.- Modelo de Casos de Uso

  1.2.- Modelo del Dominio

TEMA 2: Diseño

  2.1.- Diagramas de secuencia

  2.2.- Patrones de diseño software

  2.3.- Arquitecturas Software de varios niveles

TEMA 3: Implementación

  3.1.- Interfaces gráficas de usuario

  3.2.- Persistencia de objetos

  3.3.- Computación distribuida

MetodologíaAlternar navegación

La asignatura incorporará como actividad destacada la realización de un Proyecto de software por etapas a lo largo del curso. La metodología docente estará orientada al Aprendizaje Basado en Proyectos (PBL), incorporando otras técnicas de docencia activas, con sesiones de trabajo en grupo, discusión y presentación de resultados de ejercicios. En el laboratorio se trabajarán de manera práctica e intensiva algunas de las tareas necesarias para la realización del proyecto, introduciendo herramientas y entornos software específicos para las mismas.

Sistemas de evaluaciónAlternar navegación

  • Sistema de Evaluación Continua
  • Sistema de Evaluación Final
  • Herramientas y porcentajes de calificación:
    • Los porcentajes y tipos de evaluación se especifican en los apartados posteriores (%): 100

Convocatoria Ordinaria: Orientaciones y RenunciaAlternar navegación

Hay dos modos de evaluación: Evaluación Continua y Evaluación Final.



EVALUACIÓN CONTINUA: al acogerse a ella el alumno se compromete a asistir sistemáticamente a las clases, a realizar de las actividades presenciales y a integrarse en un grupo para la realización del Proyecto.



Las actividades de evaluación con sus pesos correspondientes serán las siguientes:

1) Proyecto: 70%

2) Ejercicios individuales escritos: 20%

3) Otras actividades complementarias (incluyendo laboratorios): 10%



El Proyecto se ejecutará en tres iteraciones de mejora progresiva. En todas ellas se realizarán todas las fases del desarrollo: identificación y captura de requisitos, diseño y arquitectura software, implementación y despliegue. Por ello los Temas 1, 2 y 3 no se impartirán de manera sucesiva sino en espiral. La tercera iteración incluirá una defensa global del proyecto y un breve test.



EVALUACIÓN FINAL: Será aplicable a los alumnos que no deseen o no puedan acogerse al sistema de Evaluación Continua. La evaluación está compuesta por un proyecto no necesariamente el mismo que en Evaluación Continua y un examen que abarcará el 100% de los contenidos de la asignatura. El alumno que desee concursar a la Evaluación de Conjunto deberá concertar una cita con su profesor antes de la semana 9 del curso.



Las actividades evaluables podrán tener condiciones mínimas cuyo no cumplimiento implicará no superar la asignatura. En particular el proyecto presentado debe funcionar correctamente de acuerdo a los requisitos.

Convocatoria Extraordinaria: Orientaciones y RenunciaAlternar navegación

La convocatoria extraordinaria está compuesta por un proyecto y un examen. La nota final será la media entre la obtenida en el proyecto y el examen que abarcará el 100% de los contenidos de la asignatura. Para aprobar la asignatura hay que aprobar tanto la proyecto como el examen.

Materiales de uso obligatorioAlternar navegación

El uso de los siguientes recursos es necesario para cursar la asignatura:
  * Plataforma Egela de la UPV/EHU: http://egela.ehu.eus/
  * starUML: https://staruml.io/
  * Entorno de desarrollo eclipse: http://www.eclipse.org

El conjunto de transparencias utilizadas por los profesores para presentar la asignatura y los enunciados de las fases del proyecto, y de los ejercicios planteados también se consideran material de uso obligatorio, y estarán disponibles a través de la plataforma Moodle.

BibliografíaAlternar navegación

Bibliografía básica

INGENIERÍA DEL SOFTWARE: UN ENFOQUE PRÁCTICO. Roger S. Pressman. MacGraw-Hill, 2001. 5ª Edición (referencia general sobre Ingeniería del Software).



UML Y PATRONES: INTRODUCCIÓN AL ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS. Craig Larman. Prentice-Hall, 2003 (sobre UML y patrones GRASP).

Bibliografía de profundización

EL PROCESO UNIFICADO DE DESARROLLO DEL SOFTWARE. Ivar Jacobson, Grady Booch y James Rumbaugh. Pearson-Addison Wesley, 1999 (sobre UML y proceso unificado de desarrollo de software).

CONSTRUCCIÓN DE SOFTWARE ORIENTADO A OBJETOS. Bertrand Meyer. Prentice-Hall, 1998 (sobre Orientación a Objetos).

Revistas

javaHispano: http://javahispano.org

Direcciones web

The Java Tutorials: http://docs.oracle.com/javase/tutorial/index.html
Pressman Software engineering resources: http://www.rspa.com/spi/
Agile Modeling: http://www.agilemodeling.com/
SCRUM Manual: http://jeffsutherland.com/scrumhandbook.pdf

GruposAlternar navegación

01 Teórico (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

09:00-10:30 (1)

10:30-12:00 (2)

Profesorado

01 P. Laboratorio-1 (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

12:00-13:30 (1)

Profesorado

01 P. Laboratorio-2 (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

10:30-12:00 (1)

Profesorado

46 Teórico (Euskera - Tarde)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

14:00-15:30 (1)

15:30-17:00 (2)

Profesorado

46 P. Laboratorio-1 (Euskera - Tarde)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

17:00-18:30 (1)

Profesorado

46 P. Laboratorio-2 (Euskera - Tarde)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

15:30-17:00 (1)

Profesorado

46 P. Laboratorio-3 (Euskera - Tarde)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

14:00-15:30 (1)

Profesorado

61 Teórico (Inglés - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

09:00-10:30 (1)

10:30-12:00 (2)

Profesorado

61 P. Laboratorio-1 (Inglés - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

12:00-13:30 (1)

Profesorado

61 P. Laboratorio-2 (Inglés - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
16-30

10:30-12:00 (1)

Profesorado