Sunteți pe pagina 1din 57

INGENIERA DE REQUERIMIENTOS

Anlisis
Sandra Victoria Hurtado Gil, 2009
Ingeniera de
Requerimientos
Especificacin
Validacin
Anlisis
Adquisicin
Desarrollo
Administracin
Control de Versiones
Seguimiento
Control de Cambios
Sandra Victoria Hurtado Gil, 2009
ANLISIS
El objetivo del anlisis es descubrir
problemas, inconsistencias y faltantes
en los requerimientos adquiridos. Esto
sirve de retroalimentacin para las
personas interesadas, de manera que
se puedan resolver mediante un
proceso de negociacin

Sandra Victoria Hurtado Gil, 2009
TEMAS
Priorizar
Identificar problemas
Identificar oportunidades
Negociar

Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Los proyectos de software tienen
recursos limitados
Es importante priorizar los
requerimientos
Ayuda a resolver conflictos
Permite planificar las entregas
Facilita el uso adecuado de los recursos
Balancear beneficios y costos
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Es un trabajo realizado entre
usuarios/clientes y desarrolladores
Usuarios/clientes definen las funciones
con mayores beneficios
Desarrolladores definen costos, riegos
tcnicos, y dificultad de cada funcin
Todos los requerimientos pactados se
implementarn, pero algunos no son
tan esenciales
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Escalas
Pocos valores
Puede ser subjetiva
Todos deben estar de acuerdo en el
significado
Tres valores
Alta Media Baja
Esencial Condicional Opcional
Crtica Importante - til
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Alta Esencial
Requerimiento de misin crtica
El software no es aceptable sin l
2
1
3
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Media Condicional
Operaciones de soporte del sistema
Ampla la funcionalidad del software, pero se
puede aceptar sin l al comienzo
Baja Opcional
Interesante tener esta funcionalidad o
cualidad, si los recursos lo permiten
Funciones que no son muy valiosas
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
La prioridad de cada requerimiento
debe ir en la especificacin de los
casos de uso o en la especificacin de
los requerimientos
En un caso de uso con varias
alternativas, algunas pueden tener
mayor prioridad que otras
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Identificar
Regulaciones externas
Funciones ncleo del negocio y/o
diferenciadoras
Las dems caractersticas
Priorizar basados en costos, beneficios y
riesgos

Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
RUP
Priorizar basado en:
Beneficios (para el negocio)
Crtico, importante, til
Impacto en la arquitectura
Ninguno, extiende, modifica
Riesgos
Tienen ms alta prioridad los ms
crticos, con mayor impacto y riesgo
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (1)
Hacer una lista con los casos de uso y los
requerimientos del sistema que no estn
en los casos de uso
Para cada caso de uso/requerimiento se
califican de 0 a 3 los siguientes aspectos:
Significativo para la arquitectura
Riesgo
Naturaleza crtica (beneficio)
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (2)
Se determina el peso que se dar a cada
aspecto, en un rango de 1 a 3
Se calcula la prioridad de cada caso de
uso/requerimiento, sumando los valores
de cada aspecto (multiplicados
previamente por su respectivo peso)
Los valores ms altos corresponden a las
mayores prioridades
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Ejemplo:
Requisito Tipo Arq. Riesgo Beneficio Suma
Procesar venta CU 2 0 3 11
Gestionar
devoluciones
CU 1 1 1 6
Soporte para varios
lenguajes
Req. 3 2 1 10

Pesos: Arq: 1, Riesgo: 2, Beneficio: 3
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
XP
Planning Game
Priorizar basado en:
Importancia para el negocio
Esfuerzo (costo)
Riesgo
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
XP
Los usuarios/clientes definen el valor
para el negocio (crtico significante -
til)
Los desarrolladores definen el riesgo
(bajo, medio, alto) y estiman el esfuerzo
Se negocian las prioridades y se
selecciona la historia de usuario que se
implementar
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Karl Wiegers
Priorizar basado en:
Valor del requerimiento
Beneficio, costo de no tenerlo
Costo y riesgo
Implementacin, elementos tcnicos
La prioridad est directamente
relacionada con el valor e inversamente
relacionada con el costo y el riesgo
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (1)
Listar los requerimientos, caractersticas
o casos de uso que se desean priorizar
Estimar el beneficio relativo (1 muy bajo,
9 el mximo)
Basado en los objetivos del negocio
Determinado principalmente por los clientes
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (2)
Estimar el costo de no tener la funcin (1
bajo, 9 alto)
Valor = Suma del beneficio y el costo
Se puede dar un peso a cada uno
Estimar el costo de implementar la
funcin (1 bajo, 9 alto)
Complejidad, Interfaz de usuario,
Determinado por los desarrolladores
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (3)
Estimar el riesgo asociado (1 bajo, 9 alto)
Falta de experiencia, tecnologa nueva,
Calcular la prioridad, as:
Prioridad =
% Valor / (% Costo + % Riesgo)
Se puede dar pesos al costo y al riesgo
El porcentaje es con respecto al total de todas
las funciones evaluadas
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Pasos (4)
Ordenar de forma descendente
Los primeros elementos, por tener un
balance favorable en costo/beneficio, son
candidatos a tener alta prioridad
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Ejemplo
Req. Bene-
ficio
Costo
no
tener
Valor %
Valor
Costo %
Costo
Riesgo %
Riesgo
Priori-
dad
R1 5 3 13 8.4 2 4.8 1 3 1.3
R2 9 7 25 16.2 5 11.9 3 9.1 0.9
T:
154
T:
42
T:
33
Pesos: Beneficio: 2, Costo no tener: 1, Costo: 1, Riesgo: 0.5
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Tablas:
Son una herramienta de gran ayuda, que
incluye elementos numricos en una
valoracin que generalmente es subjetiva
Los resultados obtenidos deben ser
revisados, pues sirven de gua pero no
son absolutos

Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Otros aspectos que se pueden
considerar
Volatilidad de los requerimientos
Competidores
Recursos



Sandra Victoria Hurtado Gil, 2009
EJERCICIO
Elabore una plantilla para calcular las
prioridades de los requerimientos
Sandra Victoria Hurtado Gil, 2009
PRIORIZAR
Otras tcnicas
Voto acumulativo (100-Dollar Test)
Distribuir 100 unidades (pesos, horas) entre
los requerimientos
Puntuacin (Ranking)
Dar un puntaje de 1 a N (para N
requerimientos), donde 1 es el menos
importante
Diez primeros (Top Ten)
Sandra Victoria Hurtado Gil, 2009
TEMAS
Priorizar
Identificar problemas
Identificar oportunidades
Negociar

Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Determinar
Los requerimientos son factibles
Tcnicamente
Econmicamente
Operacionalmente
No hay contradicciones/inconsistencias
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Algunas tcnicas
Lista de preguntas
Revisar casos de uso
Matriz de requerimientos
Matriz CRUD
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Ejemplo Lista de preguntas
Los requerimientos son consistentes
con los objetivos propuestos?
Hay requerimientos cosmticos, es
decir, que no son realmente necesarios?
Se requiere tecnologa con la que no se
cuenta actualmente?
Algn requerimiento se puede dividir en
otros requerimientos?
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Revisar casos de uso (1)
El diagrama de casos de uso presenta
claramente el comportamiento del
sistema
No hay cadenas de relaciones include y/o
extends
Hay pocas dependencias entre casos de uso
Todas las relaciones entre los casos de
uso estn justificadas
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Revisar casos de uso (2)
Se han identificado todos los casos de
uso
No hay casos de uso innecesarios
Si el modelo es muy grande o las
responsabilidades estn distribuidas, se
han utilizado paquetes
Los paquetes hacen el modelo ms fcil de
entender
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Matriz de requerimientos
Filas y columnas con los requerimientos
Cero (0) si son independientes
Uno (1) si presentan algn conflicto
Dos (2) si tienen elementos comunes, es
decir, se solapan
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Ejemplo - Matriz de requerimientos
R1 R2 R3 R4 R5 R6
R1 0 2 0 1 1
R2 0 0 0 0
R3 2 0 2
R4 1 1
R5 0
R6
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Matriz CRUD
Permite encontrar requerimientos
faltantes
Filas Casos de uso
Columnas Entidades - Conceptos
Celdas:
C: Crear
R: Leer - Consultar
U: Actualizar
D: Borrar
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Ejemplo Matriz CRUD
Entidades
Casos de uso Orden Qumico Solicitante Proveedor
Ingresar orden C R R R
Cambiar orden U,D R R
Gestionar inventario de
qumicos C,U,D
Reporte de rdenes R R R
Editar solicitantes C,U,R
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR PROBLEMAS
Entidades que no tengan alguna de
las acciones
Falta un caso de uso?
Algn caso de uso est incompleto?
El objeto no es necesario?
Falta determinar alguna regla del
negocio?
Sandra Victoria Hurtado Gil, 2009
EJERCICIO
Elabore la matriz CRUD para los
casos de uso y entidades en el
ejemplo
Determine posibles requerimientos
faltantes
Sandra Victoria Hurtado Gil, 2009
TEMAS
Priorizar
Identificar problemas
Identificar oportunidades
Negociar

Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR OPORTUNIDADES
Refinar los requerimientos
Requerimiento
Cmo va a
ser la entrada?
Cmo va a
ser el resultado?
Restricciones de
tiempo de ejecucin
Restricciones de
datos
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR OPORTUNIDADES
Requerimientos explcitos
Se declaran y establecen
Requerimientos implcitos
Se asume que se deben cumplir
Requerimientos innovadores
Van ms all de las expectativas del
cliente
Sandra Victoria Hurtado Gil, 2009
IDENTIFICAR OPORTUNIDADES
Mejorar usabilidad (facilidad de uso) del
sistema
Ayudas o guas para el usuario
No son triviales, impactan positivamente
Promedio de uso de cada accin
Acciones ms frecuentes tienen mayor prioridad y
facilidad de acceso
Sandra Victoria Hurtado Gil, 2009
TEMAS
Priorizar
Identificar problemas
Identificar oportunidades
Negociar

Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Consiste en llegar a un acuerdo en los
requerimientos, con las personas
interesadas en el proyecto
Se realiza
Cuando hay conflictos
Diferentes objetivos y perspectivas de las
personas interesadas
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Se deben identificar los conflictos
Elementos en conflicto
Autores, Fuentes
Participarn en la negociacin
Descripcin del conflicto
Posibles alternativas
Importancia / Urgencia

Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Plantilla propuesta
Conflicto <id> - <nombre>
Descripcin

Requerimientos
relacionados
Alternativas
Consecuencias
Posibles
soluciones
Comentarios
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Se deben evitar los conflictos
emocionales
Contar con un buen facilitar
Adems de los conflictos y las
alternativas, se deben hace explcitas
las argumentaciones
Apoyan la solucin seleccionada

Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Pasos (1)
Definir el problema
Definir los interesados
Identificar los objetivos de cada
interesado
Analizar los objetivos
Inconsistencias
Riesgos
Supuestos
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Pasos (2)
Determinar los criterios/reglas para
evaluar las alternativas
Negociacin, basada en:
Realizar propuestas y definir qu aspectos se
est dispuesto a cambiar
Buscar alternativas para los puntos en
conflicto
Establecer beneficios y compromisos de
cada una de las partes
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Se pueden usar herramientas que
ayuden en el proceso
Plantillas para identificar conflictos
Tormentas de ideas y votaciones
Espacios de trabajo compartidos
herramientas colaborativa Wikis
Herramientas automticas
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Herramientas automticas
NSS (Negotiation Support Systems)
Aspire
Negoisst
Easy Win-Win
SmartSettle


Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Modelo Win-Win
Elementos:
Condiciones ganadoras (Condiciones Win)
Objetivos y definiciones de los interesados con respecto al
sistema
Acuerdo
Una condicin ganadora que no presenta conflictos
Problema
Se crea cuando hay un conflicto entre condiciones
ganadoras
Opciones
Soluciones sugeridas
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Modelo Win-Win:
Condicin Win
Problemas
Opciones
Acuerdos
cubre
adopta
resuelven
involucra
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Pasos (1)
Establecer una forma de clasificar los
elementos, para
Entender el dominio del negocio
Buscar elementos rpidamente
En tarjetas se anotan las condiciones
ganadoras
Se clasifican y se dejan visibles (pegar en una
pared)
Sandra Victoria Hurtado Gil, 2009
NEGOCIAR
Pasos (2)
Se identifican conflictos
Se anotan en tarjetas
Se anotan en otras tarjetas las opciones
Se discuten los argumentos para seleccionar
una de las opciones anotadas
Los acuerdos (condiciones ganadoras sin
conflictos o las opciones seleccionadas)
Se pegan en otra pared
Sandra Victoria Hurtado Gil, 2009
ENLACES
Modelo Win-Win
http://sunset.usc.edu/publications/TECHR
PTS/1998/usccse98-512/usccse98-
512.pdf
http://www.mindtools.com/CommSkll/Neg
otiationSkills.htm
Plantilla Priorizacin
http://www.processimpact.com/goodies.sh
tml

S-ar putea să vă placă și