Está en la página 1de 29

Ingeniería de Requerimientos

u Estableciendo lo que el cliente


requiere de un Sistema de
Software.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 1


Objetivos
u Introducción a la Noción de Ingeniería de
Requerimientos.
u Explicación de los diferentes niveles de detalle de
requerimientos que se necesiten.
u Describir como deben ser organizados los
documentos de un Sistema de Requerimientos.
u

Describir la validación del Proceso de


Requerimientos.
u Explicar porque los Requerimientos se involucran
durante el tiempo
©Ian Sommerville 1995
de vida de un sistema.
Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 2
Tópicos
u El Proceso de Ingeniería de Requerimientos
u Los Documentos de Requerimientos de software
u Validación de Requerimientos
u

Evolución de Requerimientos

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 3


Ingeniería de Requerimientos
u El proceso de establecer los servicios que el
cliente requiere de un sistema y los limites bajo
los cuales opera y se desarrolla.
u Los Requerimientos pueden ser Funcionales o
No-Funcionales
No-Funcionales
• Lo
Loss Requ
Requer
erim
imie
ient
ntos
os fu
func
ncio
iona
nale
less desc
descri
ribe
ben
n serv
servic
icio
ioss o func
funcio
ione
ness
• Lo
Loss R
Req
eque
ueri
rimi
mien
ento
toss No-
No-fu
func
ncio
iona
nale
less sson
on un
un lí
lími
mite
te een
n eell sist
sistem
emaa
o en el proceso de desarrollo.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 4


¿Qué es un Requerimiento?
u Es un rango de instrucciones abstractas de alto
nivel de un servicio o de un sistema, limitado a
detallar una especificación funcional matemática.
u Así es inevitable como los Requerimientos
pueden servir
servir en u
una
na funció
función
n dual
• Pu
Pued
edee ser
ser la base
base para
para una
una dec
decla
lara
raci
ción
ón de un co
cont
ntra
rato
to,, p
por
or lo
tanto, deber estar abierto a interpretación.

• Pu
Pued
edee ser
ser la base
base para
para el cont
contra
rato
to en sí,
sí, por
por lo tant
tanto,
o, debe
debe ser
ser
definido en detalle.
• Am
Amba
bass decl
declar
arac
acio
ione
ness será
serán
n llam
llamad
adas
as Re
Requ
quer
erim
imie
ient
ntos
os..

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 5


Requerimientos
Definición/Especificación
u Definición de Requerimientos
• Un
Unaa dec
decla
lara
raci
ción
ón en un Leng
Lengua
uaje
je Na
Natu
tura
rall inc
inclu
luye
ye los
los d
dia
iagr
gram
amas
as
de los servicios del sistema y sus límites operacionales. Escrito
para clientes.
clientes.

Especificación de Requerimientos
• Un docu
docume
mentntoo est
estru
ruct
ctur
urad
ado
o con
con de
desc
scri
ripc
pció
ión
n o deta
detall
llee d
dee los
los
servicios del sistema.
sistema. Escrito como
como un contrato entre
entre el clien
cliente
te y
el contratista.

u
Especificación de Software
• De
Desc
scri
ripc
pció
ión
n deta
detall
llad
adaa de soft
softwa
ware
re,, la cu
cual
al,, pu
pued
edee sser
ervi
virr co
como
mo
una base para diseño o implementación. Escrito para
desarrolladodres.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 6


Definiciones y Especificaciones
Definición de Requerimientos

1. El Software proporciona significado de representación y acceso a


archivos externos creados por otras herramientas.

Especificación
Especificación de Requerimientos
1.1 El usuario debe proporcionar facilidades para definir el tipo de archivos externos.
1.2 Cada tipo de archivo externo puede tener una herramienta asociada. La cual, será
será
aplicada para el archivo.
1.3 Cada tipo de archivo externo será representado como un icono específico mostrado al
usuario.
1.4 Las facilidades proporcionadas para la representación del icono en un tipo de archivo
externo será definido por el usuario.
1.5 Cuando unun usuari
usuario
o selecciona
selecciona una
una repre
representac
sentación
ión de icono
icono de un archivo
archivo externo,
externo, el
efecto de la selección es aplicar las herramientas asociadas con el tipo de archivo ex-
terno al archivo representado por la selección del icono.
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 7
Lectores de Requerimientos
Gerencia de Cliente
Definición de Usuarios Finales del Sistema
Requerimientos Ingenieros de Clientes
Gerencia de Contratistas
Arquitectos del Sistema

Usuarios Finales del Sistema


Requerimientos
Ingenieros de Cliente
Especificación de
Arquitectos del Sistema

Desarrolladores de Software

Especificación de (Quizá) Ingenieros de Clientes


Software Arquitectos del Sistema

Desarrolladores de Software
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 8
Problemas Desagradables
u Sistemas de Software grandes con problemas de
direccionamiento.
u Problemas de tal manera complejos que puede ser
que nunca se comprendan completamente y
donde los desarrolladores van comprendiendo el
sistema durante su desarrollo
u

Por lo tanto, elos


incompletos requerimientos son normalmente
inconsistentes.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 9


Razones de Inconsistencia
u Los sistemas de software grandes deben mejorar
su actual situación. Es difícil anticipar los efectos
que el sistema tendrá en la organización.
u Usuarios diferentes tienen requerimientos y
prioridades diferentes.
prioridades diferentes. Hay
Hay constantemente
constantemente
compromiso de cambios en los requerimientos.
u Los usuarios finales del sistema y la organización
que paga por el sistema tienen requerimientos
diferentes.
u El prototipado es requerido para clarificar
requerimientosIngeniería de Software, 5a. edición Capitulo 4
©Ian Sommerville 1995 Diapositiva 10
Proceso de Ingeniería de
Requerimientos
u Estudio de Factibilidad
• En
Encu
cuen
entr
tran
an lo
loss usu
usuar
ario
ioss act
actua
uale
less q
que
ue su
suss n
nec
eces
esid
idad
ades
es son
son
satisfechass dada la tecnología y el presupuesto disponible?
satisfecha

u Análisis de Requerimientos
• En
Enco
cont
ntra
rarr que
que el si
sist
stem
emaa req
requi
uier
eree d
del
el ma
mant
nten
enim
imie
ient
nto
oddee
intereses.

u Definición de Requerimientos
• De
Defi
fini
nirr los
cliente. los re
requ
quer
erim
imie
ient
ntos
os en un
unaa form
formaa com
compr
pren
ensi
sibl
blee p
par
araa eell

u Especificación de Requerimientos
• Define los requerimientos en detalle.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 11


El Proceso de Ingeniería de
Requerimientos
Estudio de Análisis de

Factibilidad Requerimientos
Definición de
Reporte de Requerimientos
Factibilidad
Especificación
Modelos del de Requerimiento
Requerimientoss
Sistema

Definición de
Requerimientos
Documento de
Requerimientos Especificación de

Requerimientos
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 12
Documento de Requerimientos
u Es la declaración oficial de lo que es requerido
para que el siste
sistema
ma sea desarrollad
desarrollado.
o.
u Incluye la definición y especificación de
requerimientos.
u No es un
un documento
documento de diseño.
diseño. Tanto
Tanto como sea
posible,, es un conjunto
posible conjunto de lo que es el sistema
sistema y

como lo hará.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 13


Requerimientos del Documento de
Requerimientos
u Especificación de la conducta externa del
sistema.
u Especificar los límites de la implementación.
u

Fácil de cambiar.
u Sirve como una herramienta de referencia para
mantenimiento.
u
Recuerda el ciclo de vida del sistema, esto es,
predice cambios.
u Proporciona respuestas características a un evento
no esperado.Ingeniería de Software, 5a. edición Capitulo 4
©Ian Sommerville 1995 Diapositiva 14
Estructura del Documento de
Requerimientos
u Introducción.
• De
Desc
scri
ribe
be la nece
necesi
sida
dad
d de
de cre
crear
ar el sist
sistem
emaa y cual
cuales
es son
son ssus
us
objetivos.

u Glosario.
• Define los términos técnicos usados.
u Modelos del Sistema.
• De
Defi
fine
ne lo
loss mod
model
elos
os que
que mue
muest
stra
ran
n llos
os co
comp
mpon
onen
ente
tess d
del
el sist
sistem
emaa y

las relaciones entre ellos.


u Definición de Requerimientos Funcionales.
• Defi
fin
ne los
los serv
servic
icio
ioss que
que será
serán
nppro
ropo
porc
rciion
onaado
dos.
s.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 15


Estructura del Documento de
Requerimientos
u Requerimientos No-funcionales.
Definición de Requerimientos

• Defi
Defini
nirr las
las li
limi
mita
tant
ntes
es del
del sis
siste
tema
ma y eell p
pro
roce
ceso
so de de
desa
sarr
rrol
ollo
lo..
u Evolución del Sistema.
• Defi
Defini
nirr las
las supo
suposi
sici
cion
ones
es fu
fund
ndam
amen
enta
tale
less een
n las
las cual
cuales
es el sist
sistem
emaa
se basa y se anticipan los cambios.
u Especificación de Requerimientos.
Requerimientos.
• Espe
Especi
cifi
fica
caci
ción
ón deta
detall
llad
adaa de lo
loss requ
requer
erim
imie
ient
ntos
os func
funcio
iona
nale
less de
dell
sistema.
u

Apéndices.
• Desc
Descri
ripc
pció
ión
n de la pl
plat
ataf
afor
orma
ma de Ha
Hard
rdwa
ware
re de
dell S
Sis
iste
tema
ma..
• Requ
Requer
erim
imie
ient
ntos
os de la base
base de Dato
Datoss ((qu
quiz
izáá ccom
omo
ouun
nmmod
odel
elo
o
ER)
u
Indice.
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 16
Validación de Requerimientos
u Demostración de que los requerimientos que
definen el sistema son lo que el cliente realmente
quiere.
u Los costos de errores en los requerimientos son
altos, por lo cual, la validación es muy
importante.
• Fi
Fija
jarr un
un err
error
or de re
requ
quer
erim
imie
ient
nto
oddes
espu
pués
és del
del d
des
esar
arro
roll
llo
oppue
uede
de
resultar en un costo 100 veces mayor que fijar un error en la
implementación.

u El Prototipado (discutido en el Cáp. 8) es una


técnica importante de la validación de
requerimientos.
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 17
Chequeando Requerimientos
u Validación. Provee al sistema las funciones que
mejor soporten las necesidades del cliente?
u Consistencia. Existe cualquier conflicto en los

requerimientos?
u Completo. Están incluidas todas las funciones
requeridas por el cliente?
u

Realismo. Pueden los requerimientos ser


implementados con la tecnología y el presupuesto
disponible?

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 18


Revisión de Requerimientos
u Una revisión regular puede ayudar mientras la
definición de requerimientos está siendo hecha.
u Tanto el cliente como el staff de contratistas

deben estar involucrados en la revisión.


u La revisión debe ser formal (con los documentos
completos) o informal. Una buena comunicación

entre desarrolladores,
resolver problemas enclientes y usuarios
las primeras etapas.puede

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 19


Chequeo de la Revisión
u Verificabilidad. Es el Requerimiento realmente
probable?
probabl e?
u Entendibilidad. Es el Requerimiento

comprendido propiamente?
u Probabilidad. Es el origen de los requerimientos
claramente establecido?
u

Adaptabilidad. Puede el requerimiento ser


cambiado sin causar un gran impacto en otros
requerimientos?

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 20


Chequeo Automatizado de la
Consistencia
Requerimientos en un Reporte de los problemas
Lenguaje Formal de Requerimiento
Requerimientoss

Proceso de Análisis de
Requerimientos Requerimientos

Base de Datos
de Requerimientos

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 21


Evolución de Requerimientos
u Los requerimientos siempre involucran como
comprender mejor el desarrollo de las
necesidades de los usuarios y como los objetivos
de la organización pueden cambiar.
u Es esencial planear posibles cambios en los
requerimientos cuando el sistema sea
desarrollado y utilizado.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 22


Evolución de Requerimientos

Comprensión Inicial Comprensión de los


del Problema Cambios del Problema

Requerimientos Cambios en los


Iniciales Requerimientos

Tiempo

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 23


Clases de Requerimientos
u Requerimientos Durables. Establecer
requerimientos derivados de las actividades de la
organización del cliente. Por ejemplo, un hospital
siempre tendrá doctores, enfermeras, etc. Puede
ser derivado de modelos de dominio.
u Requerimientos Volátiles. Los requerimientos
cambian durante el desarrollo o cuando el sistema
está en uso. En un hospital, los requerimientos se
derivan de las políticas salud-cuidados.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 24


Clasificación de Requerimientos
u Requerimientos Cambiantes.
• Lo
Loss rreq
eque
ueri
rimi
mien
ento
toss que
que camb
cambia
ian
nppor
or el am
ambi
bien
ente
te de
dell ssis
iste
tema
ma..

u Surgimiento de los Requerimientos.


• Re
Requ
quer
erim
imie
ient
ntos
os qu
quee surg
surgen
en como
como una
una co
comp
mpre
rens
nsió
ión
n de
dell
desarrollo del sistema.
u Requerimientos en Consecuencial.
• Re
Requ
quer
erim
imie
ient
ntos
os que
que resu
result
ltan
an de la
la in
intr
trod
oduc
ucci
ción
ón d
del
el ssis
iste
tema
ma a la

computadora.
u Requerimientos Compatibles.
• Re
Requ
quer
erim
imie
ient
ntos
os qu
quee dep
depen
ende
den
n de
de o
otr
tros
os sist
sistem
emas
as o de
de o
otr
tros
os
procesos de la organización.
organización.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 25


Cambios en el Documento de
Requerimientos
u El documento de requerimientos debe ser
organizado, de tal forma que los cambios en los
requerimientos puedan ser hechos sin tener que
re-escribir demasiado.
u
Las referencias externas deben ser minimizadas y
las secciones del documento deben ser tan
modulares como sea posible.
u
Los cambios son fáciles cuando se trata de un
documento electrónico. Sin embargo, la falta de
estándares para documentos electrónicos lo hace
difícil.
©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 26
Evolución Controlada
Cambio en los
Requerimientos

Documento VI de Cambio en los Documento V1 Documento V2


Requerimientos Requerimientos de Requerimientos De Requerimientos

Implementación V1 Implementación V2 Implementación Implementación


del Sistema del Sistema V1 del Sistema V2 del Sistema

Inconsistencia de los Consistencia de los


Requerimientos y del Requerimientos y del
Sistema Sistema

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 27


Resumen
u Es muy difícil formular una especificación de
requerimientos completa y consistente.
u Una definición de requerimientos, una

especificación de Software
especificación de requerimientos y una
son una manera de
especificar el Software para diferentes tipos de
lectores.
u El Documento de Requerimientos es una
descripción para clientes y desarrolladores.

©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 28


Resumen
u Los errores en los requerimientos son usualmente
muy caros de corregir una vez desarrollado el
sistema.
u

La revisión debe
contratistas involucrar
para validar al cliente y al staff
los requerimientos del de
sistema.
u

El establecer requerimientos está relacionado con


las actividades del cliente para el Software.
u Los requerimientos volátiles dependen del

contexto en Ingeniería
©Ian Sommerville 1995
que deseSoftware,
use5a.el sistema.
edición Capitulo 4 Diapositiva 29

También podría gustarte