Requerimientos Funcionales
Requerimientos Funcionales
Requerimientos Funcionales
y No Funcionales.
1
Referencia.
• El Lenguaje Unificado de Modelado. Grady Booch,
James Rumbaugh e Ivar Jacobson. Addison Wesley,
2016.
– Capítulos 16 y 17
2
Referencia requerimientos no
funcionales.
3
Agenda
• Requerimientos funcionales
– Levantamiento de requerimientos
– Casos de Uso (Requerimientos Funcionales)
• Requerimientos no funcionales
– Diferencias requerimientos funcionales, no funcionales
y pseudo requerimientos
– Clasificación de los requerimientos no funcionales y
pseudo requerimientos
4
Requerimientos.
• Un requerimiento es una característica que el sistema
DEBE tener o es una restricción que el sistema DEBE
satisfacer para ser aceptada por el cliente
5
Requerimientos funcionales
6
Levantamiento de Requerimientos.
7
Actividades
• Identificación de actores
– Diferentes tipos de usuario (no personas en particular)
• Identificación de escenarios
– Observar al usuario y desarrollar un conjunto de escenarios
detallados para la funcionalidad típica que debe proveer el
sistema
8
Actividades
9
1. Identificación de actores (1)
10
1. Identificación de actores - Preguntas (2)
11
1. Identificación de actores - Notación (3)
Actor
Relación del
actor con el
sistema
12
2. Identificación de escenarios (1)
13
2. Identificación de escenarios
Nombre del Consultar listado de cursos
escenario
15
3. Identificación de casos de uso (1)
16
3. Identificación de casos de uso (2)
17
3. Identificación de casos de uso (3)
Actor
El usuario
interactúa Caso de
directamente uso
18
3. Identificación de casos de uso (4)
19
3. Identificación de casos de uso (5)
20
3. Identificación de casos de uso (6)
21
3. Identificación de casos de uso (7)
22
3. Identificación de casos de uso (8)
23
4. Identificar relaciones entre casos de uso(1)
• Extends
– Un caso de uso extiende otro caso de uso, si el caso de
uso extendido incluye el comportamiento del otro bajo
ciertas condiciones
– Se utiliza para modelar la parte de un caso de uso que
el usuario puede ver como comportamiento opcional
del sistema
– Se separa el comportamiento opcional del obligatorio
24
4. Identificar relaciones entre casos de uso(2)
Extends
25
4. Identificar relaciones entre casos de uso(3)
• Include
– Indica que en el flujo de eventos del caso de uso base
se incluye el comportamiento del otro caso de uso
– Factorizar comportamiento común (NO hacer
descomposición funcional)
– SOLAMENTE se hace cuando la parte común es
utilizada por otro caso de uso o cuando es utilizada por
otro actor
26
4. Identificar relaciones entre casos de uso(4)
Include
27
4. Identificar relaciones entre casos de uso(5)
• Generalización
– Cuando algunos casos de uso tienen algo en común y
puede ser abstraído a otro, mucho más general.
– El caso de uso hijo hereda el comportamiento y el
significado del caso de uso padre.
– El hijo puede añadir o redefinir el comportamiento del
padre.
– El hijo puede ser colocado en cualquier lugar donde
aparezca el padre.
28
4. Identificar relaciones entre casos de uso(6)
Generalización
29
4. Identificar relaciones entre casos de uso(5)
30
4. Identificar relaciones entre casos de uso(7)
Consignar
Retirar
Consultar Saldo
Cajero
Bloquear Cuenta
31
Documentación del caso de uso
32
Documentación del Caso de Uso
33
Documentación del Caso de Uso
34
Documentación del Caso de Uso
35
Documentación del Caso de Uso
36
Ejemplo: la tienda de discos
37
Plantilla Wiki
38
Plantilla Wiki
39
Ejemplo
Obtener el
diagrama de CU2. ModificarProducto
CU3. Eliminar Producto
CU6. Registar orden de venta
casos de uso
+ la doc de CU1. Agregar Producto CU8. Cambiar IVA
<<includes>>
40
Requerimientos no funcionales
41
Pseudo Requerimientos
42
Requerimientos no funcionales
43
Requerimientos no funcionales
44
Requerimientos no funcionales
• Requerimientos de Interfaz externa
– Interfaces de Software
• Conexiones entre el producto y software externo (
identificado por nombre y versión)
• Ejemplo
– Bases de datos
– Sistemas operativos
– Legacy
• Identificar la información que comparten los
componentes
45
Requerimientos no funcionales
• Requerimientos de desempeño
– Describir el desempeño para los escenarios
– Describir el volumen o tiempo de utilización para saber
que tan importante es.
– Especificar el número de usuarios concurrentes
– Especificar el número de operaciones concurrentes
– Tiempos de respuesta
– Restricciones de tiempo para sistemas de tiempo real
46
Requerimientos no funcionales
47
Requerimientos no funcionales
• Requerimientos de seguridad
– Protección de la información
– Utilización del producto
– Definir la autenticación o autorización del ingreso los
usuarios
48
Requerimientos no funcionales
49
Requerimientos no funcionales
50
Requerimientos no funcionales
51
Requerimientos no funcionales
52
Requerimientos no funcionales
• Requerimientos operación
– No aumentan la capacidad funcional
– Permiten un mejor uso
• Deshacer, rehacer, copiar, pegar
• Configuración
• Barras de herramientas, configurar menús, cambiar
font
• Sistema de ayuda
53
Requerimientos no funcionales
54
Plantilla Wiki
55
Modelos de Sistema
56
Glosario términos de negocio
57
Documentación del requerimiento no funcional
Nombre
Descripción
Criterios de Aceptación
59