Breve descripción de la asignatura:
En esta asignatura se estudiarán los conceptos clave de una parte muy importante de la ingeniería del software: la captura de requisitos. Para ello se presentarán los conceptos básicos de la ingeniería de requisitos, cuales son las técnicas más habituales para la captura de los mismos, la manera formal de especificarlos, validarlos y gestionarlos.
Todo ello dentro de un marco práctico que permitirá al alumno conocer los conceptos teóricos y aplicar las técnicas adecuadas para resolver un supuesto práctico.
Objetivos de la asignatura:
- Conocer el concepto de requisito desde diferentes puntos de vista.
- Conocer los diferentes tipos de requisitos.
- Realizar una especificación de los requisitos software según las necesidades del cliente.
- Saber describir los diferentes procesos de ingeniería de requisitos.
- Saber describir el proceso de gestión de requisitos.
- Realizar un documento de requisitos software de acuerdo con los estándares existentes.
Temario:
Tema 1. Introducción a la Ingeniería de requisitos
- Concepto de ingeniería del software
- Concepto de ingeniería de requisitos
- Motivos para realizar ingeniería de requisitos
- Factores de calidad software.
Tema 2. Conceptos básicos de la Ingeniería de Requisitos
- Concepto de requisitos
- Requisitos funcionales y no funcionales
- Requisitos funcionales
- Requisitos no funcionales
- Requisitos del dominio
- Requisitos del usuario
- Requisitos del sistema
Tema 3. Procesos de la ingeniería de requisitos.
Tema 4. Captura de requisitos.
- Técnicas de captura de información
- Técnicas de análisis de requisitos
- Modelado conceptual
Tema 5. Estándares y especificación de requisitos.
- Especificación de requisitos.
- IEEE 830-1993
- Especificación formal
Tema 6. Validación y verificación de requisitos
- Revisiones
- Prototipado
- Generación de casos de prueba
- Otras técnicas.
Tema 7. Proceso de gestión de requisitos.
- La gestión de cambios
- Impacto del cambio
- Trazabilidad
- Proceso de gestión de cambios
- Selección de requisitos o Triage
- Influencia de los requisitos en el Triage
- Evaluación del beneficio
- Realización práctica del Triage
Tema 8. El proceso de ingeniería de requisitos en el ciclo global del software.
Breve descripción de la asignatura:
En esta asignatura se estudian principalmente técnicas de modelado software; así como el lenguaje de modelado más utilizado en la ingeniería informática: UML (Unified Modeling Language). Antes de profundizar en estos conceptos se hará un repaso a los procesos de desarrollo software.
Se terminará explicando el concepto de patrón de diseño y profundizando en los más importantes.
Objetivos de la asignatura:
- Enumerar los distintos métodos de organización de proyectos y sus características.
- Enumerar las técnicas de estimación y planificación aplicables en la Gestión de Proyectos Software.
- Enumerar los distintos estándares de calidad del software.
- Conocer el proceso de captura de requisitos.
- Saber realizar una captura de requisitos para una solución propuesta.
- Conocer el proceso de diseño de una aplicación orientada a objeto.
- Conocer y aplicar la notación UML en la resolución de casos reales.
- Conocer y aplicar patrones de diseño.
- Saber explicar las características principales de la reutilización y la reingeniería.
- Conocer las diferencias existentes entre reutilización y reingeniería.
- Utilizar herramientas reales de gestión de proyectos y diseño de software.
- Identificar adecuadamente los distintos conceptos que se proponen en el temario.
Temario:
Tema 1. Introducción.
- Concepto de ingeniería del software
- Proceso lineal
- Prototipado
- Proceso en espiral
- Metodologías ágiles
Tema 2. Análisis y diseño orientado a objeto con UML.
- Historia de UML
- Objetivos
- Modelado
- Vistas
- Elementos
- Diagramas de UML
Tema 3. Modelado de estructura del sistema
- Introducción
- Elementos estructurales
- Diagrama de Clases
- Diagrama de Objetos
Tema 4. Modelado de interacciones del sistema
- Introducción
- Elementos de interacción
- Diagrama de Secuencia
- Diagrama de Comunicación
Tema 5. Modelado de comportamiento del sistema
- Introducción
- Eventos
- Diagrama de Estados
- Diagrama de Actividades
Tema 6. Modelado de arquitectura del sistema
- Introducción
- Arquitectura lógica
- Paquetes
- Diagrama de Paquetes
- Arquitectura física
- Elementos: Componentes, Artefactos, Nodos
- Diagrama de Componentes
- Diagrama de Despliegue
Tema 7. Patrones de diseño
- Conceptos
- Tipos de patrones
- Patrones de creación
- Patrones estructurales
- Patrones de comportamiento
Tema 8. Reutilización y Reingeniería.
- ¿Qué es reutilización?
- Ingeniería del dominio
- ¿Qué es reingeniería?
Breve descripción de la asignatura:
Esta asignatura estudia los conocimientos básicos para la correcta aseguración de la calidad del software. Para ello se estudiará el concepto de calidad del software y las actividades y técnicas que permiten garantizar que todo producto y proceso en ingeniería del software tenga alta calidad. Se estudiarán así las métricas, metodologías y estándares de medición del software que permiten desarrollar estrategias a fin de mejorar el proceso del software, y con él, la calidad del producto final.
Todo ello se analizará dentro de un marco práctico que permitirá al alumno conocer los conceptos teóricos y aplicar las técnicas adecuadas para resolver un supuesto práctico.
Objetivos de la asignatura:
- Conocer el concepto de calidad del software.
- Conocer las diferentes técnicas de revisión y aseguramiento de la calidad del software.
- Saber aplicar estrategias de prueba del software en diferentes contextos.
- Ser capaz de modelar adecuadamente el software para realizar una correcta verificación.
- Describir y realizar las distintas actividades que implica la administración de la configuración del software.
- Conocer las distintas métricas de producto para ayudarse en la construcción de software de mayor calidad
Temario:
Tema 1. Concepto de calidad.
Tema 2. Técnicas de revisión.
- Métricas de revisión
- Revisiones informales
- Revisiones técnicas formales
Tema 3. Aseguramiento de la calidad del software (ACS)
- Elementos del ACS
- Tareas, metas y métricas del ACS
- Enfoques formales al ACS
- Aseguramiento estadísticos de la calidad del software
- Confiabilidad del software
- Las normas de calidad ISO 9000
- El plan de ACS
Tema 4. Estrategias de prueba del software
- Aspectos estratégicos para la prueba del software
- Estrategias de prueba para software convencional
- Estrategias de prueba para software orientado a objeto
- Estrategias de prueba para webapps
- Pruebas del sistema
- El proceso de depuración
Tema 5. Modelado y verificación formal
- Estrategia de cuarto limpio
- Especificación funcional
- Diseño de cuarto limpio
- Pruebas de cuarto limpio
- Conceptos de métodos formales
- Lenguajes de especificación formal
Tema 6. Administración de la configuración del software
- Administración de la configuración del software
- El repositorio ACS
- El proceso ACS
Tema 7. Métricas de producto
- Introducción a las métricas de producto
- Métricas para el modelo de requerimientos, diseño, código fuente, pruebas y mantenimiento.