Logo UAB
2022/2023

Requisitos del Software

Código: 102763 Créditos ECTS: 6
Titulación Tipo Curso Semestre
2502441 Ingeniería Informática OB 3 1
2502441 Ingeniería Informática OT 4 1

Contacto

Nombre:
Daniel Ponsa Mussarra
Correo electrónico:
daniel.ponsa@uab.cat

Uso de idiomas

Lengua vehicular mayoritaria:
catalán (cat)
Algún grupo íntegramente en inglés:
No
Algún grupo íntegramente en catalán:
Algún grupo íntegramente en español:
No

Equipo docente

Oriol Jaumandreu Sellares
David Acuña Torras

Prerequisitos

La asignatura no tiene prerrequisitos. Sin embargo, el alumnado debería estar familiarizado con los conceptos más básicos de análisis y diseño orientados a objetos, así como de UML. El alumnado debería revisar estos temas, que forman parte de la asignatura 'Ingeniería del software' que se ofrece el segundo año.

Objetivos y contextualización

Los objetivos formativos de la asignatura son:

  • Estudiar las metodologías principales propuestas para gestionar los requisitos de un proyecto software.
  • Comprender la problemática de la Ingeniería de Requisitos, y su relación con otras fases de la Ingeniería del Software.
  • Conocer los participantes involucrados en la Ingeniería de Requisitos.
  • Adquirir experiencia práctica en la aplicación de técnicas de recogida y gestión de requisitos.

Competencias

    Ingeniería Informática
  • Adquirir hábitos de trabajo personal.
  • 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.
  • 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.
  • Capacidad para determinar los requisitos de los sistemas de información y comunicación de una organización atendiendo a aspectos de seguridad y cumplimiento de la normativa y la legislación vigente.
  • Capacidad para diseñar soluciones apropiadas en uno o más dominios de aplicación utilizando métodos de la ingeniería del software que integren aspectos éticos, sociales, legales y económicos.
  • 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.
  • Comunicación.
  • Conocimiento y aplicación de elementos básicos de economía y de gestión de recursos humanos, organización y planificación de proyectos, así como la legislación, regulación y normalización en el ámbito de los proyectos informáticos.

Resultados de aprendizaje

  1. Adaptar el diseño de programa a la normativa de seguridad aplicable.
  2. Analizar y evaluar requerimientos teniendo en cuenta las limitaciones existentes.
  3. Analizar y evaluar requerimientos.
  4. Comunicar eficientemente, de forma oral y/o escrita, conocimientos, resultados y habilidades, tanto en entornos profesionales como ante públicos no expertos.
  5. Determinar los requisitos de las aplicaciones informáticas en los sistemas de información de una organización.
  6. Diseñar especificaciones que integren las restricciones legales, éticas, sociales y económicas del flujo de la información.
  7. Especificar las necesidades del cliente en un documento de especificación de software.
  8. Identificar y modelar casos de uso usando UML.
  9. Planificar el desarrollo del software teniendo en cuenta los recursos disponibles.
  10. Trabajar de forma autónoma.

Contenido

  • Introducción a la Ingeniería de requisitos.
    • Motivación de la Ingeniería de Requisitos.
    • Definiciones.
    • Las 3 dimensiones de la Ingeniería de Requisitos.
    • Conocimientos y habilidades de un Ingeniero de Requisitos.
    • Contexto de un Sistema.
  • Elicitación (Recogida) de requisitos.
    • Fuentes de requisitos.
    • Tipo de requisitos y la elicitación.
    • Proceso de producción de requisitos.
    • Relación con los Stakeholders.
    • Técnicas de elicitación.
    • Técnicas de asistencia a la elicitación.
  • Documentación de requisitos.
    • Motivación de la documentación.
    • Técnicas de documentación.
    • Estructuras de documentos Standard.
  • Documentación basada en lenguaje natural.
    • Efectos transformacionales del lenguaje natural.
    • Documentación de objetivos: Àrbol de medios-fines.
    • Documentación de escenarios i casos de uso: Estructuració del lenguaje natural.
    • Documentación de requisitos: Ambigüedad, métricas y patrones sintácticos.
  • Documentación basada en modelos.
    • Lenguajes de modelado.
    • Efectos transformacionales de los modelos.
    • Modelado de Objetivos.
    • Modelado de Escenarios.
    • Modelado de Requisitos: perspectiva funcional, de datos y de comportamiento.
  • Gestión de conflictos.
    • Gestión del conflicto basada en objectivos.
    • Impacto de la resolución de conflictos.
    • Estrategias de resolución de conflictos.
    • Mediación vs Negociación.
    • Negociación basada en principios.
  • Validación de requisitos.
    • Validación de objetivos, escenarios y requisitos.
    • Aspectos de calidad de los requisitos.
    • Los 6 principios de la validación.
    • Técnicas de validación.
  • Gestión de la ingeniería de requisitos.
    • Gestión del contexto.
    • Gestión del proceso.
    • Gestión de los artefactos: trazabilidad i priorización.
    • Gestión del cambio.
  • Test basado en los requisitos.
    • Casos de prueba.
    • Tipo de prueba.
    • Niveles de prueba.
    • Definición de casos de prueba basada en requisitos.

Metodología

Las diferentes actividades que se llevarán a cabo en la asignatura se organizan de la siguiente manera:

Clases de teoría: Se exponen los conceptos básicos de la asignatura y se dan indicaciones de cómo completar y profundizar en este contenidos. Se realizan actividades en el aula, algunas de las cuales se deberán preparar en el trabajo autónomo.

Clases de problemas: Se extienden de manera práctica temas vistos tangencialmente en las clases magistrales. Se resuelven problemas y se discuten casos prácticos. Con las actividades planteadas se promueve el trabajo autónomo y cooperativo, la capacidad de análisis y síntesis, el razonamiento crítico, y se entrena al estudiante en la resolución de problemas.

Prácticas: Durante el curso se realizará trabajo práctico en grupos de 4 ó 5 personas. Se programará una serie de actividades a llevar a cabo para recoger y documentar los requisitos de un sistema software, con un calendario de entrega establecido. Los equipos realizarán algunas de estas actividades dentro de las sessiones de prácticas, en las que se realizará también el seguimiento de su trabajo y donde recibirán la retroalimentación (feedback) del trabajo hecho.

Competencias Transversales

La asignatura tiene asignadas dos competencias transversales. A continuación se detallan, especificando para cada una de ellas con qué actividades se trabajarán y cómo se evaluarán.

T02.01 - Trabajar de forma autónoma.
La planificación del estudio, la asistencia a tutorías, así como la preparación de las actividades encomendadas es algo a gestionar autónomamente por parte del estudiante, y esta buena gestión incide en las calificaciones de su trabajo. Sin embargo, se evaluará esta competencia de manera directa en las siguientes actividades:

  • Caracterización del contexto de una aplicación software. En el trabajo de prácticas, a partir de un problema software descrito de manera global, el alumno debe caracterizar por su cuenta las diferentes facetas del problema (aspectos temáticos, tecnológicos, de uso y desarrollo) buscando a las fuentes que crean pertinentes. En base a la riqueza de esta caracterización se valora el trabajo autónomo derivado de la búsqueda de información necesaria.
  • Selección de herramientas de desarrollo. Parte de la práctica a realizar requiere la generación de diagramas de modelado. En lugar de fijar las herramientas a utilizar, en la práctica se pide que se haga una búsqueda de herramientas disponibles, y se realice una elección fundamentada de la herramienta que utilizarán en la práctica.

T04.01 - Comunicar eficientemente, de forma oral y/o escrita, conocimientos, resultados y habilidades, tanto en entornos profesionales como ante públicos no expertos.

Las competencias de comunicación se evalúan en la práctica de la asignatura, en base a

  • Entrevistas de recogida de requisitos, que realizan con un hipotético usuario del software en que se centra su práctica.
  • La documentación en lenguaje natural de la información recogida en documentos de visión y de especificación de requisitos.
  • El modelado UML de determinados aspectos del sistema solicitados en la práctica a realizar.

consideraciones generales
Para diseminar información al estudiante se utilizará la plataforma Campus Virtual. Las fechas de evaluación continua y entrega de trabajos se publicarán a través de este medio, y pueden estar sujetos a posibles cambios de programación por motivos de adaptación a posibles incidencias. Siempre se informará mediante el Campus Virtual sobre estos posibles cambios ya que esta es la plataforma de intercambio de información entre el profesorado y el estudiantado.

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.

Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Clases de problemas 12 0,48 2, 3, 5, 8, 10
Clases de teoría 22 0,88 2, 3, 5, 6, 8, 9
Classes de prácticas 12 0,48 1, 2, 3, 4, 5, 6, 7, 8, 10
Pruebas de evaluación 4 0,16 2, 3, 5, 6, 7, 8, 9
Tipo: Supervisadas      
Preparación de las sesiones de prácticas 24 0,96 10
Resolución de problemas fuera de clase 24 0,96 10
Tipo: Autónomas      
Estudio 50 2 10
Tutorías y consultas 2 0,08 10

Evaluación

a) Proceso y actividades de evaluación programadas

La evaluación de la asignatura se llevará a cabo de manera continua a partir de las evidencias de aprendizaje recogidas en los siguientes procesos:

  • [E1]. Realización de pruebas escritas (exámenes).
  • [E2]. Resolución y entrega de cuestionarios y ejercicios planteados en las sesiones de teoría y problemas.
  • [E3]. Realización de una práctica, evaluada a partir de diferentes actividades y entregas.

La asignatura consta de las actividades de evaluación, cada evaluada con una nota entre 0 y 10 (ambos inclusive):

  • [E1]-ExP1, examen parcial 1, 30% sobre la calificación final.
  • [E1]-ExP2, examen parcial 2, 20% sobre la calificación final.
  • [E2]-Prob, resolución de ejercicios planteados en las sesiones de teoría y problemas, 10% sobre la calificación final.
  • [E3]-PracE, actividades de la práctica relacionadas con la elicitación de requisitos, 15% sobre la calificación final.
  • [E3]-PracD, actividades de la práctica relacionadas con la documentación de requisitos, 25% sobre la calificación final.

Para poder aprobar la asignatura mediante la evaluación continua, habrá sacar una nota igual o superior a 5 en las siguientes 2 expresiones.

  • (0,6 * Nota [E1]-ExP1) + (0,4 * Nota [E1]-ExP2) + (0,1 * Nota [E2]-Prob)
  • (0,3 * Nota [E1]-ExP1) + (0,2 * Nota [E1]-ExP2) + (0,1 * Nota [E2]-Prob) + (0,15 * Nota [E3]-PracE) + (0,25 * Nota [E3]-PracD)

Hay que tener en cuenta que:

  • Si no se supera la primera condición para aprobar, se asignará el resultado de su expresión como calificación final de la asignatura.
  • los ejercicios que integran la actividad [E2]-Prob deberán entregarse dentro de un plazo establecido, y se evaluarán con una nota entre 0 y 10 (ambos inclusive). Los ejercicios no entregados dentro de su plazo se evaluarán con una nota de 0, y no se podrán recuperar.
  • las actividades [E3]-PracE y [E3]-PracD se evaluarán en base a diferentes subactividades planteadas, que tendrán un plazo de realización y entrega establecido. Cada subactividad evaluará con una nota entre 0 y 10 (ambos inclusive). Las subactividades no realizadas o entregadas fuera de su plazo se evaluarán con una nota de 0, y no se podrán recuperar.

En caso de irregularidades en las actividades evaluativas, se aplicará lo que se detalla en el apartado f).

Es importante tener en cuenta que no se realizarán actividades de evaluación en una fecha o momento diferente al establecido, salvo causas justificadas, debidamente informadas con antelación al profesorado.

b) Programación de actividades de evaluación

El calendario de las diferentes actividades de evaluación se detallará en el Campus Virtual, en el aula Moodle de la assignatura. Las fechas de realización de las pruebas escritas (actividades [E1]-ExP1 y [E1]-ExP2) también se harán públicas en la web de la Escuela de Ingeniería, en el apartado de exámenes.

c) Proceso de recuperación

Las únicas actividades de evaluación recuperables son las pruebas escritas [E1]-ExP1 y [E1]-ExP2.

El estudiante puede presentarse a recuperar o mejorar las notas de estas pruebas (una de ellas, o ambas) siempre que se haya presentado a un conjunto de actividades que representen al menos dos terceras partes de la calificación total de la asignatura.

De cara a la calificación final de la asignatura, la nota que se obtenga en la recuperación sustituirá la nota de la prueba correspondienterealizada dentro de la evaluación continua.

De acuerdo con la coordinación del Grado y la dirección de la Escuela de Ingeniería las siguientes actividades no se podrán recuperar:

  • [E2]-Prob, 10% sobre la calificación final.
  • [E3]-PracE, 15% sobre la calificación final.
  • [E3]-PracD, 25% sobre la calificación final.

d) Procedimiento de revisión de las calificaciones

Para las actividades de evaluación basadas en pruebas escritas ([E1]-ExP1 y [E1]-ExP2) se establecerá un procedimiento de reserva de fecha y hora de revisión en la que el/la estudiante podrá revisar la actividad con el profesorado. En este contexto, se podrán hacer reclamaciones sobre la nota de la actividad, que serán evaluadas por el profesorado responsable de la asignatura. Asimismo, se podrá concertar con el profesorado responsable de la asignatura la revisión del resto de actividades de evaluación hasta dos semanas antes de la prueba de recuperación.

e) Calificaciones especiales

Si el alumno no ha realizado ninguna de las pruebas [E1]-ExP1 y [E1]-ExP2 se le asignará la nota de "No Evaluable". Cabe recordar pero que, según normativa vigente, las calificaciones de "No Evaluable" agotan también convocatoria.

Sólo podrán obtener una MH los estudiantes que tengan una nota igual o superior a 9 puntos. Como el número de MH no puede superar el 5% de los estudiantes matriculados, se concederán a los estudiantes que tengan las notas finales más altas. En caso de empate, los resultados de las pruebas parciales serán tomados en consideración.

f) Irregularidades por parte del estudiante, copia y plagio.

Sin perjuicio de otras medidas disciplinarias que se estimen oportunas, se calificarán conun cero las irregularidades cometidas por el estudiante que puedan conducir a una variación de la calificación de un acto de evaluación. Por lo tanto, la copia, el plagio, el engaño, dejar copiar, etc. en cualquiera de las actividades de evaluación implicará suspenderla con un cero.

g) Evaluación de los estudiantes repetidores

A partir de la segunda matrícula, el estudiante repetidor puede solicitar convalidar la evaluación de las actividades [E3]-PracE y [E3]-PracD, tomando la nota obtenida la primera vez que el estudiante se ha matriculado de la asignatura. Para poder optar a esta evaluación diferenciada, el estudiante repetidor debe solicitarlo al profesorado mediante un correo electrónico.

Actividades de evaluación

Título Peso Horas ECTS Resultados de aprendizaje
[E1]-ExP1: Examen Parcial 1 30 0 0 1, 2, 3, 5, 6, 7, 8
[E1]-ExP2: Examen Parcial 2 20 0 0 1, 2, 3, 5, 6, 7
[E2]-Prob: Ejercicios entregados 10 0 0 2, 3, 5, 6, 7, 8
[E3]-PracD: Práctica:Documentación 25 0 0 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
[E3]-PracE: Práctica:Elicitación 15 0 0 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

Bibliografía

  • K. Pohl. Requirements Engineering. Fundamentals, Principles and Techniques. Springer, 2010
  • K. Pohl, C. Rupp. Requirements Engineering Fundamentals. 2n Ed. Rocky Nooc Inc, 2015
  • R. Fisher, W. Ury, B. Patton. Getting to Yes:Negotiating Agreement Without Giving In, Updated and revised  Edition. New York:Penguin Books. 2012
  • D. Gray, S. Brown, J. Macanufo. Gamestorming: A Playbook for Innovators, Rulebreakers, and Changemakers. O'Reilly, 2010. (gamestorming.com)
  • Thomas A. Pender. UML Weekend Crash Course. John Wiley & sons, 2002
  • M. Delevic. Guide to the Logical Framework Approach, 2nd Edition. Republic of Serbia Government. European Integration Office, 2011. (http://www.evropa.gov.rs/Evropa/ShowDocument.aspx?Type=Home&Id=525)

Software

A continuación se detalla el software empleado en parte de los ejercicios y actividades realizadas en clase y en ale sesiones de problemas:

Se utiliza InVisionApp Freehand como pizarra digital para análisis / diseño cooperativo, para realizar:

  • Un árbol de medios-fines ligado al sistema a especificar.
  • Un panel de post-its en la aplicación de la técnica Story Mapping.
  • Un prototipo de baja fidelidad del sistema a especificar (Sketch o "paper prototype")

Para documentar parte de las entregas de prácticas se utiliza:

  • OneNote / MS Word en Teams.
  • Herramientas para hacer diagramas UML, seleccionadas por el alumnado en una actividad de prácticas.