Administración de Requerimientos - ucongreso.edu.ar · sistema cumpla una necesidad de un...

21
1 Prof. Gustavo J. Sabio http://www.ucongreso.edu.ar Análisis de Sistemas – 2do año Prof. Gustavo J. Sabio Administraci Administraci ón de ón de Requerimientos Requerimientos UNIVERSIDAD DE CONGRESO UNIVERSIDAD DE CONGRESO Parte III Prof. Gustavo J. Sabio http://www.ucongreso.edu.ar Contenido Introducción Introducción Buenas Prácticas Buenas Prácticas Introducción al RUP Introducción al RUP Disciplina Requerimientos Disciplina Requerimientos Conclusiones Conclusiones Introducción Modelando Casos de Uso Analizar el Problema Entender necesidades stakeholders Definir el Sistema Administrar el alcance Redefinir el sistema Administrar el cambio

Transcript of Administración de Requerimientos - ucongreso.edu.ar · sistema cumpla una necesidad de un...

1

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Análisis de Sistemas – 2do año

Prof. Gustavo J. Sabio

AdministraciAdministración de ón de RequerimientosRequerimientos

UNIVERSIDAD DE CONGRESOUNIVERSIDAD DE CONGRESO

Parte III

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

2

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿En qué parte de los Requerimientos estamos?

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Definir el Sistema

• ¿Qué es?– Es focalizarce específicamente sobre las

“carácterísticas” del sistema

• ¿Cuáles son los objetivos?– Alinear al equipo de desarrollo en el entendimiento del

sistema– Ejecutar análisis de alto nivel sobre las necesidades de

los stakeholderds recolectadas.– Formalizar todo en Modelos y documentos

3

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Repaso: Cualidades de los Requerimientos

• Correcto• Completo• Consistente• No ambiguo• Jerarquizable por importancia y estabilidad• Verificable• Trazable• Entendible

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Definir el sistema

¿Qué es una “Característica” del producto?

• Es un servicio observable externamente para que el sistema cumpla una necesidad de un stakeholders

Ejemplo:• el sistema de manejos de errores, deberá proveer información de tendencias para ayudar al administrador de proyectos a tomar decisiones.

• la interface gráfica de usuario deberá proveer ayuda sensible al contexto

Es un tipo de requerimiento que cumple con una necesidad

4

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Definir el sistema

Características del producto

Las características son listadas en el documento Visión

• la Visión es revisada por distintas personas. Su nivel de detalle debería ser entendido por todos. Pero debe servir al equipo paraconstruir el modelo de CU

Muestran exactamente que debería hacer el sistema a construir

Las características deberían incluir una descripción de funcionalidad y cualquier dato relevante sobre la operabilidad

Las características se detallan, mas adelante, en el modelo de CU

Foco en las capacidades necesitadas , no cómo implementarlas

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Artefactos: Foco en el Modelo de CU

RequisitosRequisitosStakeholdersStakeholders

DeseosStakeholders

NecesidadesStakeholders

Características+

RequerimientosDe Software

VisiónVisión

EspecifEspecif..ComplemComplem..

SRS

Modelo CUModelo CU

5

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Especif CU1. doc•Breve descripción•Flujo de eventos

Especif CU1. doc•Breve descripción•Flujo de eventos

Repaso: ¿Qué contiene un modelo de CU?

Caso de uso 1

Caso de uso 2

Caso de uso 3

Actor 1

Actor 2

Actor 3

El sistemaEl sistema

Modelo CU. doc•Descripción del modelo•Lista de todos los actores•Lista de todos los CU

DiagramaDiagramaTextoTexto

Especif CU1. doc•Breve descripción•Flujo de eventos

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

6

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Requerimientos: Administrar el Alcance

• Priorizar requerimientos mediante sus atributos• Priorizar Casos de Uso• Administrar el Alcance y las expectativas de los

clientes

Objetivos:

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿En qué parte de los Requerimientos estamos?

7

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Administrar el Alcance

• ¿Qué es?Es administrar los recursos (tiempo, gente y dinero) para asegurar el

éxito del proyectoEs una actividad continua que requiere desarrollo iterativo e

incremental, que parte el alcance del proyecto en partes más manejables

• ¿Cuáles son los objetivos?– Definir los requerimientos que van a ser incluidos en la actual iteración– Definir las características y los CU (o escenarios) que representan

significativamente la funcionalidad– Definir los atributos y trazabilidad a mantener

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Establecer la línea base de requerimientos

• Característica 1: el sistema debe…• Característica 2: el sistema debe…• Característica 3: el sistema debe…• Característica n: el sistema debe…

¿Conocemos todas las necesidades?

¿cómo determinaremos la prioridad?

¿Cuál será la columna vertebral de las características?

8

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Administración de requerimientos en función de sus atributos

Característica Estado Riesgo Prioridad ...

Característica del sistema Nº 1

Característica del sistema Nº 2

Característica del sistema Nº 3

...

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿Cómo priorizar Casos de Uso?

1. Considerar los CU linkeados a las características en el alcance definido

2. Selecciona CU para las iteraciones arquitectónicas– Muy representativas, funcionalmente vitales.– Tiene una substancial convergencia con la arquitectura– Tienen que ser identificados como de alto riesgo

3. Priorizar CU/ Escenarios para futuras iteraciones

9

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Priorizando los requerimientos

• Identificar los requerimientos que...

• ...integrarán la versión actual del producto• ...que determinan la arquitectura• ...que poseen alto riesgo• ....que son más estables• ...que son más prioritarios• ...que, inicialmente, integrarán las siguientes

versiones

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿Cómo administrar el alcance?

• Intentar el control de los requerimientos– Input– Output– Procesos

Proceso de Requerimientos

Fuentes de requerimientos

Requerimientoacordado

1133 22

10

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

CONCLUSIONESCONCLUSIONES

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Administrar el Cambio

• Es importante el “especialista” del producto• La importancia de administrar las expectativas• Enfásis en mejorar las habilidades de negociación

Algunas Conclusiones:Algunas Conclusiones:

11

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

• Los requerimientos deben estar perfectamente documentados, en un único repositorio y con aprobación centralizada

Establecer un único camino para la administración de cambios

Nuevas características

Nuevos requerimientos

Cambio en los requerimientos

Errores de código

Resultados de pruebas

Propuestas de los programadores

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

12

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Requerimientos: Redefinir el Sistema

• Definir Requerimientos de Software• Documentar los SRS

– Funcionales (Modelo de CU)– No funcionales (Especif. Complementarias)

Objetivos:

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿En qué parte de los Requerimientos estamos?

13

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Redefinir el sistema

• ¿Qué es?– Es el core de los requerimientos – los

requerimientos del software (SRS)

• ¿Cuáles son los objetivos?– Documentar detalladamente los CU– Detallar las Especificaciones Complementarias– Modelar y prototipar las interfaces

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Refinando la definición del sistema

• Definir los requerimientos de software (SRS)

• Identificar las restricciones

• Establecer los requerimientos no funcionales

• Describir las interfaces de usuario

• Detallar los casos de uso

Se debe:Se debe:

14

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

EspecifEspecif..ComplemComplem..

Modelo CUModelo CU

SRS

Especificar Requerimientos de Software

RequisitosRequisitosStakeholdersStakeholders

DeseosStakeholders

NecesidadesStakeholders

Características+

RequerimientosDe Software

VisiónVisión

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

La función del las SRS

• Base para la comunicación entre todas las partes• Acuerdo contractual entre las partes• Base para el desarrollo: diseño, implementación, test

EspecifEspecif..ComplemComplem..

Modelo CUModelo CU

SRS

Las SRS definen el comportamiento externo y características del

sistema a construir.

15

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿Qué contiene una SRS?

Especif.Especif.Complem.Complem.

Modelo CUModelo CU

SRS

La ERS puede estar integrado o no en un

único documento y su contenido principal es el modelo de casos de uso

detallado Ir a ejemplo…

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿Cómo describir las interfases de usuario?

• Adjuntar a la descripción del CU, bosquejos de la pantalla propuesta.

• Ser cuidadoso de no especificar demasiado el diseño en la documentación del CU

ReemplazarReemplazar

buscarbuscar

Reemplazar porReemplazar por

czarczar sgtesgte cancelarcancelar

16

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Responsabilidades del Diseñador de interfases

• Capturar requerimientos sobre las interfases, incluyendo requerimientos de usabilidad

• Construir prototipos de interfases de usuario• Involucrar a usuarios finales en sesiones de revisión

sobre la usabilidad de la interfase• Revisar y aprobar con el feedback del usuario otras

interfases creadas por desarrolladores, diseñadores e implementadores

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

CONCLUSIONESCONCLUSIONES

17

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Refinando la definición del sistema

• Definir los requerimientos de software (SRS)

• Identificar las restricciones• Establecer los

requerimientos no funcionales

• Describir las interfaces de usuario

• Detallar los casos de uso

Se debe:Se debe:

Especif.Especif.Complem.Complem.

Modelo CUModelo CU

SRSSRS

Especif.Especif.ComplemComplem..

Modelo CUModelo CU

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Introducción

Modelando Casos de Uso

Analizar el Problema

Entender necesidades stakeholders

Definir el Sistema

Administrar el alcance

Redefinir el sistema

Administrar el cambio

18

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Requerimientos: Administrar requerimientos cambiantes

• Utilizar técnicas para administrar el cambio

– Usar repositorio de requerimientos– Medir el estado y cambio periodicamente– Crear trazabilidad de requerimientos– Establecer un canal simple para aprobar los

requerim.– Emplear administración de las configuraciones

Objetivos:

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

¿En qué parte de los Requerimientos estamos?

19

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

• Fallas en la identificación de los requerimientos

• Cambios de opinión de los usuarios

• Cambios en el contexto del problema

• Cambios en el problema

• Mejora en la percepción de un problema

Causas del cambio en los requerimientos

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

• Mantener la trazabilidad de los requerimientos

• Mantener la trazabilidad con las pruebas

• Realizar un análisis del impacto del cambio de los requerimientos

• Mantener información estadística acerca de los cambios de los requerimientos

• Contar con un conjunto adecuado de métricas

Consideraciones para la administración de requerimientos

20

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Administración de Requisitos: Contenido

IntroducciónIntroducción

Buenas PrácticasBuenas Prácticas

Introducción al RUPIntroducción al RUP

Disciplina RequerimientosDisciplina Requerimientos

ConclusionesConclusiones

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Conclusiones

• Para construir el sistema correcto se debe contar con un proceso que defina la forma de administrar requerimientos para encontrar las verdaderas necesidades del cliente.

• Analice el problema efectivamente, evitando los “sí, pero…”

• La Elicitación ayuda a entender las necesidades de los stakeholders

• El uso de un documento Visión permite que todos los involucrados tengan claro hacia dónde nos dirigimos

21

Prof. Gustavo J. Sabiohttp://www.ucongreso.edu.ar

Conclusiones

• Use “características” y modelo de CU para acordar con el cliente sobre la definición del sistema

• Incremente sus chances de entregar a tiempo y en forma admistrando el alcance a través del ciclo de vida del proyecto

• Un modelo de CU de requerimientos ayuda a refinar la definición del sistema para luego dirigir el diseño , el testeo y la documentación del usuario

• Los atributos de los requerimientos y su trazabilidad ayudan a administrar los cambios y evitar un “alcance elástico”