Beruflich Dokumente
Kultur Dokumente
Parte 1
Qu, Por qu, Quin, Cmo y Cundo
Qu es la Ingeniera de
Requerimientos?
Experiencia Previa?
Quin alguna vez hizo (en el mundo real):
Relevamiento de requerimientos
Entrevistas con clientes
Anlisis funcional
Tests de Aceptacin/Sistema
Validacin de Especificacin de
Requerimientos
Negociacin de Funcionalidad
Sebastian Uchitel
La Ingeniera de Software
Se ocupa de construir un producto de software
de alta calidad bajo restricciones de tiempo y
presupuesto.
Problemticas fundamentales:
Escala y complejidad.
Qu significa alta calidad?
Sebastian Uchitel
Calidad y Propsito
Software se desarrolla para un fin o propsito
El propsito es relativo a actividades humanas
Est lejos del software mismo.
Software vs Sistema
Software siempre es embebido
Embebido en hardware
Embebido en actividad humana (personas, organizaciones)
Embebido en un mundo fsico
Visin Sistmica:
Sistemas intensivos en Software: Software + Hardware + Entorno
El software es un componente ms
Ingeniera de Requerimientos de Sistemas Intensivos en
Software
El problema (y solucin) es el resultado del comportamiento
emergente de la interaccin entre los componentes del sistema
Uchitel - LAFHIS,
2007
Ejemplo
Sistema de remate por Internet
Componentes: Compradores, Vendedores, Empresas
transportistas, subsistema de pago electrnico, sistema de
correo electrnico
Software: el sistema a ser construido o extendido para
insertar y difundir tems, manejo de ofertas, facturacin a
oferente ganador, registro de evaluaciones de compradores y
vendedores, etc...
El propsito es relativo a propiedades emergentes como:
Satisfaccin de vendedores al lograr acceso a ms clientes
potenciales, satisfaccin de compradores al acceder a mayor
variedad de productos, relaciones de confianza entre
compradores y vendedores, etc...
Uchitel - LAFHIS,
2007
Ejemplo 2
Sistema de gestin de vuelo
Componentes: pilotos, controladores de trfico
areo, instrumentos de abordo y en tierra, el
sistema de prevencin de colisiones, etc...
Software: el piloto automtico a ser desarrollado
Propiedades emergentes: Transportacin rpida y
segura de pasajeros, distancias mnimas entre
aviones, capacidad de aterrizajes en aeropuerto en
hora pico, ...
Uchitel - LAFHIS,
2007
La Ingeniera de Requerimientos
No es una fase
o etapa!
Comunicacin
es tan importante
como la recoleccin
y anlisis
Calidad signifca
que cumple con su
propsito.
No se puede decir
nada acerca de
calidad si no se
entiende el
propsito.
Sebastian Uchitel
Diseadores
necesitan saber
cmo y donde el
sistema ser
utilizado.
Requerimientos
tratan en parte de
lo que se necesita
y en parte de lo
que es posible
Por qu la Ingeniera de
Requerimientos es relevante?
La voz de la experiencia...
RE is hard & critical ...
"hardest, most important function of SE is the iterative
Requirements...Engineering?
the requirements for a system do not rise naturally; instead, they
need to be engineered..."
(T. E. Bell, T. A. Thayer. Software Requirements:
Are They Really a Problem? ICSE 1976)
Sebastian Uchitel
11
Costo Relativo de
Correccin de Errores
200
50
1
10
20
12
1998
Exitosos
16%
26%
Con problemas
53%
46%
Cancelados
31%
28%
Con problemas
Cancelado
1.
Usuarios involucrados
Falta de input de
los usuarios
Requerimientos
incompletos
2.
Apoyo de gerencia
ejecutiva
Requerimientos
incompletos
Falta de input de
los usuarios
3.
Clara descripcin de
requerimientos
Requerimientos
cambiantes
Falta de recursos
Sebastian Uchitel
13
12.8%
2.
Requerimientos y Especificaciones
Incompletos
12.3%
3.
4.
7.5%
5.
Incompetencia tcnica
7.0%
6.
Falta de recursos
6.4%
7.
Expectativas no realistas
5.9%
8.
5.3%
9.
4.3%
10.
Tecnologa nueva
3.7%
Otros
23.0%
14
Requerimientos incompletos
13.1%
2.
12.4%
3.
Falta de recursos
10.6%
4.
Expectativas no realistas
9.9%
5.
9.3%
6.
Requerimientos y Especificaciones
cambiantes
8.7%
7.
Falta de planificacin
8.1%
8.
Ya no lo necesitabamos
7.5%
9.
Falta de gestin
6.2%
4.3%
9.9%
15
Sebastian Uchitel
1.
Involucramiento de Usuarios
15.9%
2.
13.9%
3.
13.0%
4.
Planificacin Apropiada
9.6%
5.
Expectativas realistas
8.2%
6.
7.7%
7.
Personal competente
7.2%
8.
Ownership
5.3%
9.
2.9%
10.
Otros
13.9%
16
Sebastian Uchitel
17
Propiedad del dominio cambiante: El peor caso de frenado es peor hoy que en 1918.
Sebastian Uchitel
18
Sebastian Uchitel
19
sistema actual,
mltiples propuestas de sistema a construir,
familia de sistemas,
posibles evoluciones del sistema
Mltiples aspectos
Sebastian Uchitel
20
Ingeniera de Requerimientos
Cmo, Cundo y Quin?
Problema
Descripcin del
Problema
El problema se corresponde
con las verdaderas
necesidades
La solucin correctamente
resuelve la descripcin del
problema
Descripcin de la
Solucin
Sistema
Sebastian Uchitel
22
Corresponde?
Validacin y Verificacin
Sebastian Uchitel
Correcto?
23
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Especificacin
Sebastian Uchitel
24
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Elicit:
to evoke or draw out (a
response, answer, or fact)
from someone in reaction to
one's own actions or
questions
Evocar (una contestacin,
respuesta, dato) de alguien
como reaccin a preguntas o
acciones....
Especificacin
Sebastian Uchitel
25
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Especificacin
Sebastian Uchitel
26
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Especificacin
Sebastian Uchitel
27
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Entendimos bien?
Modelamos bien?
Los modelos reflejan
la realidad?
Los requerimientos
reflejan necesidades
reales?
Negociacin
Especificacin
Sebastian Uchitel
28
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Especificacin
Sebastian Uchitel
29
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Cul es la mejor
alternativa?
Cmo uniformamos
criterios entre los
interesados?
Especificacin
Sebastian Uchitel
30
Actividades de IR
Desarrollo de
Requerimientos
Elicitacin
Modelado
Anlisis
Validacin
Priorizacin
Negociacin
Especificacin
Sebastian Uchitel
Generacin de el entregable
Documentacin completa y
detallada
Documentacin orientada a
lectura,
contrato,
encliclopedia,...
31
Actividades de IR
Sebastian Uchitel
Desarrollo de
Requerimientos
Gestin de
Requerimientos
Elicitacin
Elicitacin
Modelado
Modelado
Anlisis
Anlisis
Negociacin
Negociacin
Validacin
Validacin
Priorizacin
Priorizacin
Especificacin
Especificacin
32
Actividades y Entidades
Modelos de Requerimientos
stakeholders
especificacin
elicitacin
y modelado
sistemas
existentes
Especificacin
de Requerimientos
documentos
Sebastian Uchitel
anlisis
y validacin
negociacin y
priorizacin
33
Diagrama de
Contexto
Casos de Uso,
Pre/Post
Ing. Soft 2
Diagramas de Clases,
Objetos, Entidad Relacin
Maquinas de Estado,
Diagramas de Secuencia
34
Ciclo de Vida de la IR
Elicitacin
Negociacin
Requerimientos
Consolidados
Requerimientos
Acordados
Verificacin y
Validacin
Especificacin
Requerimientos Documentados
Sebastian Uchitel
35
Caracterizacin de Progreso
Completitud de
requerimientos
Acuerdo sobre
requerimientos
Completo
Parcial
vista
personal
informal
Sebastian Uchitel
Vista
comn
formal
Formalidad de
representacin de
requerimientos
[Pohl 1996]
36
Requerimientos
Diseo
Implementacin
Integracin
Validacin
Instalacin
Sebastian Uchitel
37
El Modelo V
requerimientos
de sistema
integracin
de sistema
abstraccin
requerimientos
de software
test de
aceptacin
diseo
preliminar
anlisis,
descomposicin
y diseo
diseo
detallado
test de
componentes
testeo
e integracin
test de
unidad
programacin
y debugging
integracin
time
Sebastian Uchitel
38
Sebastian Uchitel
39
ConcepcinElaboracin
Construccin
Transicin
Modelado de Negocios
Requerimientos
Anlisis y Diseo
Implementacin
Test
Puesta en Produccin
Workflows de Soporte
Adm. de Config.
Gerenciamiento
Entorno
Iteracin
Preliminar
Iter.
#1
Iter.
#2
Iter.
#n
Iter. Iter.
#n+1 #n+2
Iter.
#m
Iter.
#m+1
Iteraciones
Sebastian Uchitel
40
Grado de dependencia
con la implementacin
Dependiente
General
Exploracin
Nivel
de
Detalle
Detallado
Sebastian Uchitel
Definicin
del Problema
Definicin
de la Solucin
41
Existen?
Sebastian Uchitel
42
Resumen
Una introduccin a la Ingeniera de Requerimientos
Sebastian Uchitel
De qu trata
Por qu vale la pena
Actividades principales
Ciclo de vida
Contexto en el ciclo de vida del desarrollo de software
Quin lo hace
43