Upload
alicia-aranda-coronel
View
264
Download
0
Embed Size (px)
Citation preview
RequerimientosModelado de Procesos de Negocio
Definiciones de Requerimientos
Se define un requerimiento como:1. Una condición o capacidad
necesitada por un usuario para resolver un problema o llevar a cabo un objetivo;
2. Una condición o capacidad que debe tener un sistema o un componente del sistema para satisfacer un contrato, estándar, especificación u otros documentos formales.
2
Ingeniería de Requerimientos
Actividades relacionadas a :1. Definir y documentar lo que se espera
obtener de un producto del proyecto;
2. Actualizar esta definición y sus consecuencias a medida que las expectativas cambian
3
Si se hace Ingeniería de Requerimientosdisminuirá efectivamente el riesgo
del proyectoBest Practice
4
Ingeniería de Requerimientos
Rol de Requerimientos
5
Proyecto / Producto
Muy importante:
Comunicar a los clientes que la ingeniería de requerimientos es una actividad de suma importancia y lograr su compromiso en esta tarea;
Involucrar a miembros especializados del equipo de desarrollo en la elaboración de requerimientos de proyecto;
Comunicar y consensar con los clientes los métodos adecuados para elaborar, documentar y actualizar los requerimientos a medida que cambien.
6
Proyecto / Producto
7
Requerimientos Proyecto Producto
Recursos
Requerimientos del Proyecto / Requerimientos del Producto
8
Requerimientosdel Proyecto
Proyecto Producto
Recursos
Requerimientosdel Producto
El Lugar de los Requerimientos
Establecer la base del acuerdo entre cliente y proveedor acerca del producto;
Elemento para validar soluciones y planes posibles;
Elemento para estimar costos y tiempos;
Reducir el esfuerzo de desarrollo;
Proveer una línea de base para validación y verificación del producto final;
Facilitar la transferencia del conocimiento sobre el producto;
Base para establecer mejoras.
9
El Proceso de Especificación de Requerimientos
Trabajar con versiones de los requerimientos;
Identificar en qué momento estamos preparados para planear las actividades del proyecto;
Definir en qué momento estamos preparados para iniciar el desarrollo de un conjunto de requerimientos.
10
¿Cómo Estructurar los Requerimientos?
11
El Documento de Especificación de Requerimientos
Única Fuente
Identificación unívoca de cada Requerimiento
Conjunto Completo
Consistencia
Nivel de detalle consistente
Varias versiones
¿Quién escribe los requerimientos?
¿Cómo se escriben?
12
Formato para los
Requerimientos
13
Las Múltiples Facetas del Documento de Especificación de Requerimientos
14
Los Puntos de Vista de los Requerimientos
15
Sistema
El Sistema es una caja negra
Los requerimientos describen la interacción de los usuarios con el sistema (estimulo/reacción; perceptible)
Tipos de Requerimientos
Funcionales:
Son aquellos que se refieren a la “función” del producto;
Qué servicios le brindará el producto al usuario;
Qué es lo que el producto tiene que hacer;
Ejemplos :
“Controlar la temperatura del motor”;
“Proveer información sobre las ventas por área”.
16
No Funcionales:
Restricciones impuestas sobre el producto, más allá de las funcionales;
No vinculados a los servicios que el software debe darle a sus usuarios;
Generalmente son requerimientos técnicos;
Ejemplos :
Hardware, Utilización de Hardware, Software de Base, Software complementario, Comunicaciones, Calidad de Software, Robustez, Seguridad y Privacidad, Packaging e Instalación, De Arquitectura, De Diseño, De Implementación, Performance, Volumen
17
Tipos de Requerimientos
¿Qué Debe Contener un Requerimiento?
Un requerimiento debe definir :
Capacidades: Funcionalidad, interfaces externas, performance, atributos, etcétera;
Condiciones: Sobre la validez del requerimiento y de sus partes;
Restricciones: de diseño, de implementación, de uso, etcétera;
18
Un requerimiento debe definir:..............
Debe describir en detalle todos los inputs y outputs del sistema;
Tiene que describir todas las funciones que deberá realizar el sistema como consecuencia de los inputs, o para lograr los outputs.
Los autores deben poner especial cuidado en :
◦ Describir solo las funciones que puedan ser percibidas;◦ No imponer restricciones de diseño o implementación innecesarias.
19
¿Qué Debe Contener un Requerimiento?
Propiedades de un Requerimiento
Abstracto
No ambiguo
Normalizado
Vinculado
Acotado
Con un nivel de granularidad definido
Correcto
Clasificado según su importancia y su estabilidad
Verificable
Validable
Modificable
Versiones
Trazable
20
Ciclo de Vida de los Requerimientos
21
Planeación de Requerimientos
Se define un requerimiento como:
Obtener un consenso entre los involucrados en el proyecto en relación a:
◦ ¿Qué se va hacer?◦ ¿Quién debe hacer qué? y◦ ¿Qué se debe de obtener del proceso de
desarrollo?
Obtener criterios de aceptación para los productos.
22
1. Identificar a los involucrados;
2. Definir el criterio de aceptación;
3. Identificar lo requerimientos técnicos;
4. Desarrollar o actualizar un plan;
5. Evaluar los riesgos del proyecto;
23
Planeación de Requerimientos
6. Asignar o revisar la política y responsabilidad de la especificación de requerimientos;
7. Revisar el plan
8. Revisar el plan por el patrocinador
9. Asignar recursos al plan
24
Planeación de Requerimientos
Proceso de Ingeniería de Requerimientos
Estudio de Factibilidad
◦ Encuentran los usuarios actuales que sus necesidades son satisfechas dada la tecnología y el presupuesto disponible?
Análisis de Requerimientos
◦ Encontrar que el sistema requiere del mantenimiento de intereses.
25
Proceso de Ingeniería de Requerimientos
Definición de Requerimientos
◦ Definir los requerimientos en una forma comprensible para el cliente.
Especificación de Requerimientos
◦ Define los requerimientos en detalle.
26
27
Estudio de Factibilidad
Análisis deRequerimientos
Definición deRequerimientos
Especificaciónde Requerimientos
Reporte deFactibilidad
Modelos delSistema
Documento deRequerimientos
Definición deRequerimientos
Especificación deRequerimientos
Proceso de Ingeniería de Requerimientos
Documento de Requerimientos
28
• Es la declaración oficial de lo que es requerido para que el sistema sea desarrollado.
• Incluye la definición y especificación de requerimientos.
• No es un documento de diseño. Tanto como sea posible, es un conjunto de lo que es el sistema y como lo hará.
Validación de Requerimientos
29
• Demostración de que los requerimientos que definen el sistema son lo que el cliente realmente quiere.
• Los costos de errores en los requerimientos son altos, por lo cual, la validación es muy importante.
• El Prototipado es una técnica importante de la validación de requerimientos.
Revisión de Requerimientos
30
• Una revisión regular puede ayudar mientras la definición de requerimientos está siendo hecha.
• Tanto el cliente como el staff de contratistas deben estar involucrados en la revisión.
Revisión de Requerimientos
31
• La revisión debe ser formal (con los documentos completos) o informal.
• Una buena comunicación entre desarrolladores, clientes y usuarios puede resolver problemas en las primeras etapas.
Chequeo de la Revisión
32
• Verificabilidad. ¿Es el Requerimiento realmente probable?.
• Entendibilidad. ¿Es el Requerimiento comprendido propiamente?.
• Probabilidad. ¿Es el origen de los requerimientos claramente establecido?.
Chequeo de la Revisión
33
• Adaptabilidad. ¿Puede el requerimiento ser cambiado sin causar un gran impacto en otros requerimientos?
Chequeo Automatizado de la Consistencia
34
Requerimientos en unLenguaje Formal
Proceso deRequerimientos
Base de Datosde Requerimientos
Reporte de los problemasde Requerimientos
Análisis de Requerimientos
Evolución de Requerimientos
35
• Los requerimientos siempre involucran como comprender mejor el desarrollo de las necesidades de los usuarios y como los objetivos de la organización pueden cambiar.
Evolución de Requerimientos
36
• Es esencial planear posibles cambios en los requerimientos cuando el sistema sea desarrollado y utilizado.
37
Comprensión Inicialdel Problema
Comprensión de losCambios del Problema
RequerimientosIniciales
Cambios en losRequerimientos
Evolución de Requerimientos
Cambios en el Documento de Requerimientos
El documento de requerimientos debe ser organizado, de tal forma que los cambios en los requerimientos puedan ser hechos sin tener que re-escribir demasiado.
Las referencias externas deben ser minimizadas y las secciones del documento deben ser tan modulares como sea posible.
38
Cambios en el Documento de Requerimientos
Los cambios son fáciles cuando se trata de un documento electrónico. Sin embargo, la falta de estándares para documentos electrónicos lo hace difícil.
39
Evolución Controlada
40
Documento VI de Requerimientos
Implementación V1del Sistema
Implementación V2del Sistema
Documento V1de Requerimientos
Documento V2De Requerimientos
ImplementaciónV1 del Sistema
ImplementaciónV2 del Sistema
Cambio en los Requerimientos
Cambio en los Requerimientos
Inconsistencia de losRequerimientos y delSistema
Consistencia de los Requerimientos y delSistema
Modelos de Requerimientos
Modelo Durán
42
Modelo Pohl
43
Modelo Espiral
44
Modelo SWEBOK
45
Modelo RUP
46
AdministraciónAmbiente
Modelación de Negocios
Implementación
Prueba
Análisis y Diseño
Iteración(es)Preliminar
Iter.#1
Flujos de Trabajo de Procesos
Iteraciones
Flujos de Trabajo de Soporte
Iter.#2
Iter.#n
Iter.#n+1
Iter.#n+2
Iter.#m
Iter.#m+1
Desarrollo
Admin. Configuración
Requerimientos
Elaboración TransiciónInicio Construcción
Contenido
Modelo RUP
47
Definen una especificación de requisitos tradicionales
Técnicas para Requerimientos
48
Análisis del Problema
Evaluación y negociación
Especificación de Requisitos
Validación
Evolución
Entrevistas y Cuestionarios
X X
Lluvia de Ideas X X
Prototipos X
Análisis Jerárquico
X X
DC, DB, DFD, DER, CU
X X X
Visión
49
Fases del proyecto
La fase deimplementación
La fase deutilización La fase de
planeación
La fase deanálisis
La fase dediseño
Ingeniería RequerimientosOrganización
Resumen
Es muy difícil formular una especificación de requerimientos completa y consistente.
Una definición de requerimientos, una especificación de requerimientos y una especificación del Proyecto son una manera de especificar del Proyecto para diferentes tipos de lectores.
50
Resumen
El Documento de Requerimientos es una descripción para clientes y desarrolladores.
Los errores en los requerimientos son usualmente muy caros de corregir una vez desarrollado el sistema.
51
Resumen
La revisión debe involucrar al cliente y al staff de contratistas para validar los requerimientos del sistema.
El establecer requerimientos está relacionado con las actividades del cliente para el Proyecto.
Los requerimientos volátiles dependen del contexto en que se use el sistema.
52