Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Objetivos
LaFHIS 2
Ingeniería de Requerimientos
Orientado a Objetivos
El uso de objetivos y las relaciones que estos tiene entre si y con otros
modelos como elementos centrales en la...
– elicitación
– elaboración
– estructuración
– especificación
– análisis
– negociación
– documentación
– evolución
... de requerimientos
LaFHIS 3
Una noción de objetivo más rica
Tipo de Objetivo Nombre de
(Lograr, Mantener/Evitar, Categoría de Definición en
Objetivo lenguaje natural
Objetivo blando) Objetivo (opcional)
LaFHIS 6
¿Para qué sirven las Categorías?
• Proveen heurísticas para
– Elicitar requerimientos. Como checklist
– Analizar y reutilizar modelos
• Interacciones típicas entre categorías
• Técnicas de análisis especializadas
• No deben usarse para
– Particionar estrictamente las aserciones prescriptivas
– Invertir tiempo y esfuerzo en decidir la categoría de un
objetivo
LaFHIS 7
Tipos de Objetivos
Comportamiento Comportamiento
requerido preferido
LaFHIS 8
Objetivos de Comportamiento
• Recortan el espacio de
comportamientos permitidos
– Las puertas del tren estarán cerradas
mientras el tren está en movimiento
• Comprobación arroja resultado
binario
• Tienen un correlato con modelos
operacionales de comportamiento
LaFHIS 9
Objetivos de Comportamiento:“Lograr”
Patrón temporal
Lograr....
Condición Condición
... ... ...
Actual Esperada
LaFHIS 10
Ejemplo de Objetivo “Lograr”
LaFHIS 11
Más ejemplos...
• Lograr[Pedido de Reunión Satisfecha]: Si una reunión
ha sido pedida entonces la reunión ocurrirá en los
plazos establecidos y todos los invitados estarán
presentes
• Lograr[Pedido de Libro Satisfecho]: Si un libro ha sido
pedido por un usuario, entonces el libro será prestado
al usuario en menos de una semana.
• Lograr[Progreso de Tren]:...
• Lograr[Libro Prestado Retornado]:...
LaFHIS 12
Objetivos de Comportamiento: “Matener/Evitar”
Patrones Temporales:
siempre Condición buena
siempre no Condición mala
Condición actual ⇒ siempre Condición buena
mantener
LaFHIS 13
Objetivos Blandos
• Denotan preferencia entre comportamientos
• Permiten razonar sobre sistemas alternativos
• Su satisfacción no puede establecerse mirando un sistema o una
traza, deben compararse dos sistemas/trazas
• Difícil de vincular con modelos de comportamiento
• Ejemplos
– “La interacción entre participantes será mínima”
– “El estrés inherente a las condiciones de trabajo de los conductores
será reducida”
– “Pasajeros tendrán mejor información de conexiones de trenes”
– “El sistema será fácil de usar para personal administrativo”
– El trabajo manual en el proceso de préstamo de libros deberá
reducirse”
• Pueden ser clasificados al igual que los de comportamiento
– Mejorar[], Incrementar[], Minimizar[], etc.
LaFHIS 14
Ejemplo de Objetivos Blandos
Programación Efectiva de Reuniones
Máximo Presentismo
Reducir Esfuerzo de
participantes
Restricciones
Conocidas
Restricciones Comunicación
e-agenda
Pedidas Funcionando
accesible
• Clasificaciones ortogonales
• Ej.
– El controlador de velocidad ajustará la velocidad en
el caso de exceso de velocidad en menos de 50
milisegundos.
– El controlador de velocidad ajustará la velocidad en
el caso de exceso de velocidad en el menor tiempo
posible.
LaFHIS 16
Objetivos Medibles
• Para los no-funcionales debe haber un ‘criterio de aceptación‘
– Objetivo: “El software será intuitivo e instrucciones de uso auto-
contenidas”
– Criterio: “95% de los clientes existentes del banco podrán extraer
plata y depositar cheques en menos de dos minutos en su primer
encuentro con el sistema”
• Para los blandos debe haber un ‘criterio de comparación‘
– Objetivo: “El software será lo más intuitivo posible y ...”
– Criterio: ... basado en tiempo que tardan clientes en extraer plata y
depositar cheques en su primer encuentro con el sistema”
• Elección no trivial
– Stakeholders no suelen ser tan específicos.
– Fácil de medir no implica correspondencia con objetivo
– Métricas estándar no necesariamente se corresponden con objetivos
LaFHIS 17
Ejemplos de Criterios de Aceptación
Calidad Métrica
Tiempo de respuesta
Velocidad / Performance
Transacciones por segundo
Tiempo para completar tareas
Facilidad de Uso
Tiempo de entrenamiento
Tiempo promedio entre fallas,
Confiabilidad Probabilidad de falla bajo demanda
Probabilidad de no disponibilidad
Tiempo promedio entre amenaza física,
Seguridad Física
...
Tiempo para restablecer funcionalidad después de
Robustez falla
porcentaje de eventos que producen falla
Tiempo requerido para portar sistema a otra
Portabilidad plataforma
LaFHIS 18
Tipos de Objetivos - Resumen
• ¿Para qué distinguir el tipo de objetivo?
LaFHIS 19
Relacionando Opciones con Objetivos Blandos
Refinamiento de Objetivo
Sebastian Uchitel 20
Ejemplo de Coordinador de Reuniones
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección
vía Web Iniciador
Resolución
Manual
Sebastian Uchitel 21
Ejemplo de Coordinador de Reuniones
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección
vía Web Iniciador
Resolución
Manual
Sebastian Uchitel 22
Ejemplo de Coordinador de Reuniones
• Representación Tabular
Objetivo Blando
Reducir Esfuerzo Tiempo de Precisión de Reducir
Objetivos del Iniciador
Opciones Recolec. Restricciones Esfuerzo de
Reducido participantes
-- - + -
Recolec. x
iniciador
++ ++ - +
Restricciones Recolec. vía
Recolectadas agendas
++ - + -
Recolec. vía
Web
Afirmación: algunos
Afirmación: Algunas participantes ya
agendas no estarán usan agenda
actualizadas
Sebastian Uchitel 23
Ejemplo de Coordinador de Reuniones
Flexibilidad
para iniciador
Precisión -
++
Reunión Conveniente Planif. ++ - Resolución
Automatizada
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección
vía Web Iniciador
Resolución
Manual
Sebastian Uchitel 24
Ejemplo de Coordinador de Reuniones
Flexibilidad
para iniciador
Precisión -
++
Reunión Conveniente Planif. ++ -Resolución
Automatizada
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección O
vía Web Iniciador
interactive
scheduling Resolución
Manual
Best Dates Proposed Best Date Selected
Scheduler Iniciador
Sebastian Uchitel 25
Elaboración del Grafo de Objetivos Blandos
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección O
vía Web Iniciador
Resolución
Interactiva Resolución
Mejores Fechas Manual
Propuestas Mejor Fecha
Seleccionada
Scheduler Iniciador
Sebastian Uchitel 26
Elaboración del Grafo de Objetivos Blandos
Reducir esfuerzo
de usuarios Calidad de
Planificación
Calidad de
Tiempo para Decisión
Reducir Esfuerzo Reducir Esfuerzo decidir
del Iniciador de participantes
Tiempo de Flexibilidad
-- ++ Recolec. Reducido
Precisión para iniciador
++ - ++ - Precisión de -
Reunión Conveniente Planif. Resolución ++
Restricciones
++ -
Automatizada
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección O
vía Web Iniciador
resolución
interactiva Resolución
Mejores Fechas Manual
Propuestas Mejor Fecha
Seleccionada
Scheduler Iniciador
Sebastian Uchitel 27
Razonamiento sobre Objetivos de Alto Nivel
Reducir esfuerzo
de usuarios Calidad de
Planificación
Calidad de
Tiempo para Decisión
Reducir Esfuerzo Reducir Esfuerzo decidir
del Iniciador de participantes
Tiempo de Flexibilidad
-- ++ Recolec. Reducido
Precisión para iniciador
++ - ++ - Precisión de -
Reunión Conveniente Planif. Resolución ++
Restricciones
++ -
Automatizada
Restric. Recolectadas
Reunión Planificada Scheduler
Recolección Recolección
en Base a Restricciones O
x iniciador vía agenda
Recolección O
vía Web Iniciador
resolución
interactiva Resolución
Mejores Fechas Manual
Propuestas Mejor Fecha
Seleccionada
Scheduler Iniciador
Sebastian Uchitel 28
Lo que pasó, lo que se viene...
LaFHIS 29
¿Cómo elicitar Objetivos?
• Elicitación temprana
– ¿problemas y deficiencias del sistema actual?
– ¿objetivos de mejora del sistema futuro?
– ¿Objetivos estratégicos del cliente?
– Ver técnicas de elicitación
• Basadas en stakeholders
– Observación, entrevistas y sesiones de grupo
• Basadas en documentación
– “deberá”, “será”, “asegurará”, ”se espera que", “queremos” ...
– “propósito”, "objetivo", “fin”, ...
– refinamientos: “ para lograr X el sistema deberá Y”
– Usar checklists de categorías de objetivos
LaFHIS 30
¿Cómo elicitar Objetivos?
LaFHIS 31
Preguntando COMO y POR QUE
…
¿POR
¿COMO? QUE?
Primera Intervención …
… de Ambulancia
LaFHIS 33
Preguntando POR QUE
• ¿Por qué este objetivo debería ser satisfecho?
• ¿Existen sub-objetivos redundantes para la
satisfacción de un objetivo?
• ¿Existe otro objetivo al cual este objetivo aporta?
LaFHIS 34
POR QUE
Lograr[ Restricc
iones de
participantes
conocidas]
¿Por qué?
Lograr[ Partic
ipantes
informados]
¿Por qué?
LaFHIS 35
Objetivos vs. Operaciones
• Las operaciones inducen objetivos (vía poscondiciones)
• No confundir objetivos con operaciones/casos de uso
– Operaciones podrían ser más generales
– Relación muchos a muchos.
Informar Asignar
Particpantes ambulancia...
LaFHIS 36
Contra Reciproco de Objetivos Lograr
LaFHIS 37
Ejemplos de Contra-Recíproco
Objetivo:
• Si Pulsos de Rueda =>
<> Aceleración de Reversa Habilitada
Contra-recíproco:
• [] (Si Aceleración de reversa => Pulso de Ruedas)
Objetivo:
• Si Item Pagado => <> Item Enviado
Contra-recíproco:
• [] (Si Item enviado => Item Pagado)
LaFHIS 38
Caso Complementario de Objetivo Lograr
Ej.
– Si la señal de sección es de avance => <> el tren que se
aproxima estará en la sección
– Si la señal de sección no es de avance => ...
LaFHIS 39
Sistemas Alternativos
Restricciones
Conocidas
Restricciones Comunicación
e-agenda
Pedidas Funcionando
accesible
LaFHIS 41
Refinamiento por Hitos
- Variante con Objetivos Mantener -
Matener[Peor Caso de Frenado]
Matener[Aceleración Matener[Aceleración de
Segura Comandada] Tren basada en Comandos]
Refinamiento x Hitos
Lograr[Aceleración
Computada Recibida
Mantener[Datos por el Tren a tiempo]
Precisos de Aceleración
y Posición Estimados]
Lograr[Aceleración
Computada Enviada
Mantener[Aceleración Segura al Tren a tiempo]
Computada a partir de Estmaciones]
LaFHIS 42
Patrones de refinamiento por casos
• Refinamiento por casos
– para Objetivos “Lograr” (similar para Mantener)
• Ejemplo de uso
Lograr[AmublanciaAsignadaMovilizada]
refinamiento por casos
Lograr[AmbulanciaAsignadaMo Lograr[AmublanciaAsignadaMo
vilizadaCuandoEnEstación] vilizadaCuandoEnViaje]
LaFHIS 43
Refinamiento por Casos vs. O-Refinamientos
Amb. Asignada
• No confundir ... Movilizada
Alternativa
– O-refinamiento ... Radio.
Alternativa
Term. Móvil
(que introduce sistemas ...
...
alternativos)
LaFHIS 44
Refinamiento por Casos e Hitos: Un Ejemplo Real
LaFHIS 45
Refinamiento: Introducción de Guarda
Mantener[Condición1 Mantener[Condición2
SalvoQue Condición Final] SalvoQue Condición Final]
• Ejemplo de uso
LaFHIS 47
Refinamiento para
lograr Objetivos Asignables
• Aplicable cuando un objetivo se refiere a cantidades o
eventos no monitoreables por un agente
Objetivo No Realizable Por Condición No Monitoreable
Resolución de Falta
de Monitorabilidad
ObjetivoNoRealizablePorCondición No Controlable
Resolución de Falta de
Controlabilidad
Objetivo sobre Condición controlable
Condición controlable Sii Condición No Controlable
LaFHIS 49
Patrones: Un Enfoque Formal
Objetivo Subobjetivos Nombre
[](C1 ∨ C2)
P ⇒ <> Q P ∧ C1 ⇒ <> Q1 P ∧ C2 ⇒ <> Q2 x casos
Q1 ∨ Q2 ⇒ <> Q
Condición
P ⇒ <> Q P ∧ !R ⇒ <> R P ∧ R ⇒ <> Q P ⇒ []P
necesaria
Condición
P ⇒ <> Q !R ⇒ <> R P ∧ R ⇒ <> Q P ⇒ []P
necesaria*
Interpretación:
P = “Usuario requiere un libro”
Q = “Usuario puede retirar el libro”
R = “Un ejemplar del libro está disponible
LaFHIS 51
Utilización de Patrones
• Refinamiento • Abstracción
Objetivo ¿?
¿Cómo?
¿Por qué?
¿? ¿? Objetivo Objetivo
• Verificación • Documentación
Objetivo
Objetivo
Patrón
LaFHIS 52
Resumen de Patrones de Refinamiento
• Reuso
• Completos (Patrones pre-verificados)
• Codifican tácticas de refinamiento
usuales
• Codifican experiencia
• Guían el proceso de modelado
• Facilitan documentación y comprensión
LaFHIS 53
Resumen
• Una noción más rica de objetivos
– Meta-información relativa al objetivo
– Modos de definición alternativas de objetivos
• Clasificaciones de objetivos
• Construcción de modelos de objetivos.
Métodos y Heurísticas
– Elicitación Temprana
– Porqué y Cómo
– Descripciones operacionales
– Manipulación de objetivos
– Patrones de refinamiento
LaFHIS 54