Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2
Acuerdos fundamentales para el buen funcionamiento del Curso
• Quién es el presentador?
• Qué es este curso?
• Cuánto dura? Hay descansos?
• Debo hacer ejercicios?
• Me van a dejar tareas?
• Puedo obtener mi certificado?
• Puedo usar mi teléfono celular o revisar mi correo electrónico durante la clase?
• Alguna otra inquietud?
3
Materiales
4
Ejercicios
• Omninet es un proyecto para desplegar una red de quioscos con acceso público a Internet en
sitios como centros comerciales, teatros y otros sitios públicos
• En este proyecto real, usted tendrá la oportunidad de aplicar algunas de las técnicas que
discutiremos
5
Sus objetivos del Curso
6
Mis Objetivos del Curso
7
Este es SU Curso
Comente
Comparta experiencias
8
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora) (1 hora)
9
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora) (1 hora)
10
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
11
Qué hace a un requisito ser de poca calidad?
• Un requisito que no se pueda leer con facilidad o que sea incorrecto gramaticalmente
también puede ser un problema
12
Y cuando simplemente están mal?
• Faltan requisitos
13
Qué pasa si un Requisito es malo?
14
Requirements Issues?
Como lo pidió el Como lo entendió el Como lo que diseñó el Como el programador lo Como lo describió el
cliente lider de proyecto Ingeniero de Requsitos escribió consultor de negocios
15
Los Costos de Malos Requisitos
• Este número varía por el tipo de producto y la pericia del equipo de trabajo para identificar
adecuadamente la causa primaria de los errores encontrados
16
Ejemplos de Costos
• Si un mal requisito es identificado en la revisión de requisitos, son de esperar los siguientes costos
adicionales:
• Algún otro?
17
Ejemplos de Costos
18
Ejemplos de Costos
• Si un mal requisito es identificado durante la revisión de código, son de esperar los siguientes
costos adicionales:
19
Ejemplos de Costos
• Si un mal requisito es identificado durante las pruebas (ahora si que se hace costoso!), espere los
siguientes costos adicionales:
– Desarrollo de código del interfaz y sus dependencias
– Tiempo de ejecución del caso de prueba
– Tiempo de automatización del desarrollo de pruebas
– Tiempo de rastreo de errores (y parte del costo del sistema de rastreo de errores)
– Tiempo empleado por probador y desarrollador determinando que el requisito tiene errores
– Rediseño y ejecución de prueba cuando el nuevo código se recibe
– Otros?
20
Ejemplos de Costos
• Si un mal requisito se identifica durante las pruebas de aceptación hechas por el cliente (el
asunto se hace vergonzoso!), espere los siguientes costos adicionales:
– El costo de fallar frente al usuario
– En el mejor de los casos el cliente vuelve a hacer las pruebas de aceptación cuando el
código se haya corregido
– El peor de los casos, el cliente rechaza el sistema
– Otros?
21
Ejemplos de Costos
• Si un mal requisito se identifica en la etapa de producción (oh oh!), espere los siguientes costos
adicionales:
22
Costos de Oportunidad
• Cuando el equipo está trabajando en solucionar un problema causado por un mal requisito, ellos
no estan trabajando en nuevos proyectos
23
Por qué se Presentan Malos Requisitos?
24
Más causales de malos requisitos?
• Presión impuesta por el cliente para que se entregue el sistema final antes de lo previsto o aún de
manera parcial
25
Buenos Requisitos Brindan
• Clientes felices
26
Buenos Requisitos
27
Ejercicio
• Identifique problemas que usted haya encontrado y que podrían evitarse con una buena ingeniería
de requisitos
28
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
29
Grupos de Actividades del Proceso
Descubrimiento de Requsitos
Revisiones y
Documentación
Contexto
Levantamiento Aprobaciones
de Información Lenguaje
natural Modelos
Herramientas
30
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
31
Teoría de la Comunicación
• Sobre todas las cosas, un Ingeniero de Requisitos debe ser un comunicador efectivo
32
Qué es la teoría de la comunicación?
• Es un campo de estudio relativamente nuevo que abarca todos los aspectos de la comunicación
• El modelo de Lasswell se usa comúnmente para describir el acto de la comunicación: “Quién dice
Qué, en Qué canal, a Quién y con Qué efecto”
33
Comunicación
34
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
35
Ingeniero de Requisitos?
• Conceptos clave
– Qué es un ingeniero de requisitos?
– Cuáles son las habilidades requeridas para este trabajo?
36
Principales Actividades del Ingeniero de Requisitos
37
Habilidades Requeridas
• Conceptos clave
– Aplicación de la teoría de la comunicación
– Trabajar bien con los demás
– Habilidades requeridas para ser efectivo
38
Habilidades Requeridas para la Ingeniería de Requisitos
39
Indispensable
Conocer el Dominio del Negocio
• Fuentes de información
40
Conocimiento TI Requerido
41
Habilidades Avanzadas del Ingeniero de Requsitos
42
Varios Ingeniero de Requsitos?
43
La Información debe ser Coordinada
• La coordinación debe estar presente dentro del equipo para que haya consistencia
– Terminología
– Metodología
– Otros?
44
Misión del Ingeniero de Requisitos
“COMUNICAR EFECTIVAMENTE”
45
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
46
Lo Podemos Probar?
47
Terminología
• Un requisito es
– Una condición o capacidad requerida por un interesado en resolver un
problema o alcanzar un objetivo
– Una condición o capacidad que debe ser suministrada por un sistema o
componente de sistema para satisfacer un documento formalmente
impuesto (como un contrato o especificación)
– Una representación documentada de alguno de los anteriores
• Una característica es
– Un servicio suministrado por el sistema para satisfacer una necesidad del
interesado
– Una muestra identificable de la funcionalidad del sistema que caracteriza
el sistema ante el usuario
– Categorizada entre funcional o de calidad del servicio
48
Tipos de Requisitos
• Requisito del Negocio – nivel más alto de razones relacionadas con las metas del proyecto
• Requisitos de calidad de servicio (Quality of Service QOS) – condiciones bajo las cuales la
solución debe permanecer efectiva
49
Categorización de los Requisitos
1. Requisitos funcionales
2. Requisitos no funcionales
50
Requisitos Funcionales
• Todos los requisitos funcionales deben establecer claramente cómo se determina la aceptación de
la implementación
• “Dato Y va a aparecer en el Reporte X.”
• Puede que aparezca, pero aparece de manera correcta? Estaba supuesto a ir subrayado
o en itálica? No se sabe.
51
Requisitos Funcionales Completos
• Un solo requisito funcional completo debe considerar las importantes características de calidad
52
Atributos de los Requisitos Funcionales
• Requisitos de interoperabilidad del software para trabajar dentro del ambiente objetivo
(incluyendo software, hardware, configuración, aplicaciones relacionadas y arquitectura)
53
Requisitos No-Funcionales
• Como con los requisitos funcionales, el criterio de éxito también debe ser claramente
establecido.
• “La primera página del reporte Y debe aparecer realmente rápido.”
• Oh-oh, esto no puede ser verificado, “realmente rápido” es una medida subjetiva.
54
Requisitos No Funcionales
• Conceptos clave
– Qué son requisitos no funcionales?
– Cómo se agrupan y clasifican los requisitos no funcionales?
– Qué criterio de aceptación se requiere?
• Términos parar recordar
55
Requisitos No Funcionales
56
Uso Repetido de Requisitos No Funcionales
• Una vez definidos, los requisitos no funcionales se utilizan repetidamente en los proyectos al
interior de una organización
57
Requisitos No Funcionales - Aceptación
• Proyectos pueden fallar debido a una pobre implementación de los aspectos no funcionales
58
Categorías Diferentes?
59
Ejercicio No Funcional
• A usted le dieron el trabajo de escribir los requisitos para un sistema de comercio electrónico que
va a brindar la posibilidad de comprar boletas de concierto a los usuarios
• Solamente con esta información, que requisitos no funcionales espera usted que tenga el
sistema?
60
Más Términos
61
Procesos de Negocio
62
Identificar los Procesos de Negocio
• Sean definidos o no, el Ingeniero de Requisitos debe identificar y entender los procesos de
negocio
• La buena definición de los procesos de negocio indica la madurez del nivel de organización
63
Necesidades del Negocio y Metas
64
Objetivos*
Financiera
Problema 2
Clientes / Mercado
Procesos
Conocimiento / Necesidades
Aprendizaje Espacio del problema
Características Espacio de la solución
y Requsitos
de Software Producto
Texto y/o Casos de Uso
NO
FUNCIONALES
FUNCIONALES
Lenguaje
Modelado Calidad Restricciones
natural
Lenguaje
natural
66
Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
67
ISO/IEC 9126
– Confiabilidad
– Eficiencia
Características no
– Usabilidad
funcionales de
– Mantenibilidad
– Portabilidad
calidad
68
Sub-Características de ISO 9126
• Confiabilidad – incluye requisitos, falla y backup y recuperacion MTTR (Mean Time to Repair –
Tiempo Medio Para Reparar) y MTBF (Mean Time Between Failures – Tiempo Medio Entre
Fallas)
69
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de
estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
70
Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
• 2.1 Conocer el contexto del sistema, la frontera del sistema y la frontera del
contexto
2.2 Dominar y utilizar la frontera del sistema y la frontera del contexto
71
Contexto del Proyecto
72
Contexto del Sistema
Encierra todo lo que es relevante LIMITE DEL CONTEXTO
CONTEXTO
2) Interesados
- requisitos
3) Sistemas - Funcionalidades planteadas
Funcionalidad 1 Funcionalidad 2
•Entradas Funcionalidad 3
•Actividades 4) Eventos Trazabilidad
•Roles
•Salidas
Actividad 2
5) Procesos Actividad 1
Actividad 3
73
Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
• 2.1 Conocer el contexto del sistema, la frontera del sistema y la frontera del
contexto
2.2 Dominar y utilizar la frontera del sistema y la frontera del contexto
74
Sistema vs. Límites de Contexto
• Los límites del sistema definen los aspectos de qué está dentro del sistema vs.
qué es parte del entorno del sistema
• Límites de contexto identifican parte del entorno que se conecta con el sistema
• El contexto del proyecto define el contexto del proyecto específico (puede ser
un subconjunto del sistema total)
75
Alcance/Contexto son Importantes?
76
Riesgos de una Definición Inadecuada
77
Zonas Grises
• Los límites del sistema y el contexto algunas veces cambian durante el proyecto por la
llamada “zona gris”
• Los diagramas de caso de uso y diagramas de flujo de datos, ayudan a mostrar el contexto y a
identificar áreas que pueden o van a cambiar
78
Ejercicio
• Si el equipo en un proyecto tiene una débil gestión del proyecto, Qué haría usted para
compensar esta debilidad?
• Si usted está ante un contrato de precio fijo para la labor de desarrollo y pruebas,
Cómo afecta esto su análisis?
79
Ejercicios Adicionales
• Si se establece el alcance del proyecto, pero el contexto está cambiando, Qué puede
pasarle al proyecto entre la definición y la entrega?
80
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
81
Capítulo 3 Obtención de requisitos (1 ½ horas)
82
Fuentes de Requisitos LIMITE DEL CONTEXTO
CONTEXTO
2) Interesados
- requisitos
3) Sistemas - Funcionalidades planteadas
Funcionalidad 1 Funcionalidad 2
•Entradas Funcionalidad 3
•Actividades 4) Eventos Trazabilidad
•Roles
•Salidas
Actividad 2
5) Procesos Actividad 1
Actividad 3
83
Fuentes de Requisitos según IREB
84
Identificar las Fuentes
• Conceptos claves
– Las partes interesadas son solo una fuente de requisitos
– Requisitos completos requiren Obtención a partir de todas las fuentes pertinentes
85
Antes de Elicitar…
86
Considere la Fuente
87
Posibles Fuentes
88
Sistemas Externos
89
Información de Entorno
• Regulaciones legales
• Soluciones de la competencia
90
Y No Olvidarse del Negocio
91
Ejercicio
92
Capítulo 3 Obtención de requisitos (1 ½ horas)
93
Encontrando las Partes Interesadas
• Conceptos clave
– Encontrar las partes interesadas
– Gestionar la relación con las partes interesadas
– Riesgos de las partes interesadas
94
Rol de las Partes Interesadas
• Sin estos requisitos, las partes interesadas pueden impedir o complicar el proceso
de requisitos
95
Compromiso y Gestión de Riesgo
96
Probables Interesados
97
Rastree estas Partes Interesadas
98
Responsabilidades del Ingeniero de Requisitos
99
Responsabilidades del implicado
100
Lista de implicados – Estructura (ejemplo)
Información
Implicado Descripción Representante Disponibilidad Competencia
de contacto
101
Capítulo 3 Obtención de requisitos (1 ½ horas)
102
El modelo de Kano
103
Capítulo 3 Obtención de requisitos (1 ½ horas)
104
Aplicar Técnicas de Obtención
• Conceptos Clave
– Cómo funciona la Obtención?
– Establecer las metas de la Obtención
– Técnicas para la Obtención de requisitos
– Ajustar la Obtención a las partes interesadas
105
Propósito de la Obtención
106
Qué es la Obtención de requisitos?
107
Cuándo se términa?
108
Habilidades Necesarias
• Para ser bueno elicitando requisitos, el Ingeniero de Requsitos debe tener habilidades en
109
Mientras se elicita…
• Trazabilidad – cada requisito debe ser trazable para los objetivos y mentas del negocio
definido
110
Tipos de Técnicas
Técnicas de prospección
- Se pregunta al implicado respecto de sus requisitos con distintos niveles de detalle
- Ejemplos:
- Entrevista o cuestionario
- Lista de comprobación de Osborn (cuestionario específico que se centra en la experiencia
adquirida con un producto)
Técnicas creativas
La creatividad rompe el molde del pensamiento convencional
- Creatividad orientada a objetivos en lugar de caos creativo
Ejemplos
- Tormenta de ideas
- Técnica de analogía: Se buscan posibles soluciones basadas en analogías a problemas encontrados
en la naturaleza con una estructura similar
- Cambio de perspectiva (1)
- Consideración de un problema desde diferentes puntos de vista
111
………Tipos de Técnicas
112
Lluvia de Ideas
113
Lluvia de Ideas
114
Grupos Focales
115
Grupos Focales
116
Entrevistas
117
Entrevistas
118
Observación
119
Observación
120
Talleres de Requisitos
121
Talleres de Requisitos
• Cómo se hace? • Quién participa?
– Determine qué necesita definirse – Equipo del proyecto
– Identifique los interesades que • Bueno/Malo
deben participar – Muchos requisitos detallados en un
– Determine la agenda corto período de tiempo
– Elicite, analice y documente los – Permite la colaboración entre los
requisitos durante el taller interesados
– Resuelva los conflictos que se – Más barato que hacer muchas
presenten entrevistas
– Mantenga el encuentro profesional – Puede resultar difícil de programar
en curso – El facilitador tiene que ser bueno
– Haga preguntas y obtenga – Seleccionar el correcto número de
respuestas participantes puede ser complicado
– Concluya y documente los
resultados
122
Encuestas y Cuestionarios
123
Encuestas y Cuestionarios
• Cómo se hace? • Quién participa?
– Prepare la encuesta – Mercadeo
– Seleccione el grupo objetivo a – Equipo del proyecto
encuestar – SMEs
– Escoja las víctimas – Partes interesadas
– Determine cómo distribuir y – Clientes/usuarios
recoger la encuesta • Bueno/Malo
– Decida si también va a necesitar – Preguntas cerradas son fáciles de
entrevistas cuantificar
– Determine la información – Preguntas abiertas proporcionan más
demografica necesaria información
– Fácil, rápido, corto – Tiempo efectivo
– Pruebe la encuesta – Funciona para un grupo disperso
– Conduzca la encuesta – Dificultad de escribir
– Recopile y analice los resultados – Buenas opiniones, pero pueden no
reflejar el comportamiento actual
124
Prototipos
125
Prototipos
126
Análisis de Interfaz
127
Análisis de Interfaz
128
Ingeniería Inversa
129
Ingeniería Inversa
130
Análisis de Documentos
• Quién participa?
• Cómo se hace? – Equipo de proyecto
– Evaluar la documentación existente – Expertos en la materia
(sistema y negocio) por relevancia
• Bueno/Malo
– Estudiar los materiales y encontrar la
información útil – Brinda un punto de partida
– Hacer seguimiento con preguntas a – Permite aprovecharse de los
usuarios/SMEs para confirmar el materiales existentes
entendimiento y resolver inquietudes – Brinda un manera de verificar la
completabilidad
– Se limita a una perspectiva de como
están las cosas
– La documentación puede estar
desactualizada, equivocada o
simplemente imposible de encontrar
131
Un poco más de algunos
– Considere la lluvia de ideas paradójica (pensar en todas las cosas que el producto
no debería hacer)
– Considere el cambio de perspectiva (qué pasa si usted fuera el usuario?)
– Considere la técnica de la analogía (adicionar un usuario es como aceptar una
tarjeta de crédito)
132
Un poco más de algunos
133
Muchas Técnicas
134
Todo el mundo dice algo
135
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
136
Capítulo 4 Documentación de requisitos (2 horas)
137
Alistandose para Documentar
• Conceptos clave
– Establecer el modelo de requisitos
– Asegurarse de tener los elementos adecuados
– Podemos cumplir los requisitos de la audiencia?
138
Alistandose para Documentar
139
Estructurar el Modelo de Requisitos
140
Requisitos
141
Recuerde la Meta
142
Recuerde las Reglas
143
Quién necesita Qué?
Clientes Probadores Gestores de Mantenedores
Proyecto
Sin ambigüedad X X X X
Consistente X X X X
Entendible X X X X
Completo X X X X
Correcto X
Verificable X
Pesable X
Modificable X
Trazable X
144
Guias de Ejecución
• Voz activa
• Terminología consistenten
145
Por Ser Determinado
• TBD (Por Ser Determinado/To Be Defined) se usa como una referencia para el requisito
futuro
146
Capítulo 4 Documentación de requisitos (2 horas)
147
Perspectivas
148
Peligros Potenciales
• Lenguaje Natural
– Bueno – fácil de usar, generalmente entendible, fácil de comprender para usuarios
no-técnicos
– Débil – puede ser no-específico, las palabras pueden tener múltiples
interpretaciones, puede ser voluminoso
• Modelos
– Bueno – pueden representar información compleja en forma compacta, puede ser
fácil de revisar para llegar a la completud
– Débil – puede requerir de experticia para entender el modelo mismo, puede no ser
adecuado para lectores no-técnicos, puede requerir entrenamiento para quien
escribe, el modelo selecto puede no ser el adecuado para el proyecto/problema
149
Capítulo 4 Documentación de requisitos (2 horas)
150
Estructura de Referencia para los Requisitos
• Ventajas de usar estructuras de referencia para requisitos (como son IEEE 830-1998)
incluye
– Uso simplificado de la documentación de requisitos a lo largo del ciclo de vida (ej.,
para crear casos de prueba)
– Uso estándar a través de la organización
– Ajustes están permitidos específicamente para compañía/proyecto/aplicación
151
Usar Formatos
• Uso consistente de “deber”, “debería”, “será” ayuda a establecer los compromisos del
proyecto (como también lo es usar los atributos)
152
Cinco Pasos Para el Uso de Formatos
153
Lineamientos IEEE
• Conceptos clave
– Uso efectivo de los lineamientos IEEE
– Adaptarlos a sus necesidades
154
Documentos IEEE
155
IEEE 1362-1998
156
Perfil del IEEE 1362-1998
157
Perfil del IEEE 1362-1998
1. Alcance
Nota: El resumen del
1.1 Identificación
documento discute el
1.2 Resumen de documento
propósito y motivación
1.3 Resumen de sistema del mismo así como la
identificación de la
audiencia a quien se
dirige.
158
Perfil del IEEE 1362-1998
2. Documentos referenciados
159
Perfil del IEEE 1362-1998
Nota: 3.3 describe todos los aspectos del sistema en términos del usuario e incluye
elementos como entorno, capacidades, características, riesgos, desempeño, atributos de
calidad. Herramientas gráficas son usadas frecuentemente en ésta sección.
160
Perfil del IEEE 1362-1998
Nota: 4.2 es un resumen de las capacidades nuevas o cambiadas que establecen los
elementos en 4.1.
Nota: 4.3 clasifica cada cambio como esencial, deseable u opcional (deber, debería,
podría).
161
Perfil del IEEE 1362-1998
Nota: Describe el sistema propuesto en una manera de alto nivel sin especificar
detalles de diseño. El nivel de detalle debería dar una explicación clara al usuario
respecto a como se van a suplir sus necesidades.
162
Perfil del IEEE 1362-1998
6. Escenarios Operacionales
163
Perfil del IEEE 1362-1998
7. Resumen de Impactos
7.1 Impactos operacionales
7.2 Impactos organizacionales
7.3 Impactos durante el desarrollo
164
Perfil de IEEE 1362-1998
165
Perfil del IEEE 1362-1998
9. Notas
10. Apéndices
11. Glosario
Nota: Notas y apéndices se usan para detalles adicionales que ayudan a entender
pero pueden empantanar el documento.
166
IEEE Std 830-1998
167
IEEE Std 1233-1998
• IEEE Std 1233-1998 distingue entre la especificación de los requisitos de sistema que
describen lo que el sistema debe hacer, y los requisitos de proceso que explican
como construir el sistema
• La meta del 1233 es la de brindar una descrpción de caja negra de que debería
hacer el sistema
168
Identifique los Crear el SRS
Requisitos
Aplicar técnicas de Organice los
Obtención, educación Requisitos
mutua y definición
conjunta Agrupamientos
lógicos, asignación
de atributos, mapeo
de relaciones
Construya
requisitos bien
formados Presente SRS
Necesario, conciso, Considere la
definitivo, audiencia, use texto
verificable y/o modelos
169
Formatos SRS
• IEEE 1233 contiene múltiples formatos SRS del mismo modo que IEEE 830
• Vamos a ver el formato IEEE 830
170
IEEE Std 830-1998
171
Un Buen SRS Debería Ser…
• Correcto – todo lo dicho se debe cumplir
172
Perfil del IEEE 830-1998
1. Introducción
1.1 Propósito
Nota: 1.1 explica el
1.2 Alcance propósito y audiencia
1.3 Definiciones, acrónimos y abreviaciones objetivo.
1.4 Referencias – fecha, versión, localización
1.5 Vista general
Nota: 1.2 identifica los productos a producir, que van y que no van a hacer. Esta sección
también describe los beneficios, objetivos, metas y aplicación del software que está
produciendo.
173
Perfil del IEEE 830-1998
2. Descripción general
Nota: 2.2 es un resumen de alto nivel de las principales funciones que el software va a brindar. Esto se
muestra algunas veces en forma gráfica. Establece el contexto para los requisitos explicados en la
Sección 3.
174
Perfil de IEEE 830-1998
2. Descripción general
2.3 Características del usuario
2.4 Restricciones
Nota: 2.4 discuten cualquier limitación de las opciones del desarrollador como son
políticas regulatorias, limitaciones de equipamento, protocolos, requisitos de
confiabilidad, consideraciones de seguridad y aseguramiento, y otros.
Nota: 2.6 es usa para indicar cualquier requisito que pueda ser diferido a entregas
posteriores
175
Perfil del IEEE 830-1998
3. Requisitos específicos
Nota: Sección 3 es el nucleo del documento SRS. El objeto es declarar cada requisito al
nivel de detalle necesario para el diseño, implementación, prueba y trazabilidad de cada
uno. Cada requisito debería incluir la entrada, salida y proceso que ocurrirá en respuesta a
las entradas para lograr las salidas.
176
Perfil del IEEE 830-1998
Nota: 3.1 incluye todas las entradas y salidas del sistema de software. Debería trabajar con
y sin contradecir la información de la sección 2 de éste documento. La información podría
incluir la fuente de la entrada, destino de la salida, medidas, rangos, tiempo, formatos y
mensajes.
3.2 Funciones
Nota: 3.2 describe la secuencia exacta de las operaciones a realizar en las entradas y la
creación de salidas, incluyendo las revisiones de validación, secuencia de operaciones,
manejo de error, secuenciamiento, conversiones, y cualquier parametrización. Elementos en
esta sección se describen como un “deber”.
177
Perfil del IEEE 830-1998
3.3 Requisitos de desempeño
Nota: 3.3 incluye medidas para requisitos estáticos (capacidad) y dinámicos (desempeño).
Cada requisito debe ser medible.
Nota: 3.4 describe el tipo de información, los entes de datos y sus relaciones, quién puede
acceder a qué, frecuencia de uso, requisitos de retención y cualquier restriccion de
integridad.
Nota: 3.5 resalta cualquier restriccion que podría ser impuesta por normas, regulaciones,
prácticas organizacionales, auditorías y limitaciones similares.
178
Perfil del IEEE 830-1998
3.6.1 Confiabilidad
3.6.2 Disponibilidad
3.6.3 Seguridad
3.6.4 Mantenibilidad
3.6.5 Portabilidad
179
Perfil del IEEE 830-1998
Nota: 3.7 explica las maneras posibles de organizar los requisitos, incluyendo organización por
modo de operación del sistema, clase de usuario, objetos, caracteristicas, estímulos y
respuesta, y jerarquía funcional. Cualquiera de estas alternativas de organización pueden
requerir el uso de un requisito básico de disposición.
Nota: Dependiendo de la organización recogida por la sección 3.7, puede ser necesario
explicar cuáles técnicas organizacionales, o combinaciones, son utilizadas y por qué. La
técnica utilizada puede dictar las herramientas y notacones usadas también, por ejemplo,
organizar por modo puede indicar el uso de diagramas de estado.
Usar Formatos IEEE
181
Ejercicio
• Por cada uno de los formatos IEEE discutidos, compare las fortalezas y debilidades con
la documentación que su compañía actualmente usa.
182
Capítulo 4 Documentación de requisitos (2 horas)
183
Uso Común
184
Necesidades
Características
y Requsitos
de Software
Texto y/o Casos de Uso
NO
FUNCIONALES
FUNCIONALES
Lenguaje
Modelado Calidad Restricciones
natural
Lenguaje
natural
186
Criterios de Calidad para los Documentos
187
Capítulo 4 Documentación de requisitos (2 horas)
188
Criterios de Calidad de los Requisitos
• - Consensuado
• - Evaluado
• - No ambiguo
• - Válido y actualizado
• - Correcto
• - Consistente
• - Verificable
• - Realizable
• - Trazable
• - Completo
• - Comprensible.
Además de estos criterios de calidad, existen dos reglas básicas de estilo para los requisitos
expresados en lenguaje natural que ayudan a su legibilidad:
• - Frases y párrafos cortos
• - Sólo un requisito por frase
189
Los Requisitos por Sí Mismos
190
Capítulo 4 Documentación de requisitos (2 horas)
191
Preparar el Glosario
• Conceptos clave
– Qué va en el glosario?
– Mantenerse actualizado a lo largo del proyecto
192
Qué es un Glosario?
193
Un Buen Glosario…
• Explica el origen de los términos que • Contiene los términos definidos que
contiene deben usarse durante el proyecto
• Es generalmente accesible a los • Tiene reglas para mantener la
interesados información
• Se orienta hacia las partes interesadas • Es convenido por los interesados
que van a usarlo • Contiene términos definidos de
• Se maneja centralizadamente manera consistente
• Se inicia desde el comienzo del proyecto
y se mantiene a lo largo de su duración
194
Qué va en el Glosario?
• Acrónimos y abreviaciones
195
Terminologia adicional del Glosario
196
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio
del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
197
Capítulo 5 Documentación de Requisitos en lenguaje natural
(1hora)
198
Los 5 procesos de transformación en la percepción y redacción de
requisitos en lenguaje natural
• Cambiar un verbo a nombre (como fallar a falla): “En caso de falla de un sistema, la re
inicialización del sistema debería ser realizada”. Los términos falla del sistema y
reinicializar, cada uno describen qué debería ser analizado de manera más precisa.
199
Los 5 procesos de transformación en la percepción y redacción de
requisitos en lenguaje natural
200
Los 5 procesos de transformación en la percepción y redacción de
requisitos en lenguaje natural
– 3 Cuantificadores Universales
• Los Cuantificadores universales especifican cantidades o frecuencias. Agrupan un set de
objetos y hacen una afirmación a cerca del comportamiento de este set. Cuando se usan
cuantificadores universales, existe el riesgo de que el comportamiento o propiedad
especificada no aplique a todos los objetos dentro del set especificado. Los involucrados
tienden a agrupar objetos, aun algunos de estos objetos podrían ser casos especiales o
excepciones, donde el comportamiento especificado no aplica a todos los objetos de un grupo.
• Debe verificarse si un comportamiento específico realmente aplica a todos los objetos
resumidos a través de los cuantificadores. Cuantificadores universales pueden ser fácilmente
identificados a través de palabras como nunca, siempre, no, ninguno, cada uno, todos,
algunos, o nada.
201
Los 5 procesos de transformación en la percepción y redacción de
requisitos en lenguaje natural
• Ejemplo:
El sistema de restaurante debería ofrecer todas las bebidas a un invitado registrado mayor de 20
años.
• Al menos un aspecto permanece sin especificar en el ejemplo anterior. Qué bebidas deberían
ofrecerse a un invitado que tiene 20 años o menos?
• Aclarando esta pregunta puede llevar a extender los requisitos como sigue:
El sistema de restaurante debería ofrecer:
-Todas las bebidas libres de alcohol a cualquier usuario registrado menor de 21 años
-Todas las bebidas, incluyendo las que contienen alcohol, a cualquier usuario mayor de 20 años.
202
Los 5 procesos de transformación en la percepción y redacción de
requisitos en lenguaje natural
– 5 Palabras de proceso (verbos) especificadas de manera incompleta
• Algunos verbos de proceso requieren más de un nombre para estar completamente
especificados.
El verbo transmitir, por ejemplo, requiere al menos tres suplementos para ser considerado
completo:
– Qué se transmite,
– De dónde se transmite
– A dónde se transmite.
– El uso de procesos especificados de manera incompleta puede ser evitado al máximo y
llevado al mínimo, si los requisitos son formulados usando voz activa en lugar de voz
pasiva.
• Ejemplo : requisitos usando voz pasiva: Para un usuario acceder al sistema , se ingresa la
información.
no es claro quién ingresa la información de acceso. Tampoco es claro dónde y cómo se hace. El
mismo requerimiento usando voz activa podría ser como sigue:
• Ejemplo: Requerimiento usando voz activa: El sistema debe permitir al usuario ingresar su
nombre y clave de acceso usando el teclado del terminal
203
Capítulo 5 Documentación en lenguaje natural (1hora)
204
Los Cinco Pasos Para el Uso de Formatos:
205
Paso 1 Determinar la Obligatoriedad
206
Paso 2 Establecer el núcleo del requisito
• El núcleo para cada requisito es la funcionalidad que este especifica. (e.g., imprimir, salvar, pegar
o calcular). Esta funcionalidad se refiere al proceso.
• Procesos son actividades y pueden ser descritas únicamente usando verbos. El proceso que
describe el comportamiento del sistema por medio de un requisito va a ser descrito en el paso 2.
• Como las palabras de proceso determinan semántica, estas deben ser definidas tan claramente
como sea posible y ser usadas de manera tan consistente como sea posible
207
Paso 3 Caracterizar la actividad del sistema
• Para requisitos funcionales, la actividad del sistema puede ser clarificada como uno de los tres
tipos relevantes:
– Sistema de actividad autónomo: el sistema desempeña el proceso autónomamente.
– Interacción con usuario: El sistema brinda el proceso como un servicio al usuario.
– requisitos de interfaz: el sistema realiza un proceso dependiendo de una tercera parte (e.g.,
otro sistema). El sistema es pasivo y espera por un evento externo.
• En el paso 3, cualquier tipo de actividad del sistema que sea especificada por un requisito del
sistema es documentado usando exactamente una de las tres plantillas de requisitos. Estas
plantillas de requisitos son descritas en mayor detalle en las siguientes secciones.
208
…….Paso 3 Caracterizar la actividad del sistema
• Después de realizar los pasos del 1 al 3, la estructura del requisito se ha desarrollado (vea fig. 5-2).
Las palabras escritas en los paréntesis deben remplazarse de manera acorde.
• En este ejemplo existen varias alternativas dependiendo de si el sistema hace, hace para un
tercero o es capaz de hacer.
209
Paso 4 Insertar los objetos específicos del requisito
• Algunos verbos de proceso requieren uno o más objetos adicionales que deben ser considerados
completos
• En el paso 4, objetos potencialmente perdidos y suplementos de objetos (adverbios) son
identificados y añadidos al requisito. Por ejemplo, la plantilla de requisitos para el verbo de
proceso imprimir es complementado por la información de qué se imprime y dónde se imprime
210
Paso 5 Determinar las condiciones lógicas y temporales (de tiempo)
211
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
212
Capítulo 6 Documentación basada en modelos (5 horas)
213
El término modelo y las propiedades de los mismos
• Un modelo es una abstracción de una realidad existente o de una realidad nueva que se pretende
crear.
• Los modelos de requisitos son modelos conceptuales que definen los requisitos del sistema que
se va a desarrollar.
• Muchos tipos de modelo están disponible, algunos son más fácil de aprender que otros
214
Los elementos de definición de un lenguaje de modelado conceptual
215
Características de los lenguajes de modelado conceptual
216
Las ventajas de los modelos de requisitos
217
3 Tipos de de requisitos a modelar
218
Capítulo 6 Documentación basada en modelos (5 horas)
219
La importancia de los objetivos en ingeniería de requisitos
220
Los dos tipos de descomposición de objetivos
– - “Descomposición de tipo Y” (se deben alcanzar todos los sub-objetivos para cumplir el
objetivo superior – llamado súper objetivo).
– - “Descomposición tipo O” (se debe cumplir al menos uno de los sub-objetivos para cumplir
el súper objetivo).
221
El modelado de objetivos en forma de árboles Y/O
Con respecto a las relaciones de descomposición, uno puede diferenciar entre descomposición Y y
descomposición O. en caso de descomposición Y, cada sub-objetivo debe cumplirse para que el súper
objetivo (la raíz) se cumpla. De otro lado, en descomposición O, se necesita al menos uno de los sub
objetivos para dar cumplimiento al súper objetivo
222
Ejemplo:
223
Capítulo 6 Documentación basada en modelos (5 horas)
224
Casos de uso
• Los Casos de uso fueron propuestos primero en [Jacobson et al. 1992] como un
método para documentar las funcionalidades de un sistema existente o planeado
basados en modelos simples. La aproximación de caso de uso se basa en dos
conceptos que se usan en conjunción entre sí:
225
Qué es el modelado de casos de uso
226
Por qué modelar casos de uso
• Los casos de uso representan los requisitos del sistema de una forma que puede ser
fácilmente entendido por cualquiera de los diferentes interesados de un proyecto.
227
Actor
228
¿Para qué definir los Actores de un Sistema?
• Los roles que juegan los actores proveen una perspectiva sobre por qué un caso de uso
se necesita y cuál debe ser su resultado.
• Diferencias sutiles en el rol ante un mismo caso de uso del sistema determinan la
necesidad de identificar variaciones en la descripción de la interacción entre el actor y
el sistema.
229
Fuentes de Identificación de los Actores
• Diagramas de Contexto
230
¿Cómo Identificar los Actores?
• El mismo usuario puede jugar varios roles en el sistema y por tanto requiere
varias abstracciones (actores).
231
¿Cómo Identificar los Actores?
232
¿Cómo Describir los Actores?
• El nombre debe ser un sustantivo singular que represente el rol que el actor juega
en el sistema.
• La breve descripción debe dar una explicación sobre el rol del actor en el sistema.
– Nombre: estudiante
– Descripción: cualquier estudiante activo de la universidad que tiene la
posibilidad de inscribirse a los cursos ofrecidos para el semestre actual.
233
Guías de Calidad para los Actores
• Generalmente un rol (Actor) puede ser desempeñado por dos o mas personas.
• Evitar la definición excesiva de Actores. Los actores que jueguen roles similares
pueden unirse en uno solo.
234
Caso de Uso
• Es la descripción de una secuencia de acciones,
incluyendo sus variantes, que llevan a un
resultado observable y de valor para un actor.
235
Ciclo de vida de un Caso de Uso
Solicitar Crédito
Identificado
Detallado
• Detallado:
– Detallar flujos de eventos
– requisitos especiales
– Pre-Condiciones y Post-Condiciones
236
Utilidad de los casos de Uso
237
Utilidad de los casos de Uso
• Base para definir las iteraciones del proyecto y por lo tanto su administración y
monitoreo.
238
¿Cómo Identificar Casos de Uso?
• Una vez identificados los actores, debemos preguntarnos qué metas requiere cumplir
cada actor al utilizar el sistema. Cada meta que defina un valor observable
corresponde a un caso de uso.
239
¿Cómo Identificar Casos de Uso?
240
Breve Descripción de los Casos de Uso
• El nombre de un caso de uso debe reflejar una meta que el actor cumple al usar el
sistema.
241
Ejemplo de Identificación de Casos de Uso
Solicitar un crédito
Solicitante
Entregar Información
adicional para el crédito
Aceptar el crédito
242
Relaciones entre Actores y Casos de Uso
243
Ejemplo
Sistema de Procesamiento de Créditos
Solicitar un crédito
Solicitante
Entregar Información
adicional para el crédito
Aceptar el crédito
244
Estructuración del Modelo de Casos de Uso
• Clarifica el modelo
• Reduce la complejidad
245
Estructuración del Modelo de Casos de Uso
• Inclusión
• Extensión
• Generalización de Casos de Uso
• Generalización de Actores
• Paquetes de Casos de Uso
246
Inclusión
• Los flujos de dos o más Casos de Uso coinciden en alguna secuencia de pasos
(subflujo)
• Los casos de Uso hacen referencia al caso de Uso abstracto que incluyen
• El Caso de Uso abstracto no hace referencia a los Casos de Uso que lo incluyen
247
Inclusión
<<include>>
Caso de Uso A Caso de Uso B Caso de Uso A
<<include>>
Caso de Uso C
Caso de Uso B
248
Ejemplo
<<include>>
Consultar saldo
<<include>>
Ingresar cuenta
y clave
Pagar servicios
249
Extensión
250
Ejemplo
<<extend>>
Realizar llamada
telefónica
Autorizar
llamada
Por cobrar
251
Generalización de Casos de Uso
252
Ejemplo
Administrar Tabla
253
Generalización de Actores
• Si dos (o mas) actores diferentes cumplen el mismo papel en un Caso de Uso, se crea
un Actor abstracto que los generaliza
• Asignar al nuevo Actor un nombre que se identifique claramente con lo que éste
realiza
254
Ejemplo
Auditor
Auditor
Supervisor
255
Ejemplo
Prospecto Agente de
Afiliaciones
Verificar Tarjeta de Crédito
<<include>>
<<extend>>
<<extend>>
<<include>>
Administrador del
Sistema
256
Paquetes de Casos de Uso
• Reduce la complejidad
• Define fronteras
• Mejora la comprensión
257
Buena modularización
258
Guías de modularización Casos de Uso
• Tener en cuenta la estructura propia del negocio. Un paquete de Casos de Uso puede
corresponder a un Proceso de Negocios.
• Agrupar en un paquete los Casos de Uso de propósito general, aún si son abstractos
(Ejemplo: Localizar cliente por nombre). Los nombres de dichos paquetes no
necesariamente guardan relación con el proceso de negocio
259
Ejemplo
Cobranzas Facturación
260
Identificando actores y casos de uso del sistema a partir de los
diagramas de actividades.
– ¿Si esta actividad se soporta con el nuevo sistema se puede obtener una mejora
cuantificable o una ejecución óptima del proceso?
– Si la respuesta es sí, identificar quién o quiénes son los actores que utilizarán el
sistema, identificar los casos de uso y las características que se requieren para
“envisionar” una mejora en el proceso.
261
Ejemplo
Registrar Solicitud
Digitador Entregar Reporte
Central de Riesgo
262
Ejemplo
Rechazar Solicitud
263
Estructuración de Casos de Uso
• RECOMENDACIÓN FINAL:
– Mantenga un sólo paquete y diagrama de casos de uso hasta que por su tamaño
ya no se pueda entender. En este momento se debe modularizar en paquetes.
264
Las especificaciones de casos de uso
265
Esquematizar un Caso de Uso
Escenarios de casos de
Inicio del caso de uso
Escenario 1
uso
Flujo básico
266
Esquematizar un Caso de Uso
• El flujo básico presenta los principales pasos para lograr la meta del caso
de uso. Los flujos alternativos presentan manejo excepcional u opcional
dentro del caso de uso.
267
Ejemplo del esquema de un Caso de Uso – Solicitar un Crédito
Flujo Básico
1. Seleccionar ‘Solicitar un Crédito’
2. Verificar Información Básica
3. Registrar información del valor y
destinación del crédito
4. Anexar documentos ¿Qué otros flujos
5. Enviar la solicitud alternativos
Flujos Alternativos podríamos definir?
A1. Ingresar al Sistema
A2. Actualizar Información Básica
A3. Cancelar solicitud
…
268
¿Por Qué Esquematizar un Caso de Uso?
269
Flujo de Eventos
• Un Flujo Básico
– Escenario feliz.
– Describe un escenario satisfactorio desde el inicio del caso de uso hasta cumplir con la meta
del mismo.
270
¿Cómo estructurar el flujo de eventos?
• Básico
– ¿Cuál evento inicia el caso de uso?
– ¿Cómo termina el caso de uso?
– ¿Cómo se repite cierto comportamiento en el caso de uso?
• Alternativos
– ¿Hay situaciones opcionales?
– ¿Qué casos raros se pueden presentar?
– ¿Qué variantes se pueden presentar?
– ¿Qué puede salir mal?
– ¿Qué no puede pasar?
– ¿Qué recursos pueden bloquearse?
271
Ejemplo
Sección Contenido
Designación UC-12-37
Nombre Diríjase al destino
Autores John Smith, Sandra Miller
Prioridad Importancia para el éxito del sistema: alta
Riesgo tecnológico: alto
Criticalidad Alta
Fuente C. Warner (experto en el dominio de sistemas de navegación)
Persona responsable J. Smith
Descripción El conductor del vehículo digita el nombre del destino.
El sistema de navegación guía al conductor al destino deseado.
Evento desencadenante El conductor desea dirigirse a su destino
Actores Conductor, servidor de información de tráfico, sistema satelital
GPS
Precondiciones El sistema de navegación es activado
Post-condiciones El conductor ha llegado a su destino
Resultado Ruta guía al destino
Escenario principal 1. El sistema de navegación pide el destino deseado
2. El conductor ingresa el destino deseado
3. El sistema de navegación señala el destino en su mapa
4. Basado en la posición actual y el destino deseado, el
sistema de navegación calcula una ruta adecuada
5. El sistema de navegación compila una lista de puntos
de referencia
6. El sistema de navegación muestra un mapa de la
posición actual y muestra la ruta al próximo punto de
referencia
7. Cuando se llega al último punto de referencia, el
sistema de navegación muestra “destino alcanzado” en
la pantalla.
Escenarios alternativos 4.a. El cálculo de la ruta debe respetar la información de
tráfico y evitar congestiones de tráfico.
4.a.1 El sistema de navegación le pide al servidor información
del tráfico actualizada
4.a.2 El sistema de navegación calcula una ruta que no
contiene congestiones de tráfico.
Escenarios de excepción Evento desencadenante: El sistema de navegación no recibe
una señal GPS del sistema satelital GPS
Cualidades QR.04 (tiempo de reacción luego de entrada hecha por el
usuario)
QR.15 (comodidad de uso)
(QR = requerimiento de calidad)
272
Capítulo 6 Documentación basada en modelos (5 horas)
273
Las tres perspectivas de los requisitos documentados con Modelos
274
Las tres perspectivas de los requisitos documentados con Modelos
• 2 Perspectiva funcional: Esta perspectiva documenta qué información del contexto del
sistema está siendo manipulada por el sistema a desarrollar y qué datos están siendo
transmitidos al contexto del sistema por el sistema.
– Diagramas de Flujo de Datos
– Diagramas de Actividad UML
• 3 Perspectiva de comportamiento: En esta perspectiva el asentamiento del sistema en
el contexto del sistema se documenta basado en estados. Esto se hace, por ejemplo,
documentando la reacción del sistema a eventos dentro del contexto del sistema,
documentan las condiciones que desencadenan un cambio de estado, o documentan
los efectos que el sistema tiene en su entorno.
– Diagramas de Estado UML
275
Capítulo 6 Documentación basada en modelos (5 horas)
276
El foco de la perspectiva de datos sobre requisitos
277
Los diagramas de entidad-relación
278
Diagrama de Clases en UML
<nombre de la clase>
atributo
atributo : tipo
atributo : tipo = <valor>
operacion () : return
operacion (argumento : tipo) : return
operacion (argumento1 : tipo, argumento2 : tipo = <valor>) : return
279
Atributos
280
Notación de Atributos
281
Notación de Atributos
• Durante diseño se requiere que todo atributo quede tipificado y los que requieran
valores iniciales sean indicados:
– Nombre: String
– Telefono: Integer
– Saldo: Decimal = 0
282
Comportamiento de un Objeto
283
Ejemplo de Operaciones
– Modificadores
• borrar, añadir, extraer, eliminar.
– Selectores
• numeroElementos, estaVacia, posicion.
– Iteradores
• primerElemento, siguienteElemento
284
Tipos de Operaciones
• Constructor
– Operación que crea un objeto y/o inicializa su estado.
• Destructor
– Operación que libera el estado de un objeto y/o destruye el propio objeto.
285
Relaciones
286
Asociación
• Una asociación es una conexión entre dos clases, signigicando alguna dependencia
semántica entre ellas.
287
Asociación
Nombre
Clases Asociación Roles
em plea
em pleador_de em pleado_de em pleado
com pañía
0..1 0..*
Cardinalidad
288
Cardinalidad
289
Cardinalidad: Indicadores Comunes
• 1: Exactamente 1
• 0..*: Cero o más
• 1..*: Uno o más
• 0..1: Cero o Uno
• 3..7: Rango específico
• 1..3,7: Combinación (1,2,3 ó 7)
290
Asociación
facturado a
factura cliente
291
Agregación y Composición
• La relación entre un todo y sus partes representa una dependencia semántica más
fuerte, lo cual amerita un distintivo especial. Este tipo de relaciones se conocen como
agregación y composición.
Todo Parte
controles
ventana control
0..*
292
Composición
controles
ventana control
0..*
293
Agregación
vehiculo motor
294
Relación Reflexiva
• Un objeto de una clase puede tener relaciones con otros objetos de la misma clase.
Cuenta Contable
sub cuenta
295
Relaciones Durante Análisis
296
Ejemplo de diagrama de Clases UML
1
Ships to
User 1 Billing CC
Atributos -User Name 0..3 0..*
-Credit Card Number
-Password Pays with -Billing Address
Métodos +Get Billing CC Info() -Expiration Date Shipping
+Get Shipping Info() 1
+Verify CC with Bank() -Shipping Address
+Get History() +Get Purchase Auth() -Last Used Date
Pays with
+Get PayPal() +Add CC() +Add New Address()
Buys +Update CC Exp Date() +Change Address()
1
0..* +Delete Address()
+Check Zip()
Purchase History PayPal
-Purchase Category -PayPal Account
-Purchase Item ID 0..1
+Verify Account()
-Quantity +Get Purchase Auth()
-Date Purchased
+Call Preference Engine()
297
El foco de la perspectiva funcional de requisitos
298
Funcional: Diagrama de Flujo de Datos
• Brinda una representación visual de cualquier entidad externa que proporciona datos
o recibe datos del sistema
299
Componentes del Diagrama de Flujo de Datos
• Fuentes/salidas de datos
300
Jerarquía del Diagrama de Flujo de Datos
301
Diagrama de Flujo de Datos - Contexto
0
Hungry Order Food Order
Kitchen
Customer Donut
Ordering
Receipt
System
Management Reports
Donut Shop
Manager
Ummmm.
Donuts!
302
Diagrama de Flujo de Datos – Nivel 0
1.0
Hungry Order Food Order
Receive Kitchen
Customer
and
Receipt Transform
Order
Nota: Esto se
muestra algunas 2.0 3.0
veces con Donuts Inventory
Update Sold Data Update
rectángulos Donuts Inventory
redondeados. Sold File File
Formatted
Formatted
Donuts Sold
Inv. Data
Donuts Sold File Data Inventory File
303
Funcional: Diagramas de Actividad UML
304
Funcional: Diagramas de Actividad UML
305
Funcional: Diagramas de Actividad UML
[ no hay café ] [no hay gaseosa]
Encontrar Bebida
[café encontrado]
poner café en filtro agregar agua al la jarra conseguir tasas conseguir lata de gaseosa
prender la máquina
^cafetera.Prender
Hervir el café
la luz se apaga
306
Capítulo 6 Documentación basada en modelos (5 horas)
307
Capítulo 6 Documentación basada en modelos (5 horas)
308
Modelos desde el punto de vista de el comportamiento
309
Comportamiento: Diagramas de Estado UML
• Cada clase puede tener un diagrama de transición de estados para describir el ciclo de
vida de sus objetos.
310
Diagramas de Transición de Estados
<nombre>
entry: entrada
evento[ condición ] / acción exit: salida
do: actividad
on evento( argumentos )[ condición ]: accion
Estado Final
Estado Inicial Estado
Transición
311
Estado
• Identifica un período de tiempo del objeto en el cual está esperando alguna operación,
mantiene un estado característico o puede recibir estímulos de cierto tipo.
312
Transición Simple
• Es una relación entre dos estados que indica que un objeto en el primer estado puede
entrar al segundo y ejecutar ciertas operaciones.
313
Transición Simple
• Event(args):
– Descripción del evento que da lugar a la transición
• Condition:
– Expresión que indica condiciones adicionales al evento necesarias para que la
transición ocurra.
314
Transición Simple
• Action:
– Mensaje que invoca una operación del objeto y es la que causa el cambio de
estado. La acción es una operación rápida y sin interrupciones.
• Target:
– Algún objeto que recibe la transición.
315
Funcionamiento Interno
316
Acciones y Actividades
• Las acciones y las actividades son procesos, normalmente implementados por alguna
operación de la clase.
• Una acción se considera una acción que se hace rápidamente y sin interrupciones.
• Una actividad puede tomar mayor tiempo y puede ser interrumpida por algún evento.
317
Diagrama de Transición de Estados
seleccionar siguiente
Chequeando item[ faltan items por
do: chequear item chequear ]
cancelado
318
Diagrama de Transición de Estados
activo
seleccionar siguiente
Chequeando item[ faltan items por
do: chequear item chequear ]
cancelado
cancelado despachado
319
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
320
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
321
El significado de la validación requisitos
322
Cambios necesarios por un error no en los requisitos
323
El costo de corregir errores en los Requisitos
Costo $
ETAPA
.5 - 1 Levantamiento
2.5
Documentación
5
Validación
10
Programación
25
Pruebas
100
Mantenimiento
La regla 1-10-100:
El costo de corregir un error de requisitos en la etapa de Mantenimiento puede ser hasta
100 veces mas costoso
324
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
325
El significado de los conflictos con respecto a los requisitos
326
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
327
Los 3 Aspectos de Calidad de los Requisitos
• 1 Contenido: Todos los requisitos relevantes han sido elicitados y documentados con
el nivel apropiado de detalle?
• 2 Documentación: Están documentados todos los requisitos con respecto a las guías y
estructuras de documento predeterminadas para documentación y especificación?
• 3 Concordancia: Concurren todos los involucrados con los requisitos documentados y
se han resuelto todos los conflictos conocidos?
Cada uno de los tres objetivos implica un acercamiento individual que se enfoca en
aspectos específicos de la calidad de los requisitos.
328
Criterio de Validación para Contenido
• La validación de requisitos con respecto al aspecto de calidad “contenido” es exitosa una vez la
validación de requisitos haya sido aplicada a los siguientes tipos de error y no se hayan detectado
errores significativos.
– Completitud: Están completos (grupo de todos los requisitos): Todos los requisitos relevantes al sistema a
desarrollar (para la siguiente entrega del sistema) se han documentado?
– Completitud: Están completos (requisitos individuales): Cada requerimiento contiene toda la información
necesaria?
– Trazabilidad: Todas las relaciones relevantes trazables se han definido? (e.g., a fuentes relevantes de
requisitos)?
– Exactitud/suficiencia: Reflejan los requisitos adecuadamente los deseos y necesidades de los
involucrados?
– Consistencia: Es posible implementar todos los requisitos definidos por el sistema para ser desarrollados
conjuntamente? No hay contradicciones?
– Sin decisiones prematuras de diseño: Hay algunas decisiones de diseño anticipado presentes en los
requisitos que no se hayan inducido a través de condiciones? (e.g., condiciones que especifican una
arquitectura específica de relación cliente-servidor que se vaya a usar)
– Verificabilidad: Es posible definir la aceptación y criterio de prueba basado en os requisitos? Se ha
definido el criterio?
– Necesidad: Contribuye cada requerimiento al cumplimiento de los objetivos definidos?
329
Validación de Criterio para Documentación
330
Criterio de Validación para Concordancia
• Definición: El aspecto de calidad “concordancia” tiene que ver con chequear los
requisitos por fallas en la conformidad de los requisitos entre involucrados.
– Acordado: está cada requerimiento acorde para todos los involucrados relevantes?
– Acordado después de cambios: está cada requerimiento acordado con todos los
involucrados relevantes después de que se ha cambiado?
– Conflictos resueltos: se han resuelto todos los conflictos conocidos con respecto a los
requisitos?
331
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
332
Conocer los 6 principios de la validación de requisitos
333
Conocer los 6 principios de la validación de requisitos
• Quienes? Depende de los objetivos de la validación así como de los requisitos que van
a ser auditados.
• Dos aspectos tienen que ser considerados al definir los involucrados que participarán:
– Evitar que el autor de un requerimiento sea también la persona que lo valide.
– Los auditores adecuados pueden identificarse dentro o fuera de la organización
desarrolladora.
• Auditorías internas se realizan por involucrados que son miembros de la organización desarrolladora
y pueden usarse para validar resultados intermedios o requisitos preliminares.
– Mas Fácil!
• Una auditoría externa requiere un nivel de esfuerzo más alto porque identifica los auditores y
(potencialmente) los contrata a cambio de un pago.
– Mas Difícil y mas costoso
– Deben familiarizarse con el contexto del sistema a desarrollar.
– Debería realizarse solo en requisitos que acusen un alto nivel de calidad.
334
Conocer los 6 principios de la validación de requisitos
335
Conocer los 6 principios de la validación de requisitos
336
Conocer los 6 principios de la validación de requisitos
– Buen entendimiento y expresividad son fortaleza de los textos en Lenguaje Natural, sin
embargo, su debilidad es ambigüedad potencial y la dificultad de expresar circunstancias
complejas.
– Los Modelos gráficos son capaces de describir circunstancias complejas de manera adecuada,
pero las construcciones de modelaje individual son restringidas en expresividad.
337
Conocer los 6 principios de la validación de requisitos
• De esta manera, errores (e.g., ambigüedad) puede identificarse en el requerimiento. Este tipo de
validación, sin embargo, demanda mucho recursos porque el desarrollo de actividades subsecuentes
debe ser ejecutado al menos en parte.
338
Conocer los 6 principios de la validación de requisitos
339
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
340
Técnicas para la validación de requisitos
341
3 Técnicas formales para la validación de requisitos
• 1 Comentarios de experto
• Objetivo: recibir la opinión de experto del compañero con respecto a la calidad de un
requerimiento.
• Metodologia: Al comentar, el autor pasa sus requisitos a otra persona (e.g., compañero de
trabajo).
342
3 Técnicas formales para la validación de requisitos
• 2 Inspección (También conocida como revisión técnica)
• Definición y Objetivo: Las inspecciones de software o cualquier otro tipo de producto son hechas
para chequear sistemáticamente artefactos de desarrollo por errores aplicando un proceso
estricto
• Fase 1 Planear,
– El objetivo de la inspección, los resultados de trabajo que van a ser inspeccionados, y los
roles y participantes
• Organizador: planea y supervisa el proceso de inspección
• Moderador: lidera la sesión y se asegura que el proceso de inspección predeterminado se siga. Es
recomendable seleccionar un moderador neutral porque el moderador puede potencialmente
balancear opiniones opuestas de autores e inspectores.
• Autor: el autor explica los requisitos que ha creado a los inspectores en la fase de vistazo general y
luego se hace responsable de corregir los errores identificados
• Lector: el lector introduce los requisitos a inspeccionar sucesivamente y guía los inspectores a través
de ellos. El rol del lector debe darse a un involucrado neutral de tal manera que los inspectores
puedan centrar su atención en los requisitos en lugar que en la interpretación de un autor. A
menudo el moderador también es el lector.
• Inspectores: los inspectores son los responsables de encontrar errores y comunicar lo que
encuentren a los otros miembros del equipo del proyecto.
• Tomador de minutas: esta persona toma las notas de los resultados de la inspección.
343
3 Técnicas formales para la validación de requisitos
344
3 Técnicas formales para la validación de requisitos
• 3 Recorrido
• Objetivo: Identificar fallas de calidad dentro de los requisitos pro medio de un proceso
compartido y para ganar un entendimiento compartido de los requisitos entre todas las personas
implicadas. El Recorrido es menos estricto que una inspección
• Roles:
– revisor (comparable con inspector),
– autor,
– tomador de minutas,
– potencialmente el moderador, (Opcional)
• Preparación: Para prepararse para un ensayo, los requisitos a validar se entregan a los
participantes y se inspeccionan.
• Ejecución: Durante la sesión de ensayo, los participantes discuten los requisitos a validar paso a
paso, bajo la guía del moderador/lector. Usualmente, el autor del requerimiento es el que expone
el requerimiento a los otros participantes y se identifican requisitos alternativos, se toman
decisiones, y se explica el criterio para dichas decisiones).
• Resultado: Un tomador de minutas documenta las fallas de calidad que han sido identificadas
durante la sesión y se elabora un acta de acciones y fechas de compromisos.
345
3 Técnicas Complementarias para la validación de requisitos
– Perspectiva cliente/usuario: los requisitos se chequean desde la perspectiva del cliente o del
usuario ya que ellas describen las funciones y cualidades deseadas del sistema.
– Perspectiva del arquitecto de software. Los requisitos se chequean desde la perspectiva del
arquitecto de software para comprobar si contienen toda la información necesaria para el
diseño arquitectónico (e.g., si todas las propiedades relevantes de desempeño se han
descrito).
– Perspectiva del probador: los requisitos son chequeados desde la perspectiva del probador
para comprobar si ellos contiene la información necesaria para obtener casos de prueba de
los requisitos.
» …………………..Continúa
346
3 Técnicas Complementarias para la validación de requisitos
• Además, perspectivas adicionales que surgen del contexto individual del desarrollo del
proyecto pueden ser creados en la medida que se necesiten.
…………………..Continúa
347
3 Técnicas Complementarias para la validación de requisitos
348
3 Técnicas Complementarias para la validación de requisitos
349
3 Técnicas Complementarias para la validación de requisitos
• C) Usar Listas de Chequeo para Validar
• Definición: Una lista de chequeo para validación de requisitos contiene preguntas que ayudan a la
detección de errores y pueden usarse en todas las técnicas de validación de requisitos
previamente descritas
• Metodología:
– Antes de poder usar una lista de chequeo, cada pregunta o afirmación debe definirse
basándose en:
• Los tres aspectos de calidad de los requisitos .
• Principios de validación de requisitos .
• Criterio de calidad para documentos de requisitos .
• Criterio de calidad para requisitos individuales .
• Experiencias de los auditores de proyectos anteriores
• Estadísticas de error [Chernak 1996]
– Formas híbridas de aplicación de listas de chequeo también son posibles.
• Por ejemplo, una lista de chequeo puede contener preguntas obligatorias para lectura basada en
perspectiva y puede contener sugerencias que el auditor puede que siga o no.
– Una gran cantidad de preguntas puede hacer que sea más difícil de usar la lista de chequeo
– Es recomendable diseñar la lista de chequeo para que no sea más larga de una página [Gilb y Graham
1993].
350
Capítulo 7 Validación y negociación
de requisitos (2 ½ horas)
351
4 Elementos de negociación de requisitos
1. Identificación de conflictos
2. Análisis y Tipos de Conflictos
3. Técnicas de Resolución de conflictos
4. Documentación de la resolución de conflictos
352
Identificación de Conflictos en los requisitos
• 1 Identificación de conflictos
353
Análisis y Tipos de conflictos entre requisitos
354
Análisis y Tipos de conflictos entre requisitos
• Un conflicto de interés:
– Por ejemplo cuando un involucrado se enfoca primariamente en mantener los costos del sistema
planeado al mínimo, mientras otro involucrado, primariamente, desea un alto nivel de calidad.
• Un conflicto de valor: se caracteriza por diferencias en los valores fundamentales que los involucrados tengan
respecto a alguna circunstancia .
– Por ejemplo, un conflicto de valor surge cuando un involucrado favorece tecnologías abiertas y otro
involucrado favorece tecnologías cerradas
• Un conflicto de relación se caracteriza por fuertes emociones, conceptos estereotípicos de relaciones,
comunicación deficiente, o comportamiento interpersonal negativo entre involucrados (i.e., insultos, falta de
respeto).
– Por ejemplo, dos involucrados de igual rango o posición (e.g., líderes de departamento) rechazan los
requisitos del otro y tratan de distinguirse forzando sus propios requisitos en el proyecto.
• Un conflicto estructural: Niveles desiguales de autoridad o poder.
– Por ejemplo entre un empleado y su superior si el superior invariablemente rechaza requisitos que el
empleado ha definido.
• Combinaciones entre ellos:
– Por ejemplo, un conflicto puede ser un conflicto de relación con claros componentes estructurales.
Similarmente, un conflicto de interés puede ser un conflicto de valores también.
355
Técnicas de resolución de conflictos
• 3 Resolución de conflictos
» …..continua
356
Técnicas de resolución de conflictos
357
Técnicas de resolución de conflictos
b) Matriz de decisión, se crea una tabla que contiene las soluciones alternativas en las columnas y
todos los criterios relevantes de decisión en las filas. Para cada combinación de criterios y
alternativa de solución, se hace una valoración,
a) por ejemplo por medio de una escala de puntuación que vaya de irrelevante (0 puntos) a
relevante (10 puntos).
b) Para encontrar una solución, se calculan las sumas de las columnas; i.e., la valoración del
criterio de cada solución alternativa se suma. La solución alternativa con el puntaje más alto
se acepta como la decisión.
358
Ejemplo de Matriz de Decisión
359
Documentación para la resolución de conflictos
• Documentación de la resolución de conflictos
• Si una resolución de conflictos no se documenta adecuadamente, pueden surgir las siguientes 2 amenazas
principales (entre otras) para el proyecto.
– Manejo repetido de conflictos:
• Cierto conflicto puede surgir por segunda vez durante el proceso de ingeniería de requisitos.
• Sin la documentación apropiada de la resolución del conflicto, el conflicto debe ser analizado y
resuelto de nuevo..
– Resolución inapropiada de conflictos:
• El conflicto debe ser investigado y resuelto de nuevo.
• Sin la adecuada documentación, información relevante que haya sido considerada durante el
análisis inicial y resolución puede ser pasado por alto y la nueva resolución del conflicto puede llevar
de nuevo a resultados falsos.
En ambos casos, adecuada documentación del conflicto y su resolución soporta los procesos de ingeniería de
requisitos y asegura que información relevante ya conocida puede ser considerada
360
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
361
Capítulo 8 Gestión de requisitos (2 ½ horas)
362
Conocer el propósito y definición de los esquemas de atributos
363
Ejemplo de un Requisito y sus atributos
364
Conocer tipos importantes de atributos de los requisitos
365
tipos importantes de atributos de los requisitos
366
Capítulo 8 Gestión de requisitos (2 ½ horas)
367
Dominar y utilizar vistas sobre los requisitos
• Para mantener la complejidad de los requerimientos manejable para el equipo del proyecto, es
necesario consultar o acceder a la información de los requerimientos selectivamente y así
filtrarlos dependiendo de la tarea actual.
– Las Perspectivas o vistas de los requerimientos muchas veces son definidas para diversos
roles en el proceso de desarrollo.
• Ejemplos incluyen perspectivas para:
• el arquitecto,
• el programador,
• el gestor del proyecto, y
• el probador
• Dos tipos de Vistas Principales:
• Perspectivas selectivas en la fundación de requerimientos
• Perspectivas condensadas de los requerimientos
368
Dominar y utilizar vistas sobre los requisitos
• Perspectivas selectivas de los requerimientos
En los tres casos de la figura las vistas son creadas al seleccionar los tipos de atributos, así como al determinar los atributos que deben
estar disponibles.
La definición de la primera perspectiva (1), por ejemplo, determina que solo esos requerimientos de los que “J. Locke” es responsable ,
son seleccionados, y que tienen la estabilidad de “fijos”.
De todos los requerimientos seleccionados, solo los atributos “identificador”, “nombre”, “descripción”, y “autor” están siendo
considerados.
369
Dominar y utilizar vistas sobre los requisitos
• Perspectivas condensadas de los requerimientos
• Perspectivas condensadas pueden definirse al agregar los datos contenidos en la base de requerimientos. Una perspectiva
condensada puede, por ejemplo, contener información en el porcentaje de requerimientos que proceden de una fuente particular.
370
Capítulo 8 Gestión de requisitos (2 ½ horas)
371
Conocer métodos para priorizar requisitos
372
Dominar y utilizar 4 técnicas para priorizar requisitos
373
Dominar y utilizar 4 técnicas para priorizar requisitos
3. Clasificación Kano:
374
Dominar y utilizar 4 técnicas para priorizar requisitos
375
Dominar y utilizar 4 técnicas para priorizar requisitos
376
Capítulo 8 Gestión de requisitos (2 ½ horas)
377
Conocer las ventajas de la trazabilidad de los requisitos
378
Dominar y utilizar distintos tipos de relaciones de trazabilidad
Hay tres clases de relaciones de trazabilidad que se deberían tener en cuenta:
• 1- Trazabilidad pre-especificación de requisitos.
– Es trazar enlaces entre requerimientos y esos artefactos que son la base de los
requerimientos, e.g., artefactos como la fuente de origen de un requerimiento (artefactos
previos).
• 2- Trazabilidad pos-especificación de requisitos.
– Comprende la trazabilidad de información entre requerimientos y artefactos de actividades
de desarrollo subsecuente, por ejemplo, tales artefactos pueden ser componentes,
implementación, o casos de prueba que pertenecen a un requerimientos (artefactos
posteriores).
• 3- Trazabilidad entre requisitos. [Gotel y Finkelstein 1994]
– La trazabilidad entre requerimientos se refiere a mapear dependencias entre
requerimientos. Un ejemplo de este tipo de trazabilidad es la información que un
requerimiento refina otro requerimiento, lo generaliza o lo remplaza.
• Guía: Sólo se debería mantener aquella información de traza para la que exista un uso claro.
• Guía: La información a grabar debe ser escogida con respecto al propósito al que va a servir.
379
Dominar y utilizar formas de representación de las relaciones de
trazabilidad
• Algunas formas típicas de representar la trazabilidad son:
• Referencias basadas en texto e hipervínculos
– Esta manera simple de representar información de trazabilidad de un requerimiento consiste
en anotar el artefacto objetivo como una referencia textual en el requerimiento (artefacto
inicial) o establecer un hipervínculo entre el artefacto inicial y el artefacto objetivo.
• Matrices de rastreo
– Las filas en la matriz de rastreo contienen los artefactos iniciales (requerimientos). En las
columnas, los artefactos objetivo (e.g., fuentes de requerimientos, artefactos de desarrollo,
requerimientos) son representados. Si un vínculo de rastreo existe entre un artefacto inicial
en la fila n y un artefacto objetivo en la columna m, la celda (n,m) se marca en la matriz de
rastreo.
• Gráficas de Rastreo
– Una gráfica de rastreo es una gráfica en que tozos los nodos representan artefactos y todas
las aristas representan relaciones entre artefactos. La distinción entre diferentes artefactos y
tipos de trazabilidad pueden realizarse por medio de la asignación de diferentes atributos a
los nodos y aristas de la gráfica.
…. Ver ejemplos.
380
Dominar y utilizar formas de representación de las relaciones de
trazabilidad
Tipos de Trazabilidad de Requisitos
Trazabilidad entre
Requisitos
381
Ejemplo de tres tipos distintos de Trazabilidad
Trazabilidad Pre-RS
se origina en
Interesados o R-14 El sistema de navegación deberá
Relacionados ofrecer al usuario la habilidad de
se origina en ingresar el destino a través de
comandos de voz.
Diseño Definitivo
Casos de Prueba
Implementación
382
Ejemplo de Matriz de Trazabilidad
Artefactos Objetivo
383
Ejemplo de una gráfica de trazabilidad
Req-1
Req-6 Comp-3
C-1
Req-2
C-2
C-4
Req-5
Req-3
C-3
Comp-2
Comp-1
Información a cerca del contexto del
sistema.
Requisitos
Componentes
384
Capítulo 8 Gestión de requisitos (2 ½ horas)
385
Dominar y utilizar el versionado de requisitos
386
Dominar y utilizar la formación de configuraciones de requisitos
387
Dominar y utilizar la formación de líneas de base de requisitos
• Sirven para:
• Bases para planear la entrega:
• Estimar el esfuerzo implicado en la implementación.
• Comparación con productos competentes:
388
Capítulo 8 Gestión de requisitos (2 ½ horas)
• 8.1.1 Conocer el propósito y definición de los esquemas de atributos
8.1.2 Conocer tipos importantes de atributos de los requisitos
8.2.1 Dominar y utilizar vistas sobre los requisitos
8.3.1 Conocer métodos para priorizar requisitos
8.3.2 Dominar y utilizar técnicas para priorizar requisitos
8.4.1 Conocer las ventajas de la trazabilidad de los requisitos
8.4.2 Dominar y utilizar distintos tipos de relaciones de trazabilidad
8.4.3 Dominar y utilizar formas de representación de las relaciones de trazabilidad
8.5.1 Dominar y utilizar el versionado de requisitos
8.5.2 Dominar y utilizar la formación de configuraciones de requisitos
8.5.3 Dominar y utilizar la formación de líneas de base de requisitos
8.6.1 Conocer la importancia de los cambios de requisitos
8.6.2 Conocer las funciones y miembros del comité de gestión de cambios
8.6.3 Dominar y utilizar los elementos de una solicitud de cambio de requisito
8.6.4 Dominar y utilizar distintos tipos de solicitudes de cambio
8.6.5 Dominar y utilizar un proceso para gestionar solicitudes de cambo.
389
Conocer la importancia de los cambios de requisitos
• Los requisitos cambian y evolucionan a lo largo del ciclo de vida de un sistema. Los cambios en
los requisitos son gestionados y tratados en proceso de gestión de cambio sistemático.
• Cambios en los requerimientos per sé no son negativos.
• Las razones de cambio en los requerimientos pueden ser incontables:
– errores en los requisitos
– requerimientos incompletos,
– los involucrados,
– modificaciones de la ley,
– nuevas tecnologías,
– competencia adicional en el mercado, ….. Entre otras.
• Si los cambios en los requerimientos ocurren frecuentemente, el desarrollo del sistema que está
acordado con todos los involucrados implicados se hace casi imposible
• Si son muy poco frecuentes puede significar falta de interés o de patrocinio en el proyecto
• Cuando los cambios en requisitos se consideran necesarios, éstos deben documentarse en la
forma de solicitud de cambio y enviarse al comité de control de cambios.
390
Conocer las funciones y miembros del comité de gestión de cambios
391
Conocer las funciones y miembros del comité de gestión de cambios
392
Dominar y utilizar los elementos de una solicitud de cambio de
requisitos
393
Información adicional en la Solicitud de Cambio
• Además de la información del cambio acá presentada, la siguiente información para gestión de
cambio de requerimientos es de gran ayuda:
– Validador de cambios: la persona que verifica si el cambio se ha realizado correctamente.
– Estado de análisis de impacto: marca si un análisis de impacto ha sido realizado en la
solicitud de cambio
– Estado de decisión del CCB: marca si la junta de control de cambio ya ha decidido a cerca de
la solicitud de cambio.
– Prioridad del CCB: Documenta la prioridad de la solicitud de cambio asignada por la junta de
control de cambio.
– Responsable: documenta la persona que está a cargo de realizar la solicitud del cambio.
– Entrega del sistema: documenta en qué entrega del sistema tiene que estar implementado el
requerimiento a cambiar.
394
Dominar y utilizar distintos tipos de solicitudes de cambio
395
Dominar y utilizar un proceso para gestionar solicitudes de cambo.
Analisis de Impacto
Evaluación de
lCambio
Priorización al cambios
en Requisitos
Comunicación del
rechazo
Asignación del cambio
A un proyecto de cambios
397
CONTENIDO DEL CURSO
El curso está dividido en nueve capítulos de acuerdo con el programa de estudio del IREB®
- Capítulo 1 Introducción y Fundamentos (1 ¼ horas)
- Capítulo 2 Definición de sistema y contexto (1 ¼ horas)
- Capítulo 3 Obtención de requisitos (1 ½ horas)
- Capítulo 4 Documentación de requisitos (2 horas)
- Capítulo 5 Documentación en lenguaje natural (1hora)
- Capítulo 6 Documentación basada en modelos (5 horas)
- Capítulo 7 Validación y negociación de requisitos (2 ½ horas)
- Capítulo 8 Gestión de requisitos (2 ½ horas)
- Capítulo 9 Apoyo de herramientas (1 hora)
398
Capítulo 9. Apoyo de herramientas (1 hora)
399
Beneficios de las Herramientas
• Generación de versiones
400
Las 8 características de una herramienta de gestión de requisitos
Se pueden utilizar como apoyo a la IR muchas herramientas de desarrollo de sistemas, por ejemplo, herramientas de
gestión de pruebas, herramientas de gestión de la configuración, wikis, software de ofimática y herramientas de
visualización. También las herramientas de modelado son importantes para la IR con el propósito de crear y analizar
información en forma de modelos.
NOTA : Las herramientas ofimáticas estándar ofrecen todas estas funcionalidades pero de manera limitada. Las
herramientas especializadas de IR refinan estas funcionalidades, por ejemplo, mediante gestión de trazabilidad.
401
Capítulo 9. Apoyo de herramientas (1 hora)
402
Los 5 aspectos a tener en cuenta al introducir herramientas de
requisitos
• Sólo debe buscarse una herramienta de IR cuando ya se hayan implantado los procedimientos y
las técnicas de IR. La introducción de una herramienta requiere responsabilidades y
procedimientos en la IR claramente establecidos. En el proceso se deberían considerar los
siguientes aspectos:
403
Capítulo 9 Apoyo de herramientas (1 hora)
404
Las 7 vistas de las herramientas de gestión de requisitos
Hay muchos aspectos que deben considerarse cuando se evalúa una herramienta de IR. Este proceso
puede estructurarse utilizando las siete vistas siguientes:
Nota: Para cada una de estas vistas se debería establecer una serie de criterios de evaluación claros.
405
Etapas – Fases y Flujos de Trabajo en
Ingeniería de Requisitos
Herramienta Indudata Plugins
406
Diagrama de Flujo Técnico de Requisitos
407
Fases de un Proyecto de Ingeniería de Requisitos
408
Modelo de Etapa de Definición de IR
Página 409
409
Modelo de Etapa de Validación o Realización de IR
410
Modelo de Etapa de Finalización de IR
411
IIBA
412
Servicios Indudata
413
Preguntas, Comentarios,
y Discusiones sobre
el curso?
414
Gracias por su atención
y participación!
415
REFERENCIAS
416
Referencias
Adelman, Sid, Moss, Larissa, and Abai, Majid:, Data Strategy, Prentice Hall, 2005.
Ambler, S: Agile Analysis, Retrieved Apr. 08, 2005, from Ambysoft Web site:
http://www.agilemodeling.com/essays/agileAnalysis.htm.
Ambler, S: When Does(n't) Agile Modeling Make Sense?, Retrieved Apr. 08, 2005, from
Ambysoft Web site:
http://www.agilemodeling.com/essays/whenDoesAMWork.htm.
Ambler, Scott W:, The Object Primer: Agile Model-Driven Development with UML 2.0,
Third Edition, Cambridge University Press, 2004.
Armour, Frank, and Miller, Granville: Advanced Use Case Modeling: Software
Systems, Addison-Wesley, 2001.
Baird, Jim; Little, A. Ross; LeBlanc, Valerie, and Molnar, Louis: Business
Requirements Analysis: Applied Best Practices, Fourth Edition, The Information
Architecture Group, 2001.
417
Referencias
418
Referencias
419
Referencias
420
Referencias
IEEE Computer Society. IEEE Std. 830-1998: IEEE Recommended Practice for
Software Requirements Specifications, Institute of Electrical and Electronics
Engineers, 1998.
IEEE Computer Society. IEEE Std. 1233-1998: IEEE Guide for Developing System
Requirements Specifications, Institute of Electrical and Electronics Engineers, 1998.
Intervista Institute, Inc.: Managing Integration in a Federated Architecture
Environment, http://www.intervista-institute.com/articles/zachman-by-
kull.html, 2003.
Jackson, Michael: Software Requirements and Specifications: A Lexicon of Practices,
Principles and Prejudices, Addison-Wesley, 1995.
Jacobson, Ivar, and Ng, Pan-wei: Aspect-Oriented Software Development with Use
Cases, Addison-Wesley, 2004.
421
Referencias
Jalote, Pankaj: CMM in Practice, Addison Wesley Longman, Inc., Reading, MA, 2000.
Goodpasture, John C.: Managing Projects for Value, Vienna, VA: Management
Concepts, Inc., 2002.
Hertzel, Bill: The Complete Guide To Software Testing, Second Edition, Wiley-QED
Publication, 1993.
Kaplan, R. and Norton, D.: The Balanced Scorecard: Translating a Strategy into Action,
Boston: Harvard Business School Press, 1996.
Kit, Edward: Software Testing in the Real World, Addison-Wesley Publishing
Company, 1995.
Kovitz, Benjamin L.: Practical Software Requirements: A Manual of Content and Style,
Manning Publications Co., 1999.
Larman, Craig: Applying UML and Patterns: An Introduction to Object-Oriented Analysis
and Design and Iterative Development, Third Edition, Prentice-Hall, 2004.
422
Referencias
423
Referencias
424
Referencias
425
Referencias
Sommerville, Ian, and Sawyer, Pete: Requirements Engineering: A Good Practice Guide,
John Wiley and Sons, 1997.
The Standish Group: Unfinished Voyages: A Follow-up to the Chaos Report, Retrieved
Apr. 08, 2005, from The Standish Group Web site:
http://www.standishgroup.com/sample_research/unfinished_voyages_1.php.
Stevens, Richard; Brook, Peter; Jackson, Ken, and Arnold, Stuart: System
Engineering,Coping with Complexity, Pearson Education, 1998.
Thayer, Richard H. and Dorfman, Merlin: Software Requirements Engineering Second
Edition, IEEE Computer Society, 1997.
United States Department of Justice, The Department of Justice Systems Development
Life Cycle Guidance Document, http://www.usdoj.gov/jmd/irm/lifecycle/table.htm.
von Halle, Barbara, Business Rules Applied: Building Better Systems Using the Business
Rules Approach, John Wiley & Sons, 2003.
426
Referencias
427
Referencias
IEEE Std 1362-1998 – Guide for Information Technology – System Definition – Concept of
Operations (ConOps) Document
IEEE Std 1233-1998 – IEEE Guide for Developing System Requirements Specifications
IEEE Std 830-1998 – IEEE Recommended Practice for Software Requirements Specifications
428