Вы находитесь на странице: 1из 62

INGENIERIA DE SOFTWARE

Semestre 2014-II
Agenda
Ingeniera de Requisitos
Introduccin
Niveles
Clasificacin
Requerimiento del usuario
El proceso de la ingeniera de requerimientos
Estudio de la viabilidad
Obtencin y anlisis de requerimientos
Tcnicas y Herramientas para el descubrimiento
de Requerimientos.
Orientado a puntos de vista
Escenarios
Etnografa
Validacin de requerimientos
Administracin de requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 2
INTRODUCCION
09/10/2014 Prof. Ing. Christian Velsquez 3
Trata de lo que el sistema debe hacer, sus propiedades
emergentes y esenciales, y las restricciones en el
funcionamiento del sistema y los procesos de desarrollo de
software. Es el proceso de comunicacin entre los clientes y
usuarios del software y los desarrolladores del mismo.
A qu se le llama Ingeniera de
Requerimientos?
Al proceso de descubrir, analizar, documentar y verificar los
servicios proporcionados por el sistema y sus restricciones
operativas.
Niveles de requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 5
Son declaraciones, en
lenguaje natural y diagramas,
de los servicios que el
sistema proporcione y de
las restricciones bajo las
cuales debe funcionar.
Requerimientos
del Usuario
Establecen con detalle las
funciones, servicios y
restricciones operativas del
sistema. El documento de
requerimientos del sistema
debe ser funcional. Debe
definir exactamente qu es
lo que se va a implementar.
Requerimientos
del Sistema
Ejemplo:
CLASIFICACION DE LOS
REQUERIMIENTOS DEL SISTEMA
Funcionales
No
Funcionales
De
Dominio
Describen lo que
el sistema debe
hacer
Se refiere a las
propiedades
emergentes
Se derivan del
dominio de la
aplicacin
Ejemplo de RF:
1. El usuario deber tener la posibilidad de buscar en el
conjunto inicial de la base de datos o seleccionar un
subconjunto de ella.
2. El sistema deber proporcionar visores adecuados para que
el usuario lea documentos en el almacn de datos.
3. A cada pedido se le deber asignar un identificador nico,
que el usuario podr copiar al rea de almacenamiento
permanente de la cuenta.
Tipos de Requerimientos No
Funcionales
Ejemplo de R. No Funcionales:
Nota: Siempre que sea posible, se deben redactar los
requerimientos no funcionales de manera cuantitativa para que
se puedan probar de un modo objetivo.
Ejemplo de Metas del sistema y
requerimientos verificables:
Mtricas para especificar requerimientos
no funcionales:
Ejemplo de Requerimientos del dominio:
El sistema LIBSYS incluye varios requerimientos del dominio:
1. Deber existir una interfaz de usuario estndar para todas
las bases de datos que estar basada en el estndar Z39.50.
2. Debido a las restricciones de derechos de autor, algunos
documentos debern borrarse despus de su llegada, se
imprimirn de forma local en el servidor y sern distribuidos
de forma manual.
09/10/2014 Prof. Ing. Christian Velsquez 15
Requerimientos del
usuario
09/10/2014 Prof. Ing. Christian Velsquez 16
Los requerimientos del
usuario para un sistema deben
describir los requerimientos
funcionales y no funcionales
de tal forma que sean
comprensibles para los
usuarios del sistema sin
conocimiento tcnico
detallado.
nicamente deben especificar el comportamiento externo del
sistema y deben evitar, tanto como sea posible, las caractersticas
del diseo del sistema.
Ejemplo de cmo redactar un
requerimiento de usuario:
Recomendaciones para redactar los
requerimientos del usuario:
1. Inventar un formato estndar y asegurar que todos los
requerimientos se adhieran al formato.
2. Utilizar el lenguaje de forma consistente. Distinga entre
requerimientos obligatorios y requerimientos deseables.
3. Resalte el texto (con negrita, cursiva, color) para distinguir
las partes claves del requerimiento.
4. Evitar el uso de jerga informtica.
Notaciones para la especificacin de
requerimientos
Ejemplo: (Lenguaje Estructurado)
Ejemplo: (Lenguaje de descripcin de diseo)
Ejemplo:
(Notaciones
Grficas)
Ejemplo: (Especificaciones Matemticas)
El documento de requerimientos del
software:
Es la declaracin oficial de qu deben implementar los
desarrolladores del sistema. Debe incluir tanto los
requerimientos del usuario para el sistema como una
especificacin detallada de los requerimientos del sistema.
Quines son los usuarios del documento de
requerimientos?
IEEE/ANS 830-1998 (IEEE, 1998)
1. Introduccin
1.1 Propsito del documento de requerimientos
1.2 Alcance del producto
1.3 Definiciones, acrnicos y abreviaturas
1.4 Referencias
1.5 Descripcin del resto del documento
2. Descripcin general
2.1 Perspectiva del producto
2.2 Funciones del producto
2.3 Caractersticas del usuario
2.4 Restricciones generales
2.5 Suposiciones y dependencias
3. Requerimientos especficos: incluyen los requerimientos funcionales, no funcionales y de interfaz.
Obviamente, sta es la parte ms sustancial del documento, pero debido a la amplia variabilidad en la
prctica organizacional, no es apropiado definir una estructura estndar para esta seccin. Los
requerimientos pueden documentar las interfaces externas, describir la funcionalidad y el rendimiento del
sistema, especificar los requerimientos lgicos de la base de datos, las restricciones de diseo, las
propiedades emergentes del sistema y las caractersticas de calidad.
4. Apndices
5. ndice
E
s
t
r
u
c
t
u
r
a

d
e

u
n

D
o
c
u
m
e
n
t
o

d
e

R
e
q
u
e
r
i
m
i
e
n
t
o
s
09/10/2014 Prof. Ing. Christian Velsquez 28
El proceso de la ingeniera de
requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 29
Crear y mantener un documento de
requerimientos del sistema.
Meta:
Proceso
de IR
Estudio de
Viabilidad
Obtencin y
Anlisis
Administracion
Validacin
El sistema es til para el
negocio?
El
descubrimiento
de requerimientos
La transformacin de
requerimientos en
formularios estndar
La verificacin de que los
requerimientos realmente
definen el sistema que quiere el
cliente
Estudio de Viabilidad
09/10/2014 Prof. Ing. Christian Velsquez 31
Es un conjunto de requerimientos de negocio
preliminares, una descripcin resumida del
sistema y de cmo ste pretende contribuir a los
procesos del negocio.
Concepto:
Nota: Su resultado debe ser un informe que recomiende si merece o
no seguir con la ingeniera de requerimientos y el proceso de
desarrollo del software.
Qu se hace en el Estudio de
Viabilidad?
Obtencin y Anlisis de Requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 35
Obtencin y Anlisis de Requerimientos:
En esta actividad, los IS trabajan con los clientes y los usuarios
finales del sistema para determinar el dominio de la aplicacin,
qu servicios debe proporcionar el sistema, el rendimiento
requerido del sistema, las restricciones hardware, etc.
Dificultades para obtener y comprender
los requerimientos de los stakeholders:
1. Los Stakeholders no conocen lo que desean obtener.
2. Los Stakeholders expresan los requerimientos con sus propios
trminos de forma natural.
3. Diferentes Stakeholders tienen diferentes requerimientos.
4. Los factores polticos pueden influir en los requerimientos del
sistema.
5. El entorno econmico y del negocio en el que se lleva a cabo el
anlisis es dinmico.
Las actividades del proceso son:
Descubrimiento
de
Requerimientos
Clasificacin y
Organizacin de
Requerimientos
Ordenacin por
prioridades y
negociacin de
requerimientos
Documentacin
de
Requerimientos
Tcnicas y Herramientas para el descubrimiento de
Requerimientos:
Cubrir el
interior
Representante del
proveedor
Exhibir el
interior
Reabastecer
<<incluir>>
<<incluir>>
Reabastecer de
acuerdo a las
ventas
<<extender>>
Puntos de Vista
Entrevista
Etnografa
Casos de Uso
Escenarios
Obtencin orientada a puntos de vista:
Toma en cuenta la existencia de varias perspectivas y provee de
un marco de trabajo para descubrir conflictos.
Un "punto de vista" puede significar:
Una fuente o consumidor de datos
Un marco de trabajo de la representacin (un tipo de
modelo)
Un receptor de servicios
Continuacin: Obtencin orientada a puntos
de vista:
Mtodo VORD (Definicin de Requerimientos Orientada a
Puntos de Vista) contiene las siguientes etapas:
Identificacin (quienes reciben qu servicios)
Estructuracin (jerarqua)
Documentacin
Trazado (OO)
Escenarios:
Son descripciones de ejemplos de las sesiones de interaccin
con el sistema. Inicia con un bosquejo y durante la obtencin de
agregan detalles. Un escenario incluye:
Una descripcin del estado del sistema al inicio del escenario
Una descripcin del flujo normal de eventos en el escenario
Una descripcin de lo que puede ir mal y cmo manejarlo
Informacin de otras actividades que se podran llevar al
mismo tiempo
Una descripcin del estado del sistema despus de completar
el escenario
Continuacin: Escenarios
Enfoques estructurados:
Escenarios de eventos
Casos de uso
Continuacin: Escenarios
Escenarios de eventos:
Utilizados enVORD
Documentan el comportamiento del sistema cuando se
presentan eventos especficos.
Utilizan diagramas
Describen el flujo de datos y las acciones del sistema y
documenta las excepciones que puedan surgir
Continuacin: Escenarios
Casos de uso:
Introducido en el mtodo Objectory.
Convertido en una caracterstica fundamental de UML.
Un caso de uso encapsula un conjunto de escenarios en el
que cada uno es un camino nico a travs del caso de uso.
Los diagramas de secuencia agregan informacin a un caso de
uso.
Etnografa
Tcnica de observacin para entender requerimientos sociales
y organizacionales.
Especialmente efectiva para descubrir:
requerimientos derivados de la forma real de trabajar ms
que de la forma en que se debera de trabajar de acuerdo a
los procesos establecidos.
requerimientos derivados de la cooperacin y conocimiento
de las actividades de la gente.
Se puede combinar con el prototipeo.
No es apropiada para descubrir requerimientos
organizacionales o del dominio.
Debe utilizarse en conjunto con otros enfoques, p.e. casos de
uso.
Administracin de Requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 48
Administracin de requerimientos
Los requerimientos de sistemas grandes son siempre
cambiantes.
Los sistemas grandes usualmente se desarrollan para mejorar
el status quo
Surgirn nuevos requerimientos debido a:
Comunidad de usuarios diversa. Los requerimientos finales
son comnmente un trmino medio.
Quien paga es raramente quien usa el sistema.
Entorno de negocios y tcnico cambiante.
Continuacin: Administracin de
requerimientos
La administracin de requerimientos es el proceso de
comprender y controlar los cambios en los requerimientos.
La planeacin comienza al mismo tiempo que la obtencin
inicial de requerimientos.
La administracin activa debe iniciar tan pronto est lista la
primera versin del documento de requerimientos.
Continuacin: Administracin de
requerimientos
Etapas:
Requerimientos duraderos y voltiles
Planeacin de la administracin de requerimientos
Administracin del cambio de los requerimientos
Requerimientos duraderos y voltiles
Especificar el desarrollo de un sistema grande puede llevar
varios aos. Desde una perspectiva evolutiva los requerimientos
son de dos clases:
Requerimientos duraderos
Requerimientos voltiles
Requerimientos mutantes
Requerimientos emergentes
Requerimientos consecutivos
Requerimientos de compatibilidad
Planeacin de la Administracin de
requerimientos
La administracin de requerimientos es muy cara.
Durante esta etapa, para cada proyecto, es necesario establecer
el nivel de detalle.
Se tiene que decidir sobre:
La identificacin de los requerimientos
Un proceso de administracin del cambio
Polticas de rastreo
Ayuda de herramientas CASE
Herramientas CASE, p.e. DOORS y Requisite Pro.
Sistemas pequeos pueden llevarse con procesador de texto,
hoja de clculo o una pequea base de datos.
Administracin del cambio de
requerimientos
Un proceso formal para que todos los cambios propuestos
sean tratados de forma consistente.
Etapas:
Anlisis del problema y especificacin del cambio.
Anlisis cambio y costeo.
Implementacin del cambio.
Siempre existe la tentacin de hacer un cambio urgente al
sistema y en retrospectiva modificar el documento de
requerimientos. Esto conduce a un desfase e inconsistencias.
Continuacin: Puntos Claves
El proceso de IR incluye un estudio de factibilidad y la
obtencin, anlisis, validacin y administracin de
requerimientos.
El anlisis de requerimientos es un proceso iterativo que
incluye la comprensin del dominio y la recoleccin,
clasificacin, resolucin de conflictos, priorizacin y verificacin
de requerimientos.
Los diferentes interesados del sistema tienen requerimientos
diferentes. Por lo tanto los sistemas complejos deben analizarse
desde diferentes puntos de vista.
Los factores sociales y organizacionales tienen influencia sobre
los requerimientos y pueden determinar si el software es
utilizado o no.
Puntos Claves
La validacin de requerimientos es el proceso de verificarlos en
cuanto a validez, consistencia, integridad, realismo y
certidumbre. Las principales tcnicas de validacin son la
revisiones y el prototipeo.
Los cambios en los negocios, organizacionales y tcnicos
cambian los requerimientos. La administracin de
requerimientos es el proceso de gestionar y controlar los
cambios.
La administracin de requerimientos incluye la gestin de la
planeacin, en la cual se especifican las polticas y
procedimientos para la administracin de los requerimientos, y
la del cambio, en la que se analizan los cambios y se evala su
impacto.
Validacin de Requerimientos
09/10/2014 Prof. Ing. Christian Velsquez 57
Validacin de Requerimientos
Trata de mostrar que los requerimientos realmente definen el
sistema que el cliente desea.
Su importancia radica a que encontrar errores en el documento
de requerimientos puede conducir una reduccin de costos,
tiempo y desempeo que al repetir el trabajo cuando son
descubiertos durante el desarrollo o despus de que el sistema
est en uso.
Tipos de Verificaciones
Verificacin
Validez
Consistencia
Completitud
Realismo
Verificabilidad
El sistema proporciona las
funciones que soportan las
necesidades de los clientes?
Hay conflictos,
contradicciones, en los
requisitos?
Estn recogidas todas
las funciones solicitadas?
Pueden implementarse
los requisitos con la
tecnologa y
conocimientos actuales?
Pueden comprobarse
los requisitos?
09/10/2014 Prof. Ing. Christian Velsquez 60
Tcnicas de validacin de requerimientos
Revisiones de
Requerimientos
Construccin
de Prototipos
Generacin de
Casos de
Prueba
09/10/2014 Prof. Ing. Christian Velsquez 62

Вам также может понравиться