Professional Documents
Culture Documents
Análisis de Requisitos
Características de la ingeniería del
software (Van Vliet 1993)
• Construcción de programas grandes
• Controlar la complejidad
• Cooperación entre las personas implicadas
• Evolución del software
• Eficiencia en el desarrollo
• Soporte real a los usuarios
Ingeniería
del software
Desarrollo Gestión de Metricas Mantenimiento
de Software proyectos del software de software
Analisis Planificación Fiabilidad Corrección de Errores
Diseño Organización Usabilidad Modificaciones
Codificación Reclutamiento Flexibilidad
Pruebas Dirección Mantenibilidad
Control Reusabilidad
Etc.
Tiempo t
Elo329: Diseño y Programación Orientados
5
a Objetos
Qué es un Requerimiento?
• Patrocinadores
• Clientes
• Usuarios
• Especialistas
• Ingeniero de requerimientos
Determinar el alcance:
• Dominios y Contexto
Justificar las
Mundo del Desiciones de
metas de
desarrollo
desarrollo diseño
Dificultades para la adquisición
• Criterios para definir el dominio del conocimiento
• El conocimiento puede estar distribuido a lo largo de muchos
recursos
• Generalmente no está descrito en forma explícita
• Puede existir conflicto entre diferentes fuentes
• Las metas pueden no ser las mismas entre distintas personas
• Las personas pueden tener diferentes criterios para entender un
problema
• Conocimiento tácito
• Las personas encuentran difícil decir que necesitan o complican
mucho la explicación
Dificultades para la adquisición
• Problemas en la comunicación
• La gente puede estar imposibilitada para decir lo
que realmente necesita
• Problemas políticos o de seguridad
• La gente puede no querer decir que es lo que
necesita
• Si digo algo luego quedo “pegado”
• “Si abro mi negocio y otro se entera pierdo”
Técnicas para toma de requerimientos
• Técnicas tradicionales
• Introspección • Grupos enfocados
• Mirar hacia dentro del • Brainstorming
problema • JAD/RAD
• Documentos existentes • Prototipación
• Análisis de datos • Aproximación basada en
• Entrevistas representación
• Agenda abierta • Basada en objetivos
• Estructuradas • Basada en escenarios
• Cuestionarios • Basadas en casos de uso
• Adquisición en grupos
Técnicas para toma de requerimientos
El uso del formato ayuda para determinar qué tan completa está la
especificación de requerimientos.
Restricciones:
44
Definición de Requerimientos
Salidas de la Fase
Documento de Definición de Requerimientos
2. Descripción General
2.3 Características de los Usuarios. Narrativa que establece
los diferentes tipos de usuarios que interactuarán con el
software, y las características de cada uno de ellos
(atribuciones, y limitaciones).
2.2 Perspectivas del Producto. Narrativa que establece que es
lo que se espera obtener con el producto de software en
desarrollo.
2.3 Ambiente Operacional. Narrativa que establece las
características del escenario de trabajo del software.
45
Definición de Requerimientos
Salidas de la Fase
Documento de Definición de Requerimientos.
2. Descripción General
2.4 Suposiciones y Dependencias. Narrativa que establece
(por escrito) todas aquellas suposiciones, que se han hecho
(con el consentimiento del cliente/usuario), sobre alguna
característica del software a desarrollar.
2.5 Restricciones Generales. Narrativa que establece cuáles
son las restricciones de funcionamiento del software. Por
ej. que funcione en Windows y UNIX, que funcione en el
actual ambiente operacional, etc.
2.6 Descripción del Modelo. Diagrama + explicación del
modelo de funcionamiento global actual. Se puede utilizar
DFD, diagramas de procesos, de transición de estados, etc.
46
Definición de Requerimientos
Salidas de la Fase
Documento de Definición de Requerimientos.
3. Requisitos del Sistema
3.1 Requisitos de Usuario. Listado de requisitos que representan la
necesidad del usuario/cliente.
3.1.1 Restricciones globales
3.1.2 Requerimientos Funcionales
3.1.3 Requerimientos No-Funcionales
3.1.4 Restricciones
47
Definición de pruebas
de requisitos
Quality Gateway
• Evaluación de los requerimientos
• Para incluirlos en la especificación cada requerimiento debe pasar el
umbral de calidad.
• Sirve para prevenir la infiltración y la fuga de requerimientos.
• Para pasar debe :
• Tener un criterio de evaluación
• Tener una identificación única y referencias a los eventos y casos
de uso
• Ser relevante
• Ser viable
• Tener un valor para el cliente
• No ser adorno
• Estar completo
• Usar la tecnología correcta
• Los requerimientos rechazados se regresan al interesado
• Ser mantendrá una lista de requerimientos rechazados y la razón
Criterios de Validación
• Restricciones globales
• Requerimientos Funcionales
• Requerimientos No-Funcionales
Restricciones globales
• Afectan a todo el producto y son determinadas
por el usuario y los que administran el proyecto/
producto.
1. Propósito del sistema
2. El cliente
3. El usuario
4. Convenciones para la nomenclatura y las definiciones
5. Hechos relevantes
6. Restricciones del proyecto
7. Suposiciones
Requerimientos Funcionales