Datos Identificativos 2013/14
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 Obligatoria 6
Idioma
Castellano
Prerrequisitos
Departamento Computación
Coordinador/a
Mosqueira Rey, Eduardo
Correo electrónico
eduardo.mosqueira@udc.es
Profesorado
Mosqueira Rey, Eduardo
Correo electrónico
eduardo.mosqueira@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 de la titulación
A7 Capacidad para diseñar, desarrollar, seleccionar y evaluar aplicaciones y sistemas informáticos, asegurando su fiabilidad, seguridad y calidad, conforme a principios éticos y a la legislación y normativa vigente.
A13 Conocimiento, diseño y utilización de forma eficiente de los tipos y estructuras de datos más adecuados a la resolución de un problema.
A14 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.
A22 Conocimiento y aplicación de los principios, metodologías y ciclos de vida de la ingeniería de software.
A25 Capacidad para desarrollar, mantener y evaluar servicios y sistemas software que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente, sean asequibles de desarrollar y mantener, y cumplan normas de calidad, aplicando las teorías, principios, métodos y prácticas de la ingeniería del software.
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.
B1 Capacidad de resolución de problemas
B2 Trabajo en equipo
B3 Capacidad de análisis y síntesis
B5 Habilidades de gestión de la información
C1 Expresarse correctamente, tanto de forma oral como escrita, en las lenguas oficiales de la comunidad autónoma.
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.
C7 Asumir como profesional y ciudadano la importancia del aprendizaje a lo largo de la vida.

Resultados de aprendizaje
Competencias de materia (Resultados de aprendizaje) Competencias de la titulación
Identificar el análisis de requisitos como una de las fases del ciclo de vida del software A14
A22
B1
B5
C1
C3
C7
Identificar el flujo de trabajo de requisitos en una metodología estándar como el Proceso Unificado A22
A25
A26
B1
B5
C1
C3
C7
Conocer y saber aplicar los artefactos de ingeniería de requisitos en la Fase de Inicio del Proceso Unificado A22
A25
A26
B1
B2
B3
B5
C1
C3
C7
Conocer y saber aplicar los artefactos de ingeniería de requisitos en la Fase de Elaboración del Proceso Unificado A22
A25
A26
B2
B3
B5
C1
C3
C7
Conocer las principales tareas involucradas en la gestión de requisitos: elicitación, negociación, validación, gestión de cambios, trazabilidad, etc. A25
A26
B5
C1
C3
C7
Identificar el flujo de trabajo de requisitos en una metodología ágil como Scrum A22
A25
A26
B1
B2
C1
C3
C7
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 A7
A13
A14
A25
A26
B1
B2
C1
C3
C7

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
• Artefactos
• 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
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 • Características de las metodologías ágiles
• Metodología Scrum
• Requisitos en Scrum

Planificación
Metodologías / pruebas Horas presenciales Horas no presenciales / trabajo autónomo Horas totales
Sesión magistral 21 52.5 73.5
Prácticas de laboratorio 14 35 49
Seminario 7 14 21
Prueba objetiva 3 0 3
 
Atención personalizada 3.5 0 3.5
 
(*)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 pequeños, generalmente de dos o tres personas, en la 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, partiendo de las definiciones iniciales hasta llegar a una implementación final en un lenguaje de programación como Java
Seminario Los seminarios o Tutorías de Grupo Reducido (TGRs) consistirán en pequeños ejercicios en los que se ponen en práctica, de forma sencilla, los conocimientos vistos en las sesiones magistrales y en las prácticas de laboratorio.
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
Seminario
Prácticas de laboratorio
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
- Realización de seminarios con grupos reducidos
- Seguimiento de la labor realizada en las prácticas de laboratorio
- Encuentros personalizados para resolver dudas

Evaluación
Metodologías Descripción Calificación
Seminario Los seminarios o TGRs consistirán en pequeños ejercicios en los que se ponen en práctica, de forma sencilla, los conocimientos vistos en las sesiones magistrales y que luego han de ampliar en las prácticas de laboratorio.

Los ejercicios se consideran optativos y son una forma de fomentar el trabajo continuo de los alumnos a lo largo del curso

Presentar un 75% de los ejercicios de los seminarios (4 de 5) implica que el alumno se ha presentado a la asignatura, aunque luego no se presente a la prueba objetiva.
5
Prueba objetiva 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 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.

La realización de las prácticas es obligatoria para aprobar la asignatura (aunque alguna entrega individual pueda indicarse como optativa).

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

Presentar un 75% de las prácticas (3 de 4) implica que el alumno se ha presentado a la asignatura, aunque luego no se presente a la prueba objetiva.

Las calificaciones de las prácticas se presentarán antes da realización de prueba objetiva excepto la nota de la última práctica que, por cuestiones de calendario, se entregará con las calificaciones finales da asignatura.
45
 
Observaciones evaluación
Aspectos a tener en cuenta en la evaluación de segunda
oportunidad: 
  • La nota de los seminarios (TGRs) es idéntica a la obtenida
    en la evaluación de primera oportunidad y no existe posibilidad de mejorarla. 
  • La nota de las prácticas de laboratorio es idéntica a la
    obtenida en la evaluación de primera oportunidad aunque existe la posibilidad
    de mejorarla en los términos que se indiquen en el campus virtual.
  • La nota de la prueba objetiva de la primera oportunidad sólo
    se mantiene en caso de que sea igual o superior a cinco. En caso contrario será necesario tener que repetir dicha prueba.
En la segunda oportunidad los porcentajes son iguales y también rigen las normas de un mínimo de un 4 en prácticas y prueba objetiva.

Se considerará que un alumno se presenta a la segunda oportunidad si vuelve a entregar las prácticas o se presenta a la prueba objetiva.

Fuentes de información
Básica Larman, Craig (2005). Applying UML and Patterns (3rd ed.). Pearson Education
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
Validación y Verificación del Software/614G01053

Asignaturas que se recomienda cursar simultáneamente

Asignaturas que continúan el temario
Diseño Software/614G01015
Proceso Software/614G01019

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