Sunteți pe pagina 1din 63

Anlisis de

requerimientos

Pilar Stronguil Leturia


Agenda
Introduccin
Modelos y tcnicas de anlisis
Construccin y evaluacin de
prototipos
Priorizacin de requerimientos
Negociacin requerimientos
Introduccin
Ingeniera de Requisitos
Ingeniera de Requisitos

Desarrollo Administracin

Captura Anlisis Especificacin Validacin


Relacin del anlisis con la
captacin de requerimientos
El anlisis y la captacin de requerimientos
estn ntimamente relacionados.
Cuando los requerimientos son capturados es
inevitable analizarlos.
Los problemas deben ser reconocidos de
manera inmediatamente as como el anlisis de
las causas.
Los ingenieros de requerimientos y los
stakeholders deben negociar la definicin de los
requerimientos que deben ser incluidos en el
software.
Relacin del anlisis con la
captacin de requerimientos
Declaracin preliminar
de requerimientos
Captacin de
requerimientos

Anlisis de
requerimientos

Documentacin Problemas de
de requerimientos requerimientos

Negociacin de
requerimientos
Anlisis y negociacin de
requerimientos
Al anlisis de requerimientos le concierne el
refinamiento de los requerimientos para
asegurarse que los stakeholders los
comprendan y examinen para que no
existan errores, omisiones o deficiencias.
Incluye
La descomposicin de los requerimientos de alto
nivel en detalles.
La construccin de prototipos.
La evaluacin de la factibilidad.
La negociacin de las prioridad.
El proceso del anlisis y la
negociacin
Anlisis de requerimientos

Verificacin de
Necesidad de Verificacin de
consistencia y
verificacin la factibilidad
trmino

Requerim. Requerim.
incompletos o Requerim. no
innecesarios factibles
en conflicto

Discusin de Priorizacin de Acuerdo de los


requerimientos requerimientos requerimientos

Negociacin de requerimientos
Modelos y tcnicas de
anlisis
Modelos de anlisis
Modelamiento del negocio y de la empresa
Incluye:
El estudio de la dinmica de los procesos.
La comprensin de la estructura organizacional.
La documentacin de las reglas de negocio.
La identificacin de objetivos, tareas y responsabilidades.
El estudio de los documentos y archivos de datos.
Modelamiento de datos
Incluye:
El diagrama de las clases persistentes (modelo
conceptual).
La comprensin, manejo y manipulacin de grandes
volmenes de informacin.
La representacin de fenmenos del mundo real en
sistemas de informacin.
Modelos de anlisis
Modelo de comportamiento
Estudio del comportamiento dinmico o
funcional de los stakeholders y el sistema;
ambos requeridos y existentes.
Normalmente se hace a travs de prototipos.
Modelo del dominio
Es la descripcin abstracta del mundo en donde
el sistema va a operar.
Es importante la seleccin de los componentes
que pueden ser reusados.
Modelos de anlisis
Modelo de los requerimientos no
funcionales
Son propiedades del sistema como un
todo en donde existe dificultades para:
Expresarlos de una manera mesurable.
Analizarlos y proponer un mecanismo
apropiado de solucin.
Establecer los procedimientos de prueba.
El modelo QFD
El modelo QFD (Quality Function Deployment) es
una metodologa que permite sistematizar la
informacin obtenida del usuario hasta llegar a
definir las caractersticas de calidad del servicio,
adaptando as el producto, a las necesidades y
expectativas detectadas.
Fue introducido en Japn por Yoji Akao en 1966.
El primer libro en japons sobre este mtodo se
public en 1978.
A partir de 1990 aparece bibliografa en ingls y,
ms adelante, en otros idiomas.
Su herramienta fundamental es la Casa de la
Calidad (HOQ).
La casa de la calidad
Tiene dos propsitos:
Desplegar la calidad del producto o
servicio. Es decir, el diseo del servicio o
producto sobre la base de las
necesidades y requerimientos de los
clientes.
Desplegar la funcin de calidad en todas
las actividades y funciones de la
organizacin.
La casa de la calidad

3.
Interrelaciones

2. Requisitos tcnicos

5.
6.
4. Prioridades/
1. Evaluacin
Relaciones entre los requisitos Importancia
Requisitos competitiva
del cliente y los requisitos de los
del Cliente y calidad
tcnicos requisitos
planeada
del cliente
7. Objetivos de calidad /
Prioridades de los requisitos
tcnicos
Partes de la casa
(1) Requisitos del cliente
En esta seccin se documenta la voz del cliente. Representa los Qu
del sistema. Se utilizan de forma complementaria los diagramas de
afinidad o los diagramas de rbol para estructurar estos requerimientos.
(2) Requisitos tcnicos
En esta seccin se lista los requerimientos tcnicos que explican cmo la
compaa har posible que se cumplan los requerimientos del cliente.
Estos constituyen los Cmo del sistema. Tambin se le conocen como
caractersticas de ingeniera o la voz de la compaa. Esta informacin
se obtiene del grupo de diseo e incluye entre otros.
Mtricas de alto nivel
Caractersticas y capacidades (funcionales y no funcionales).
(3) Matriz de correlacin o interrelaciones
Se le conoce tambin con el nombre de techo. Muestra como los
Como pueden tener conflictos entre s. Se focaliza en la mejora del
diseo y en las relaciones (usualmente negativasI de sus elementos.
(4) Matriz de relaciones
Ocupa el centro de la casa y es el ms grande. Utiliza un criterio de
calificacin en el que se establece que tan bien los requerimientos
tcnicos satisfacen las necesidades del cliente.
Partes de la casa
(5) Importancia de los requerimientos del cliente
Establece el grado de importancia de la necesidad en
comparacin con otras.
(6) Matriz de planeamiento y de evaluacin competitiva
Representa una declaracin de la situacin competitiva del
producto desde la perspectiva del cliente.
Tambin establece la calidad planeada para el producto.
(7) Objetivos de calidad
En esta seccin se suman las conclusiones de la matriz de
planeamiento. Tiene tres partes importantes:
Prioridades tcnicas (importancia relativa de cada requerimiento
tcnico respecto del conjunto de necesidades del cliente).
Benchmarking competitivo (es la posicin relativa del producto
frente a sus competidores).
Objetivo (Valores de ingeniera deseados para el nuevo diseo del
producto)
Ejemplo
de casa
de
calidad
Las cuatro casas de la calidad
El modelo QFD incluye cuatro casas de la
calidad que corresponden con cuatro fases
en el desarrollo de un producto ya sea de
sistemas o de otra ndole.
Planeamiento del producto (primera casa)
Distribucin de las partes.
Planeamiento del proceso y control.
Planeamiento de la produccin y calidad.
Las cuatro casas de la
calidad
Caractersticas
Requisitos
de los
tcnicos componentes

Requisitos
Requisitos
del 1 tcnicos 2
cliente

Plan de Operaciones
control de de los
calidad procesos

Operaciones Caractersticas
de los 4 de los
componentes
3
procesos
Tcnicas de anlisis
Listas de chequeo
Matriz de interaccin
Checklists
Una lista de chequeo se compone de un
conjunto de preguntas que los analistas
pueden usar para establecer cada
requerimiento.
Son apropiadas porque proporcionan un
recordatorio acerca de que mirar y como
validar los requerimientos.
Pueden ser implementadas en hojas de
clculo donde las filas son los
requerimientos y las columnas son los
aspectos de chequeo.
Checklist
Aspecto de Descripcin
chequeo

Los requerimientos incluyen un diseo


Diseo prematuro prematuro o informacin de
implementacin?

Requerimientos Se describe de manera nica o puede ser


combinados descompuesto en diferentes requerimientos?

Requerimientos Es el requerimiento una adicin cosmtica y


innecesarios superficial que no es necesaria realmente?

Uso de hardware Se usarn para implementarlo, hardware o


no estndar software no estandarizado?
Checklist
Aspecto de
Descripcin
chequeo
Conformidad con
Es el requerimiento consistente con los
objetivos de
objetivos del negocio establecidos?
negocio

Ambigedad de El requerimiento se puede interpretar de


requerimientos diferentes maneras por distintas personas?

Es el requerimiento realizable para la


Realismo de
plataforma de implementacin
requerimientos
seleccionada?

Capacidad de Est el requerimiento establecido de una


prueba forma que pueda ser fcil de ser probado?
Matriz de interaccin
Un objetivo importante del anlisis de
requerimientos es descubrir las
interacciones entre requerimientos y resaltar
los conflictos y duplicidades.
Se puede usar una hoja de clculo en
donde:
Se etiqueten tanto las filas y columnas con los
identificadores de los requerimientos.
Cada requerimiento es comparado con el otro
con la siguiente calificacin:
Para requerimientos en conflicto poner en la casilla 1.
Para requerimientos con duplicidad poner 1000.
Para requerimientos que son independientes poner 0.
Matriz de interaccin
Los requerimientos que se duplican o
traslapan y aquellos que estn en conflicto
debern ser discutidos y resueltos en una
negociacin con los stakeholders.
Cuando hay muchos requerimientos en
conflicto es seal de que cualquier cambio
tendr una alta probabilidad de impactar
en el resto del sistema.
Matriz de interaccin
Requerimientos R1 R2 R3 R4 R5 R6
R1 0 1 100 1 0 1

R2 0 1 100 1 0

R3 0 1 0 1

R4 0 100 1

R5 0 0

R6 0
Construccin y
evaluacin de prototipos
Prototipo
Qu es?
Un prototipo no es ms que una
versin de un producto de software
desarrollado en diferentes etapas del
ciclo de vida de un producto,
elaborado para propsitos
experimentales y especficos
Prototipos
Por qu son necesarios?
El desarrollo tradicional provocaba un
divorcio entre los desarrolladores y los
usuarios finales.
La actividad de concepcin del producto
debe estar orientada a los usuarios finales.
No se debe esperar a presentar el producto
final al usuario porque las modificaciones
son muy costosas.
Prototipos
El uso de prototipos esta relacionado
directamente con la reduccin del
riesgo y la incertidumbre en los
siguientes aspectos:
La comprensin y validacin de los
requerimientos capturados
La viabilidad de negocio de un producto
que se est desarrollando.
La estabilidad o rendimiento de la
tecnologa.
Prototipos
.....
Acuerdos del proyecto y fundamentos,
basados en la prueba de conceptos en
prototipos.
La vista y apreciacin del producto: su
capacidad de uso.
Prototipos
Tipos
Los prototipos se pueden observar de
dos maneras:
Como Estudio
Que es lo que se investiga?
Como Evolucin
Cul es el resultado?
Prototipos de estudio
En este contexto los prototipos se
clasifican en dos:
De comportamiento
Cuyo enfoque est en el estudio de un
comportamiento especfico del sistema.
Estructural
Que explora algunos temas de arquitectura y
tecnologa.
Prototipos de evolucin
En este contexto tambin hay dos
tipos:
Exploratorio
Que se lanza inmediatamente luego de
terminado para ser evaluado throw-away.
Evolutivo
Que gradualmente se convierte en las
interfaces de usuario finales y evoluciona al
desarrollo del sistema empleado tcnicas
RAD (Rapid application development).
Estrategia exploratoria
Descripcin de
los casos de uso
Feedback

Feedback
Mapa de dilogo

Feedback

Prototipo Throw
away

Detallar la
interfaz de
usuario
Estrategia evolutiva
Especificacin
bsica

Prototipo inicial Refinar


prototipo

prueba ok?
NO Refinar
SI
especificacin
Aceptar
Principios de prototipado
Prototipo
Horizontal
Caractersticas del Sistema

Escenario
Prototipo
Vertical

Nivel de Funcionalidad
Prototipo horizontal
Es til cuando lo que se desea es
realizar una especificacin que rena
todas las caractersticas funcionales
del sistema sin detalles de validacin.
Prototipo vertical
Es til cuando lo que se desea es
realizar una especificacin que rena
todas las caractersticas no
funcionales del sistema con detalles
cercanos a la implementacin
(atributos del software).
Tpicas aplicaciones en el
diseo de prototipos
Exploratorio Evolutivo
Horizontal Clarifica y refina los Implementa los caso de uso
casos de uso y req. del ncleo.
Funcionales. Implementa casos de uso
Identifica funcionalidad adicionales de acuerdo a
faltante. prioridad.
Explora las Implementa y refina los sitios
aproximaciones a la Web.
interfaz de usuario. Adapta el sistema a cambios
rpidos
Vertical Demuestra la factibilidad Implementa la capas de
tcnica. funcionalidad y
comunicacin.
Prueba y afina el rendimiento.
Prueba controles y funciones.
Aspectos en el diseo de
prototipos
Identificacin de la(s) ventana(s)
principal(es) o primaria(s).
Diseo de su visualizacin.
Diseo de sus operaciones.
Diseo de las ventanas secundarias o de
propiedades.
Diseo de operaciones con mltiples
objetos.
Diseos de otras caractersticas
complementarias.
Prueba del prototipo
Observar el
desempeo
de los usuarios
en el uso
del prototipo

Lograr acuerdos
documentados!

Desarrolladores
Refinamiento del prototipo
Se evalan las deficiencias contra los
objetivos que se persiguen con el sistema.
Las sugerencias de los usuarios no debern
violar los objetivos del sistema propuesto.
Con los cambios de la especificacin
aprobados, se realiza la modificacin al
prototipo del sistema.
En las nuevas versiones del prototipo se
pueden ir incorporando el resto de las
especificaciones funcionales definidas.
Prototipos
Resulta ms fcil derribar una
pared de concreto que realizarle
cambios al cdigo de los
programas ya elaborados

El prototipo no debe incluir


cdigo!
Priorizacin de
requerimientos
Priorizacin de Requerimientos
Por qu priorizar los requerimientos?
Cuando las expectativas del usuario son
altas y los tiempos cortos se deben entregar
avances lo ms pronto posible.
La priorizacin es una manera de lidiar ante
altas demandas y escasos recursos.
La priorizacin permite establecer planes.
Usando atributos en los
Requerimientos
Estado
Prioridad Costo

Dificultad
Propietario
Requerimiento

Categora Nivel de Test/


precedencia
Riesgo
Iteracin #
Los atributos sirven para priorizar primero y luego
administrar los requerimientos
Atributos de Requerimientos
Prioridad
Establece la programacin de
requerimientos en un plan de iteraciones o
implementacin, tomando en cuenta la
perspectiva del negocio.
Puede tomar los valores de:
A = Alta (debe programarse primero).
M = Media (puede programarse en otras
iteraciones diferentes a la primera).
B = Baja (puede programarse en las
ltimas iteraciones).
Atributos de Requerimientos

Categora
Establece la clasificacin de los
requerimientos de acuerdo a la necesidad o
tecnologa requerida para los mismos.
Puede tomar los valores de:
P = Primario (no debe faltar).
S = Secundario (es necesario pero no
indispensable).
O = Opcional (es alternativo, novedoso,
pero no necesario).
Atributos de Requerimientos
Riesgo
Establece el nivel de peligro por
inversin o resultados difciles de
predecir de un requerimiento:
A = Alto (de alto riesgo o peligro).
M = Medio (de riesgo medio).
B = Bajo (no es riesgoso).
Atributos de Requerimientos
Dificultad
Establece el nivel de dificultad que
tiene un requerimiento en la
programacin, porque involucra
tecnologa nueva o porque su
naturaleza es compleja
A = Alta (de alta dificultad).
M = Media (de dificultad media).
B = Baja (de fcil implementacin).
Atributos de Requerimientos
Visibilidad
Establece el nivel de contacto con el
usuario que tiene un requerimiento.
V = Visible (de alta interaccin con el usuario).
Un ejemplo tpico es la entrada de datos del usuario.
O = Oculto (de baja o nula interaccin con el
usuario).
Un ejemplo son los clculos o procesos ocultos al
usuario.
Atributos de Requerimientos
Precedencia
Permite establecer que requerimientos
son necesarios para que otros se
inicien o sucedan.
Este atributo permite establecer la
cadena de implementaciones y que
requerimientos dependen de los
resultados de otros.
Priorizar requerimientos
En base a la experiencia
Aquellos que representen procesos
primarios o la lnea de negocio.
Seleccionar los que influyan
profundamente en la arquitectura
bsica, dando soporte al dominio y a
las capas de servicio de alto nivel o
Escoger los que presenten el mximo
riesgo, funciones urgentes o
complejas en las primeras iteraciones.
Priorizar requerimientos
En base a ponderaciones
Se definen valores a los atributos de
los requerimientos.
Se aplican pesos a los diferentes
valores de los atributos.
Se calcula el peso total de cada
requerimiento.
Se priorizan los requerimientos de
mayor peso total.
Priorizar requerimientos
Atributos

Nro. Requerimiento
Prioridad Dificultad Visibilidad Riesgo Categora
Prec.
(A, M, B) (A, M, B) (V, O) (A, M, B) (P, S, O)

R01 Registrar Sucursales. A M V B P

R02 Registrar el Producto A A V M P

Registrar los precios de


R03 A B V M P R2
los Productos.
Consultar los Productos
R04 A B V M P R2
en Catlogo va WEB
Registrar la flota de
R05 vehculos por A B V B P R1, R2
Sucursal
Clasificar vehculos por
R06 A B V B P R2
producto.
Consultar vehculos por
R07 A B V B P R5
producto.
Priorizar Requerimientos
Otros criterios
Los que requieran investigacin a
fondo o nueva tecnologa.
Los que apoyen directamente el
aumento de ingresos o la reduccin
de costos.
Negociacin de
requerimientos
Negociacin de requerimientos
Todos los sistemas complejos tienen muchos
usuarios y stakeholders que pueden no estar de
acuerdo con la priorizacin o el establecimiento de
los requerimientos.
La negociacin es un proceso objetivo en le que
se discuten los conflictos entre los requerimientos
con la finalidad de encontrar el compromiso y
consenso de los stakeholders.
La lista final de requerimientos es un compromiso
que est regido por las necesidades de la
organizacin en general.
Llevar a cabo reuniones es el camino ms efectivo
para realizar la negociacin.
Negociacin de requerimientos
Proceso a seguir en una reunin de
negociacin:
Informar: Etapa en la que se establece la
naturaleza de los problemas encontrados.
Discutir: Etapa en la que los stakeholder
discuten el como los problemas pueden
ser resueltos. Se debe establecer las
prioridades.
Resolver: Etapa en la que se toman
acuerdos y acciones a seguir.
Conclusiones
Los modelos y tcnicas de anlisis son tiles
para validar los requerimientos obtenidos
durante la captura.
El prototipo es una tcnica muy eficiente
para de una manera amigable resolver
conflictos y asegurar la conformidad de los
usuarios.
La priorizacin y negociacin de los
requerimientos son siempre necesarias para
resolver conflictos e involucrar y
comprometer al usuario.
Lectura obligatoria

EELES Peter, Capturing Architectural


Requirements. En:
http://www.ibm.com/developerworks/ration
al/library/4706.html
.Y los anexos del documento.

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