Está en la página 1de 45

Elicitacin De

Requerimientos
Lic. Mario G. Oloriz
Agosto 2004

Elicitacin
Es el proceso de adquirir (eliciting)
[sonsacar] todo el conocimiento relevante
necesario para producir un modelo de los
requerimientos de un dominio de problema
Objetivo: entender el dominio del problema
en particular
Dnde encontrar el conocimiento?
Problemas:

Forma no utilizable del conocimiento


Dificultad cuando se trata de un experto humano

Mario G. Oloriz

Temario
Tcnicas de elicitacion
Ingeniera de requerimientos como proceso
social
Ingeniera de requerimientos y elicitacin de
conocimiento
Conclusin

Mario G. Oloriz

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

Partiendo del usuario


El ms intuitivo de los enfoques
Razones de las dificultades:
Poca claridad del usuario
Dificultad del usuario para transmitir su
conocimiento
Diferencias entre usuario y analista
El usuario puede no querer el sistema

Se dispone de una serie de tcnicas

Mario G. Oloriz

Partiendo del usuario


Tcnicas
Entrevista de comienzo y final abierto
Entrevistas estructuradas
Brainstorming

Mario G. Oloriz

Entrevistas de comienzo y
final abierto
Forma ms simple de interaccin analistausuario
El analista deja que el usuario hable de su
tarea
Ambiente informal
tiles para obtener visiones generales
No son tiles para obtener informacin
detallada

Mario G. Oloriz

Entrevistas estructuradas
Direcciona al usuario hacia aspectos
especficos de requerimientos a elicitar
Son tiles para informacin detallada
Preguntas cerradas, abiertas, de sondeo y de
gua
Informacin para obstculos y soporte

Mario G. Oloriz

Brainstorming
Se utiliza para resolver la falta de consenso
entre usuarios
Es til combinarlo con la toma de decisiones
Ayuda a entender el dominio del problema
Encara la dificultad del usuario para transmitir
Reduce la falta de consenso
Ayuda a entender: al usuario y al analista

Mario G. Oloriz

Partiendo del usuario


Resumen
El medio ms directo para la elicitacin
Se requieren habilidades especiales del
analista
Problemas:
tiempo limitado del usuario
dificultades sicolgicas

Mario G. Oloriz

10

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

11

Anlisis de objetivo y meta


Propsito:
colocar los requerimientos en un contexto mayor
comprender la relacin de ese problema con los
problemas y objetivos del sistema mayor (la
jerarqua sistmica vale para los SBC)
tener los requerimientos adecuados

Mario G. Oloriz

12

Anlisis de objetivo y meta


Conceptos bsicos
Metas
un estado del sistema, o
un conjunto de valores deseados para un nmero de
parmetros.
ejemplo: en una empresa 1M$ de ganancia,
(ganancia=parmetro y 1M$=valor del parmetro)
Varian su especficidad (abstraccin) al subir el nivel
* Metas estratgicas
* Metas tcticas
* Metas operacionales

Objetivos
son las metas ms abstractas
ejemplo: aumentar la utilidad
Mario G. Oloriz

13

Anlisis de objetivo y meta


Jerarqua de metas
Se organiza una jerarqua de metas
Resulta un lattice con niveles:
Metas ms abstractas (objetivos)
Metas
Metas menos abstractas (sub-metas)

En un nivel de la jerarqua, dos metas


pueden:
soportarse mutuamente
ser mutuamente conflictivas

Restricciones: impiden alcanzar las metas.


Mario G. Oloriz

14

Anlisis de objetivo y meta


Resumen
El enfoque del anlisis objetivo-meta ve el
dominio del problema como consistente en
objetivos, metas, sub-metas (medios),
organizados en una jerarqua de metasubmeta (fin-medio), y restricciones
Propsito de la jerarqua de objetivos:
identificar los requerimientos de software en el
contexto del dominio del problema
mapear los requerimientos hasta los objetivos de
alto nivel del sistema
Mario G. Oloriz

15

Anlisis de objetivo y meta


Pasos en el anlisis
Analizar la organizacin y el ambiente externo
Crear una jerarqua meta-submeta consistente en: objetivos
organizacionales, metas y restricciones y sus relaciones
(soporte, conflicto, restriccin)
Validar y consensuar el modelo
Identificar la parte de la jerarqua meta-submeta que modeliza
la parte de procesamiento de la informacin de la organizacin
Eliminar los casos de conflictos en el modelo anterior con los
stakeholders
Seleccionar tareas (requerimientos) por eliminacin de
alternativas
Mario G. Oloriz

16

Anlisis de objetivo y meta


Ventajas
Permite una clara comprensin del dominio
del problema
Requerimientos del problema en un contexto
mayor
Considerar soluciones potenciales

Mario G. Oloriz

17

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

18

Escenarios
Conceptos bsicos
Escenario = historia que ilustra cmo un
sistema puede satisfacer necesidades del
usuario
Descripcin idealizada pero detallada de una
instancia especfica de interaccin hombremquina
Medios diversos (texto, dibujos, diagramas)
Estructurados en dilogos o narrativas
Similitud con los prototipos
Mario G. Oloriz

19

Escenarios
Ventajas
Los usuarios encuentran ms fcil transmitir
su experticia a travs de contar una historia
Es una solucin prometedora al problema de
la comunicacin

Mario G. Oloriz

20

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

21

Anlisis de formularios
Formulario = coleccin estructurada de variables
que est formateada para soportar ingreso de
datos y su recuperacin
Es una fuente importante pues:
es un modelo formal
es un modelo de datos
a menudo contienen informacin sobre la
organizacin
sus instrucciones de uso encierran conocimiento
sobre el dominio
su anlisis puede automatizarse
Mario G. Oloriz

22

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

23

Lenguaje natural
Forma ms habitual de representacin del
conocimiento
La mayora de lo que vale la pena conocer sobre el
dominio del problema puede formularse en NL
Categoras de elicitacin en NL:
enfoques que interactan con el usuario
enfoques que elicitan desde un texto en NL

Su atractivo reside en:


vocabulario preexistente
informalidad
sintaxis
Mario G. Oloriz

24

Lenguaje natural
Resumen
Es una fuente importante de conocimiento
Dos limitaciones:
el NL es muy complejo
la ambigedad del NL

Mario G. Oloriz

25

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

26

Reuso de requerimientos
Idea de base: los requerimientos capturados
para alguna aplicacin pueden usarse en otra
similar
Razones que la hacen interesante:
mejora global del proceso
similitud en sistemas
calidad

Mario G. Oloriz

27

Reuso de requerimientos
Aplicacin
Problemas de aplicacin:
acceso a los documentos de los requerimientos
adecuabilidad de un viejo requerimiento

Prerequisitos de aplicacin:
acceso a los requerimientos de los sistemas
existentes
facilidades para seleccionar, testear y modificar
viejos requerimientos
ms barato que obtener los requerimientos desde
cero
Mario G. Oloriz

28

Reuso de requerimientos
Enfoques existentes
Reuso de especificaciones. Desarrollo y
mantenimiento de una biblioteca de
componentes reusables de requerimientos
Anlisis de Dominio. Es el precursor del
reuso de requerimientos
Ingeniera reversa. Obtener informacin de
alto nivel de informacin de menor nivel

Mario G. Oloriz

29

Reuso de requerimientos
Reuso de especificaciones
Abarca las bibliotecas de requerimientos
reusables as como las tcnicas para
reusarlos
Hay varios enfoques:
Knowledge-Based Requirements Assistant
(KBRA)
Aprendiz de requerimientos
Razonamiento analgico

Mario G. Oloriz

30

Reuso de requerimientos
Anlisis de Dominio
Crear una estructura para reusar
requerimientos a travs de:

identificar categoras de dominios de problemas


identificar y formalizar los conceptos comunes
entre los diferentes dominios de aplicacin
organizar bibliotecas de componentes reusables

DA ayuda a la comprensin del dominio del


problema
La elicitacin de requerimientos deviene en
seleccin, adaptacin e incorporacin
DA abarca todo el ciclo de vida del software.
Mario G. Oloriz

31

Reuso de requerimientos
Ingeniera reversa
Proceso de anlisis de un sistema SW para:
identificar componentes e interrelaciones
crear representaciones (otra forma o mayor nivel)

Construir SRS a partir de informacin de


menor nivel
Salida: especificaciones del sistema original
Factores de xito:
disponibilidad, accesibilidad, testeabilidad y
modificabilidad de los requerimientos existentes
similitud del nuevo sistema SW con uno existente
Mario G. Oloriz

32

Tcnicas de elicitacion

Partiendo del usuario


Anlisis de objetivo y meta
Escenarios
Anlisis de formularios
Lenguaje natural
Reuso de requerimientos
Anlisis de tareas

Mario G. Oloriz

33

Anlisis de tareas
til en la interaccin hombre-mquina.
describe la tarea de los usuarios en trminos:
de actividades que ejecutan y cmo estn estructuradas
del conocimiento requerido para ejecutar esas actividades

opcin: anlisis jerrquico de tareas, en resumen, el


anlisis de tareas:
es un valioso input el proceso de RE
el conocimiento sobre el dominio del problema se refiere al
viejo sistema
es una base para el futuro sistema

Mario G. Oloriz

34

Anlisis de tareas
Anlisis jerrquico. Ejemplo
Recibir pedido
Archivar hasta procesamiento
Procesar pedido
controlar datos clientes
verificar datos fijos
controlar nivel de crdito
controlar productos
verificar datos fijos
verificar stock
controlar condicion de entrega
lugar de entrega
fecha de entrega
Post proceso
archivar copia
enviar a Despacho y a Crditos
registrar cumplimiento
Mario G. Oloriz

35

Temario

Tcnicas de elicitacion
RE como proceso social
RE y elicitacin de conocimiento
Conclusin

Mario G. Oloriz

36

RE como proceso social


RE en un contexto social
No hacerlo es fuente de fallas de los sistemas:
no se construye para atender los requerimientos, o
no soporta las reales necesidades de los usuarios

Premisas
los aspectos sociales y tcnicos son igualmente
importantes
interdependencia de ambos aspectos

Los requerimientos son


producto de la interaccin usuario-tcnico
solo tienen sentido en el contexto organizacional.
Mario G. Oloriz

37

RE como proceso social


Participacin del usuario
Es importante mayor participacin del usuario
y que los equipos de desarrollo deben ser
ms pensados en su constitucin.
Participantes en el desarrollo (Macaulay):

interesados financieramente
responsable por el diseo e implementacin
responsable por la introduccin del sistema
interesados en el uso

Mario G. Oloriz

38

RE como proceso social


Mtodos etnograficos
Caractersticas:

alternativa a los enfoques clsicos


podra producir SRS de mayor calidad
conocimiento no registrado formalmente.

Los analistas son:

observadores pasivos
no aslan las tareas

Resultados de las investigaciones tienden a:

comprobar la utilidad del enfoque


su uso requiere ms elaboracin y estructuracin
difcil de entender y consumidor de tiempo
complemento de tcnicas ms duras

Mario G. Oloriz

39

Temario

Tcnicas de elicitacion
RE como proceso social
RE y elicitacin de conocimiento
Conclusin

Mario G. Oloriz

40

RE y elicitacin de
conocimiento
Hay propuestas de fusionar ambos enfoques.
Ingeniera del conocimiento: transferir el
expertise a un programa de computacin.
Similitud de los problemas del analista
Principal dificultad: la comprensin el dominio
del problema

Mario G. Oloriz

41

RE y elicitacin de conocimiento
Ingeniera del conocimiento
Obstculos en la extraccin del conocimiento:
dificultad en explicar acciones y decisiones
lenguaje del ingeniero de conocimiento y el usuario
relacin con usarios, con experiencias y necesidades
conflictivas
se generaron tcnicas para superarlos

Clasificacin de las tcnicas:

observacin
elicitacin no estructurada
mapping
anlisis formal
elicitacin estructurada

Tcnicas de RE corresponden a estos tipos


Mario G. Oloriz

42

RE y elicitacin de
conocimiento
Intercambiabilidad de las tcnicas
Los analistas de RE pueden mejorar los
resultados aplicando tcnicas de elicitacin
del conocimiento

Mario G. Oloriz

43

Temario

Tcnicas de elicitacion
RE como proceso social
RE y elicitacin de conocimiento
Conclusin

Mario G. Oloriz

44

Conclusin
Problema principal: adquirir el conocimiento de los
usuarios y otras fuentes
Tcnicas vistas:
entrevistas al usuario, muy usadas, requieren preparacin;
anlisis de objetivos/metas, exitosas para alcanzar consenso;
escenarios: atacan la limitacin de memoria, requiren del expertise
de los usuarios;
anlisis de formularios, bypass del usuario y una importante fuente
de conocimiento;
anlisis del NL: hacia el medio ms conveniente para el usuario;
reuso: punto de partida en un conjunto de requerimientos
reusables;
ciencia social: atienden a las reglas sociales y las prcticas de la
organizacin;
Mario G. Oloriz

45

También podría gustarte