Datos Identificativos 2019/20
Asignatura (*) Ingeniería de Requisitos Código 614G01027
Titulación
Grao en Enxeñaría Informática
Descriptores Ciclo Periodo Curso Tipo Créditos
Grado 2º cuatrimestre
Tercero Optativa 6
Idioma
Castellano
Modalidad docente Presencial
Prerrequisitos
Departamento Ciencias da Computación e Tecnoloxías da Información
Computación
Coordinador/a
Rodriguez Rubio, Miguel Jose
Correo electrónico
miguel.rodriguez.rubio@udc.es
Profesorado
Rodriguez Rubio, Miguel Jose
Correo electrónico
miguel.rodriguez.rubio@udc.es
Web
Descripción general O propósito da disciplina de análise de requisitos é: (1) establecer e manter un acordo cos clientes e outras partes interesadas sobre o que o sistema debe facer. (2) Proporcionar aos desarrolladores do sistema unha mellor comprensión dos requisitos do mesmo. (3) Definir os límites do sistema. (4) Proporcionar unha base para a planificación dos contidos técnicos de próximas iteraciones. (5) Proporcionar unha base para a estimación de custo e tempo para desenvolver o sistema e (6) Definir unha interfaz para o sistema, centrándose nas necesidades e obxectivos dos usuarios.

Nesta materia centrarémonos en describir o proceso de enxeñaría de requisitos seguindo a metodoloxía do Proceso Unificado e desenvolvendo artefactos propios da devandita metodoloxía para o tratamento dos requisitos: Documento de Visión, Especificación Suplementaria, Modelo de Casos de Uso, Diagrama Conceptual do Dominio, etc.

Tamén se exporá como desenvolver requisitos en metodoloxías áxiles como Scrum, comparando estas técnicas coas xa nomeadas do Proceso Unificado.


Competencias del título
Código Competencias del título
A26 Capacidad para valorar las necesidades del cliente y especificar los requisitos software para satisfacer estas necesidades, reconciliando objetivos en conflicto mediante la búsqueda de compromisos aceptables dentro de las limitaciones derivadas del coste, del tiempo, de la existencia de sistemas ya desarrollados y de las propias organizaciones.
A28 Capacidad de identificar y analizar problemas, y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
B1 Capacidad de resolución de problemas
B2 Trabajo en equipo
B3 Capacidad de análisis y síntesis
B4 Capacidad para organizar y planificar
C2 Dominar la expresión y la comprensión de forma oral y escrita de un idioma extranjero.
C3 Utilizar las herramientas básicas de las tecnologías de la información y las comunicaciones (TIC) necesarias para el ejercicio de su profesión y para el aprendizaje a lo largo de su vida.
C4 Desarrollarse para el ejercicio de una ciudadanía abierta, culta, crítica, comprometida, democrática y solidaria, capaz de analizar la realidad, diagnosticar problemas, formular e implantar soluciones basadas en el conocimiento y orientadas al bien común.
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
Identificar el análisis de requisitos como una de las fases del ciclo de vida del software A26
A28
B3
B4
C2
C6
C7
C8
Identificar el flujo de trabajo de requisitos en una metodología estándar como el Proceso Unificado A26
A28
B3
B4
C2
C6
C7
C8
Conocer y saber aplicar los artefactos de ingeniería de requisitos en la Fase de Inicio del Proceso Unificado A26
A28
B1
B2
B3
B4
C2
C3
C4
C6
C7
C8
Conocer y saber aplicar los artefactos de ingeniería de requisitos en la Fase de Elaboración del Proceso Unificado A26
A28
B1
B2
B3
B4
C2
C3
C4
C6
C7
C8
Conocer las principales tareas involucradas en la gestión de requisitos: elicitación, negociación, validación, gestión de cambios, trazabilidad, etc. A26
A28
B1
B2
B3
B4
C2
C3
C4
C6
C7
C8
Identificar el flujo de trabajo de requisitos en una metodología ágil como Scrum A26
A28
B1
B2
B3
B4
C2
C3
C4
C6
C7
C8
Desarrollar un problema desde su especificación de requisitos inicial hasta su diseño e implementación en un lenguaje orientado a objetos como Java A26
A28
B1
B2
B3
B4
C2
C3
C4
C6
C7
C8

Contenidos
Tema Subtema
1. Introducción • Introducción a la ingeniería de requisitos
• La ingeniería de requisitos en las metodologías de desarrollo
• La ingeniería de requisitos en el Proceso Unificado
2. Los requisitos en la fase de inicio • Características de la fase de inicio
• Documento de visión
• Especificación suplementaria
• Glosario
3. Casos de uso • Objetivos
• Actores
• Casos de uso
• Diagrama de casos de uso
• Problemas comunes con casos de uso
• Casos de uso en el flujo de requisitos
4. Los requisitos en la fase de elaboración • Introducción
• Artefactos de la fase de elaboración
• Modelo conceptual del dominio
• Modelado dinámico
5. Requisitos y Diseño • Modelo de diseño
• Patrones GRASP
• Realización de casos de uso
• Casos de uso e interfaces de usuario
6. Gestión de requisitos • Características de los requisitos
• Elicitación de requisitos
• Requisitos no ambiguos
• Verificación de requisitos
• Atributos de los requisitos
• Gestión de cambios
• Trazabilidad
7. Ingeniería de requisitos en las metodologías ágiles • Introducción
• El Proceso Unificado Ágil
• Metodología Scrum
• Casos de Uso vs. Historias de Usuario

Planificación
Metodologías / pruebas Competéncias Horas presenciales Horas no presenciales / trabajo autónomo Horas totales
Sesión magistral A26 B1 C7 21 51 72
Prácticas de laboratorio A28 B2 B4 C3 13 28 41
Trabajos tutelados B3 C4 C6 C8 8 20 28
Prueba objetiva C2 3 0 3
 
Atención personalizada 6 0 6
 
(*)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
Sesión magistral Clases magistrales en las que se exponen los conceptos teóricos de la materia utilizando como recursos la pizarra, la proyección de materiales en formato electrónico, apuntes en formato electrónico, consulta de páginas web y otro tipo de materiales que estén disponibles en el campus virtual
Prácticas de laboratorio Practicas realizadas en grupos en las que los estudiantes ponen en práctica los conocimientos teóricos impartidos en las sesiones magistrales. Las prácticas consistirán en la realización de las tareas de ingeniería de requisitos de un problema particular.
Trabajos tutelados Trabajos realizados en grupo en los que los estudiantes ponen en práctica cómo transitar desde la especificación de requisitos realizada en las prácticas hasta el diseño y la implementación final del software.
Prueba objetiva Prueba escrita mediante la que se valora los conocimientos adquiridos por el estudiante.
Cada estudiante deberá aplicar sus conocimientos tanto a nivel teórico como a nivel práctico.

Atención personalizada
Metodologías
Trabajos tutelados
Descripción
La atención personalizada a los alumnos comprende:
- Tutorías presenciales
- Tutorías virtuales a través de los foros del campus virtual
- Seguimiento de la labor realizada en las prácticas de laboratorio y trabajos tutelados
- Encuentros personalizados para resolver dudas

Evaluación
Metodologías Competéncias Descripción Calificación
Prueba objetiva C2 Prueba escrita realizada al final del curso sobre contenidos teórico-prácticos.

La prueba objetiva es obligatoria para aprobar la asignatura y también es obligatorio obtener una nota mínima de 4 para poder hacer media con los otros elementos evaluables. En caso de no llegar a la nota mínima implicará que no se pueda obtener más de un 4,5 en la nota final de la asignatura
50
Prácticas de laboratorio A28 B2 B4 C3 Se realizarán varias entregas de practicas a lo largo del curso. El desarrollo es incremental y cada entrega estará basada en la anterior, por lo que no es posible entregar una práctica si no se ha entregado la anterior. 30
Trabajos tutelados B3 C4 C6 C8 Los trabajos tutelados continúan a las prácticas y también siguen una metodología incremental, por lo que tampoco se pueden presentar sin tener presentado el trabajo o práctica anterior.

La calificación del último trabajo, al englobar al resto de trabajos y prácticas, se considera parte de la evaluación final y se entregará con las calificaciones finales de la asignatura
20
 
Observaciones evaluación

En caso de no llegar a la nota mínima en la prueba objetiva, en cualquiera de las oportunidades, implicará que no se pueda obtener más de un 4,5 en la nota final de la materia.

Aspectos a tener en cuenta para la evaluación de segunda oportunidad (Julio):

  • La nota de las prácticas de laboratorio y de los trabajos tutelados será la obtenida en la primera oportunidad (no habrá entrega de prácticas o trabajos en la segunda oportunidad).

Aspecto a tener en cuenta en caso de matrícula a tiempo parcial:

  • Se elimina la obligatoriedad de asistir a las actividades en las que se pueda exigir presencialidad, como son los TGRs. 

Fuentes de información
Básica Larman, Craig (2005). Applying UML and Patterns (3rd ed.). Pearson Education
James Rumbaugh y otros (). El Lenguaje Unificado de Modelado. Manual de Referencia. Addison Wesley
McLaughlin, Brett; Pollice, Gary & West, David (2007). Head First Object-Oriented Analysis & Design. O’Reilly Media
Alvarez, Alonso; De las Heras, Raquel; Lasa, Carmen (2002). Métodos ágiles y Scrum. Anaya Multimedia
Eckel, Bruce (2007). Piensa en Java (4ª ed.). Pearson Educación
Kruchten, Philippe (2004). The Rational Unified Process: An Introduction. Addison-Wesley
Cockburn, Alistair (2001). Writing effective use cases. Addison-Wesley

Complementária Pilone, Dan & Miles, Russ (2008). Head First Software Development. O’Reilly Media
Adolph, Steve; Bramble, Paul (2002). Patterns for Effective Use Cases. Addison-Wesley Professional
Braude, Eric J.; Bernstein, Michael E. (2011). Software Engineering: Modern Approaches (2nd ed.). John Wiley and Sons
Larman, Craig (2002). UML y Patrones (2º ed.). Pearson Educación
Stevens, P. y Pooley, R. (2006). Using UML. Software Engineering with Objects and Components. Addison-Wesley Professional


Recomendaciones
Asignaturas que se recomienda haber cursado previamente
Diseño Software/614G01015
Proceso Software/614G01019

Asignaturas que se recomienda cursar simultáneamente

Asignaturas que continúan el temario
Validación y Verificación del Software/614G01053

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