Anda di halaman 1dari 26

UNIVERSIDAD DE CONGRESO

Administracin de
Requerimientos
Anlisis de Sistemas 2do ao
Prof. Gustavo J. Sabio
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Contenido
Introduccin
Buenas Prcticas
Introduccin al RUP
Disciplina Requerimientos
Conclusiones

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Dificultades al manejar requerimientos


Clientes no siempre conocen lo que quieren
Los requerimientos no siempre son obvios
Los requerimientos pueden provenir de muchas fuentes
Es dficil mantener la relacin entre los requerimientos
A veces es dficil expresarlos en palabras
Los requerimientos cambian
El uso de lenguaje tcnico limita la expresin de los usuarios
Si son muchos requerimientos, se torna inmanejable e incontrolable
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Escencia de la Adm. de Req.


problema

Necesidades

caractersticas

Requerimientos de Software

El
sistema
a
construir

Procedimientos de Test
Diseo
Documentos para usuario
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Contenido
Introduccin

Ir a

Buenas Prcticas
Introduccin al RUP
Disciplina Requerimientos
Conclusiones

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Contenido
Introduccin
Buenas Prcticas
Introduccin al RUP
Disciplina Requerimientos
Conclusiones

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Contenido
Introduccin
Buenas Prcticas
Introduccin al RUP

Introduccin a la AR
Modelando Casos de Uso
Analizar el Problema

Disciplina Requerimientos

Entender necesidades stakeholders


Conclusiones

Definir el Sistema
Administrar el alcance
Redefinir el sistema
Administrar el cambio
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Introduccin a la Administracin de
Requerimientos
Objetivos:

Definir conceptos claves de la Disciplina


Entender los beneficios

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Definiciones
Requerimiento
Describe una condicin/ capacidad de cmo el
sistema debe comportarse
provienen de las necesidades de los usuarios, de
un contrato, de estndares o de un documento de
especificaciones . (RUP)

Caracterstica deseada, propiedad o comportamiento


del sistema. (UML)

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Definiciones
Qu es la administracin de requerimientos?
Es un enfoque sistmico para Encontrar, organizar ,
documentar, coordinar y mantener los requerimientos.
Permite establecer u mantener el acuerdo entre el
cliente/usuario y el equipo del proyecto sobre los
cambios en los requerimientos.

La clave para una administracin de requerimientos efectiva, es


mantener una clara definicin de los requerimientos mediante sus
atributos y la trazabilidad
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

AR- Niveles de los Requerimientos


Necesidades de
los interesados

Qu
o
Cm

Especificaciones de diseo
Procedimientos de prueba
Documentacin

Requisitos
stakeholders

Caractersticas
del sistema

Definidas en
Vision.doc

Qu
o
Cm

Especificacin de
requerimientos de
Software (CU)

Qu
o
Cm

Modelo CU y
Especif compl
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

AR- Niveles de los Requerimientos


Explicacin del dibujo anterior

El requerimiento establece el qu ms que el cmo,


aunque existen diferentes niveles de qus y de cmos
Existen muchos niveles de requerimientos. Dependiendo
de la perspectiva generada, una especificacin puede ser
un requerimiento (qu) o un diseo (cmo).
Por ej: la necesidad de un stakeholder es un requerimiento para el
analista. Este analista debe producir una lista de caractersticas
que son requerimientos para el Especificador de casos de uso.
Los CU describen que debe hacer el sistema para implementar
estas caractersticas. El Especificador de CU debe producir unos
cuantos casos de uso que son requerimientos para los
diseadores.
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

AR- tipos de req. y trazabilidad

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Cualidades de los requerimientos

Verificable
Jerarquizable segn su importancia
Jerarquizable segn su estabilidad
Modificable
Trazable
Entendible
Correcto
Cualidades de un SRS
Completo
Propuestas por
Consistente
RUP y IEEE
No ambiguo
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Tipos de requerimientos
Clasificacin

Tipo

Funcionalidad

Caractersticas, capacidades

Usabilidad

Factores humanos, esttica, localizacin


geogrfica y de recursos, ayudas

Confiabilidad

Frecuencia de fallas, recuperabilidad,


disponibilidad, integridad, consistencia

Performance

Velocidad, eficiencia, uso de recursos

Soportabilidad

Prueba, extensibilidad, adaptabilidad,


mantenibilidad, compatibilidad

Precisin

Precisin numrica, oportunidad de la


informacin

Restricciones

Del dominio, de la tecnologa, operativas,


fsicas

Seguridad

Accesos, polticas, ubicacin de los datos,


polticas
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Origen de los errores en el software


Otros
10%
Programacin
7%
Anlisis
56%
Diseo
27%
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Caracterizacin de los errores


Requerimientos Requerimientos
correctos
incorrectos

Anlisis
correcto

Anlisis
incorrecto

Diseo
correcto

Diseo
incorrecto

Programa
correcto

Programa
con errores

Catarata de errores de Mizuno

Anlisis s/req.
incorrectos

Diseo s/anlisis Diseo s/anlisis


incorrecto
s/req. incorrectos

Programa no
corregible

Programa con
errores ocultos

Programa con
errores ocultos

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Costo de correccin de errores

Incremento de
100 a 1000 veces

Costo
Etapas del ciclo de desarrollo

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Incremento del costo de los errores

1
2,5
5
10

Captura de requerimientos
Anlisis y diseo
Codificacin
Prueba unitaria

25

Prueba de aceptacin

100

Mantenimiento

Boehm, 1988
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Toma de requerimientos:
Involucrar a todo el equipo
es conveniente incluir a todo el equipo en los requerimientos?

Desarrolladores, testers y documentadores


El equipo logra un mayor entendimientos de los
requerimientos y el por qu ellos son importantes para el
cliente
Se logran ms recomendaciones para estandarizar el
proceso de desarrollo. Una recomendacin hecha por
todos provoca un fuerte involucramiento.
- CMM y Constructabilidad Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

10

Factores de xito del proyecto


En 1998 el Standish Group relev 365 compaas y 8000
proyectos y present los resultados en su informe de 1999
Mejora en el xito de los proyectos: 16% en 1994 vs. 26%
en 1998 adems de reduccin de costos y tiempos
Causas: participacin de usuarios, soporte ejecutivo, claro
establecimiento de los objetivos del negocio, administracin
de proyectos, entregables permanentes, requerimientos
firmes, menor tamao y duracin del proyecto, etc.

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

xito del proyecto segn su tamao


60
50

Porcentaje de
xito (%)

hasta $750m
$750m a $1.5M
$1.5M a $3M
$3M a $6M
$6M a $10M
ms de $10M

40
30
20
10
0

Tamao del proyecto ($)


Standish Group, 1999
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

11

Contenido
Introduccin
Buenas Prcticas
Introduccin al RUP

Introduccin
Modelando Casos de Uso
Analizar el Problema

Disciplina Requerimientos

Entender necesidades stakeholders


Conclusiones

Definir el Sistema
Administrar el alcance
Redefinir el sistema
Administrar el cambio
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

En qu parte de los Requerimientos estamos?

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

12

Analizar el Problema
Qu es?
Es el proceso de entender los problemas reales, las
necesidades de los usuarios y de proponer soluciones para
ellas.

Cules son los objetivos?


Intentar un mejor entendimiento antes de comenzar con el
desarrollo
Identificar las causas (raz de los problemas)
Ayudar a formular los requerimientos de negocio
Ayudar a encontrar la solucin correcta
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

13

Lograr el acuerdo en la definicin del sistema

Para comenzar analizar cualquier problema se debe


estar seguro, de que todos los involucrados coinciden
en cul es el problema que intentan solucionar con el
sistema
Desarrollar
Glosario

Cul es el problema?
Entender la perspectiva de los clientes
Requisitos
Documentos del cliente
Stakeholders
Intentar el acuerdo (no solo con el cliente,
tambin dentro del propio equipo de desarrollo)
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Definir el problema que se debe resolver


Definicin de problema

Un problema es la diferencia entre...


Se debe trabajar
sobre lo deseado

...lo percibido...

Se debe trabajar
sobre la percepcin

Pro
blem
a

Se debe trabajar
sobre la brecha

... y lo deseado
Gause & Weinberg
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

14

Definicin del problema


Visin

Para el problema:

(describir el problema)

que afecta a:

(lista de interesados
afectados)

y cuyo impacto es:

(describir cul es el impacto


del problema)

Una solucin adecuada


debera proveer:

(lista de los principales


beneficios de negocio
claves)
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

15

Capturar un vocabulario comn


Para qu sirve el Glosario?
Para definir un vocabulario comn que puede ser usado en toda
descripcin textual del sistema, especialmente en la descripcin de
los casos de uso.

Definir los trminos usados en el proyecto


Prevenir desentendimientos
Pasos que propone la actividad: Desarrollar la Vision
Encontrar trminos comunes
Glosario

Evaluar sus resultados

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

16

Identificar las causas del problema


Cul es el problema, realmente?
Buscar el problema tras el problema
No aceptar la primer definicin de un problema.
Continuar preguntando: por qu?
Entender
el problema

Encontrar
Stakeholders

Visin

Potenciales
actores
modelo de CU

Visin
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Identificar las causas

Herramientas a aplicar:

Espina de pescado
Pareto

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

17

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

3. Definir Requerimientos de Negocio


4. Identificar la/s solucin/es correcta/s

Formular los requerimientos de negocio


Los requerimientos de negocio deberan partir
de las causas identificadas
Se debe especificar la situacin actual
Se debe especificar la situacin de negocios
deseada

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

18

3. Definir Requerimientos de Negocio


4. Identificar la/s solucin/es correcta/s

Identificar soluciones de negocio


Analizar los requerimientos de negocio
Identificar un conjunto de soluciones
tcnicas / no-tcnicas / ambas
Escoger la (s) mejor que cumpla con los
requerimientos de negocio
Iniciar un proyecto para implementar la solucin

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

3. Definir Requerimientos de Negocio


4. Identificar la/s solucin/es correcta/s
Modelo de CU de Negocio

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

19

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Identificar los stakeholders


Quines son los usuarios del sistema?
Quin es el cliente para el sistema?
A quines afectar el rendimiento del sistema ?
Quin evaluar y aprobar el sistema cundo este se
entregue y se implemente?
Hay cualquier otro usuario, interno o externo del sistema,
cuyas necesidades deban contemplarse?
Quin mantendr el nuevo sistema?
Hay alguien ms?
De acuerdo, hay alguien ms?

Visin

Elaborar los perfiles de los potenciales (o actuales) actores


Documentar en la VISION lo que se tenga sobre los usuarios y su entorno
Un Stakeholder es cualquiera que est afectado
(materialmente) por la llegada del sistema
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

20

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Definir los lmites del sistema


El lmite del sistema define la frontera entre la solucin
y el mundo real que rodea la solucin
En otros trminos, el lmite del sistema se describe como una burbuja
en donde se contiene la solucin del sistema.

Los actores estn fuera del sistema a desarrollar

Visin

Es muy eficaz usar actores para definir y describir los lmites del sistema.
Encontrar
actores yCU
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

21

Definir los lmites del sistema

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Analizar el Problema
Lograr el acuerdo en la definicin
definicin del problema
Capturar un Vocabulario comn
Identificar las causas (problema
(problema tras el problema)
problema)
Definir los requerimientos de negocio
Identificar la solucin correcta (s)
Identificar los stakeholders
Definir lmites del sistema propuesto
Identificar restricciones del sistema/proyecto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

22

Identificar Restricciones del sistema

Visin

poltica
econmica

Desarrollo

factibilidad

Tcnica
sistema

Reglas de
Negocio
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Contenido
Introduccin
Buenas Prcticas
Introduccin al RUP

Introduccin
Modelando Casos de Uso
CONCLUSIONES
Analizar
el Problema

Disciplina Requerimientos

Entender necesidades stakeholders


Conclusiones

Definir el Sistema
Administrar el alcance
Redefinir el sistema
Administrar el cambio
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

23

Foco en la Vision
Deseos
Stakeholders
Requisitos
Stakeholders
Necesidades
Stakeholders

+
Caractersticas

Vision

SRS
Requerimientos
De Software

Modelo CU

Especif.
Especif.
Complem.
Complem.
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

Artefacto: Vision
Para qu sirve el documento Vision?
Visin

Permite la comunicacin entre los administradores, vendedores


y el equipo completo del proyecto
Le brinda al cliente el primer feedback
Capta el entendimiento general del producto
Establece alcance y prioridad de las caractersticas a un nivel macro
Para que todas las partes entiendan para qu estn
trabajando
Describe el qu y el porqu del producto o aplicacin
Se focaliza en: las necesidades de los usuarios, metas, objetivos y
caractersticas del producto
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

24

Estructura del documento Visin


Visin
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.

Historia de cambios
Tabla de contenidos
Introduccin
Aprobaciones
Audiencia
Propsito
Alcance
Antecedentes
Oportunidad de negocios
Definicin del problema
Objetivos del proyecto

12. Descripcin de participantes


13. Lista de necesidades
14. Descripcin del producto
15. Restricciones y supuestos
16. Requisitos de calidad
17. Prioridades
18. Productos a entregar
19. Otros requerimientos
20. Estimacin econmoca y temporal
21. Anlisis de riesgos preliminar

Prof. Gustavo J. Sabio


http://www.ucongreso.edu.ar

Estructura del documento Visin


Visin
1. Introduccin
2. Descripcin de los stakeholders
3. Generalidades del Producto
4. Caractersticas del Producto
5. Entregables
6. Restricciones
7. Requisitos de Calidad
8. Prioridades
9. Otros requerimientos del producto
10. Anexo Atributos de las caractersticas
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

25

Analizar el Problema
Lograr el acuerdo en la definicin del problema

Herram
brainstorming

Capturar un Vocabulario comn

Identificar las causas

Artefacto

Glosario

Brainstorming
Espina de pescado
Pareto

Visin

Definir los requerimientos de negocio

Identificar la solucin correcta (s)

Entrevistas
Workshop
Brainstorming

Modelo
Negocio Visin

Workshop
Brainstorming

Modelo CU Visin

Identificar los stakeholders

Definir lmites del sistema propuesto


Identificar restricciones del sistema/proyecto

Workshop
Brainstorming

Visin
Prof. Gustavo J. Sabio
http://www.ucongreso.edu.ar

26