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

Ingeniera de Requerimientos

u Estableciendo lo que el cliente


requiere de un Sistema de
Software.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 1


Objetivos
u Introduccin a la Nocin de Ingeniera de
Requerimientos.
u Explicacin 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 validacin del Proceso de
Requerimientos.
u Explicar porque los Requerimientos se involucran
durante el tiempo de vida de un sistema.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 2
Tpicos
u El Proceso de Ingeniera de Requerimientos
u Los Documentos de Requerimientos de software
u Validacin de Requerimientos
u Evolucin de Requerimientos

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 3


Ingeniera 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
Los Requerimientos funcionales describen servicios o funciones
Los Requerimientos No-funcionales son un lmite en el sistema
o en el proceso de desarrollo.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin 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 especificacin funcional matemtica.
u As es inevitable como los Requerimientos
pueden servir en una funcin dual
Puede ser la base para una declaracin de un contrato, por lo
tanto, deber estar abierto a interpretacin.
Puede ser la base para el contrato en s, por lo tanto, debe ser
definido en detalle.
Ambas declaraciones sern llamadas Requerimientos.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 5


Requerimientos
Definicin/Especificacin
u Definicin de Requerimientos
Una declaracin en un Lenguaje Natural incluye los diagramas
de los servicios del sistema y sus lmites operacionales. Escrito
para clientes.
u Especificacin de Requerimientos
Un documento estructurado con descripcin o detalle de los
servicios del sistema. Escrito como un contrato entre el cliente y
el contratista.
u Especificacin de Software
Descripcin detallada de software, la cual, puede servir como
una base para diseo o implementacin. Escrito para
desarrolladodres.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 6
Definiciones y Especificaciones
Definicin de Requerimientos

1. El Software proporciona significado de representacin y acceso a


archivos externos creados por otras herramientas.

Especificacin 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
aplicada para el archivo.
1.3 Cada tipo de archivo externo ser representado como un icono especfico mostrado al
usuario.
1.4 Las facilidades proporcionadas para la representacin del icono en un tipo de archivo
externo ser definido por el usuario.
1.5 Cuando un usuario selecciona una representacin de icono de un archivo externo, el
efecto de la seleccin es aplicar las herramientas asociadas con el tipo de archivo ex-
terno al archivo representado por la seleccin del icono.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 7
Lectores de Requerimientos
Gerencia de Cliente
Definicin de Usuarios Finales del Sistema
Requerimientos Ingenieros de Clientes
Gerencia de Contratistas
Arquitectos del Sistema

Usuarios Finales del Sistema


Requerimientos
Ingenieros de Cliente
Especificacin de
Arquitectos del Sistema
Desarrolladores de Software

Especificacin de (Quiz) Ingenieros de Clientes


Software Arquitectos del Sistema
Desarrolladores de Software
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin 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, los requerimientos son normalmente
incompletos e inconsistentes.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 9


Razones de Inconsistencia
u Los sistemas de software grandes deben mejorar
su actual situacin. Es difcil anticipar los efectos
que el sistema tendr en la organizacin.
u Usuarios diferentes tienen requerimientos y
prioridades diferentes. Hay constantemente
compromiso de cambios en los requerimientos.
u Los usuarios finales del sistema y la organizacin
que paga por el sistema tienen requerimientos
diferentes.
u El prototipado es requerido para clarificar
requerimientosIngeniera de Software, 5a. edicin Capitulo 4
Ian Sommerville 1995 Diapositiva 10
Proceso de Ingeniera de
Requerimientos
u Estudio de Factibilidad
Encuentran los usuarios actuales que sus necesidades son
satisfechas dada la tecnologa y el presupuesto disponible?
u Anlisis de Requerimientos
Encontrar que el sistema requiere del mantenimiento de
intereses.
u Definicin de Requerimientos
Definir los requerimientos en una forma comprensible para el
cliente.
u Especificacin de Requerimientos
Define los requerimientos en detalle.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 11


El Proceso de Ingeniera de
Requerimientos
Estudio de Anlisis de
Factibilidad Requerimientos

Definicin de
Reporte de Requerimientos
Factibilidad
Especificacin
Modelos del de Requerimientos
Sistema
Definicin de
Requerimientos
Documento de
Requerimientos Especificacin de
Requerimientos
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 12
Documento de Requerimientos
u Es la declaracin oficial de lo que es requerido
para que el sistema sea desarrollado.
u Incluye la definicin y especificacin de
requerimientos.
u No es un documento de diseo. Tanto como sea
posible, es un conjunto de lo que es el sistema y
como lo har.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 13


Requerimientos del Documento de
Requerimientos
u Especificacin de la conducta externa del
sistema.
u Especificar los lmites de la implementacin.
u Fcil 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 caractersticas a un evento
no esperado.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 14
Estructura del Documento de
Requerimientos
u Introduccin.
Describe la necesidad de crear el sistema y cuales son sus
objetivos.
u Glosario.
Define los trminos tcnicos usados.
u Modelos del Sistema.
Define los modelos que muestran los componentes del sistema y
las relaciones entre ellos.
u Definicin de Requerimientos Funcionales.
Define los servicios que sern proporcionados.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 15


Estructura del Documento de
Requerimientos
u Definicin de Requerimientos No-funcionales.
Definir las limitantes del sistema y el proceso de desarrollo.
u Evolucin del Sistema.
Definir las suposiciones fundamentales en las cuales el sistema
se basa y se anticipan los cambios.
u Especificacin de Requerimientos.
Especificacin detallada de los requerimientos funcionales del
sistema.
u Apndices.
Descripcin de la plataforma de Hardware del Sistema.
Requerimientos de la base de Datos (quiz como un modelo
ER)
u Indice.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 16
Validacin de Requerimientos
u Demostracin 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 validacin es muy
importante.
Fijar un error de requerimiento despus del desarrollo puede
resultar en un costo 100 veces mayor que fijar un error en la
implementacin.
u El Prototipado (discutido en el Cp. 8) es una
tcnica importante de la validacin de
requerimientos.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 17
Chequeando Requerimientos
u Validacin. Provee al sistema las funciones que
mejor soporten las necesidades del cliente?
u Consistencia. Existe cualquier conflicto en los
requerimientos?
u Completo. Estn incluidas todas las funciones
requeridas por el cliente?
u Realismo. Pueden los requerimientos ser
implementados con la tecnologa y el presupuesto
disponible?

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 18


Revisin de Requerimientos
u Una revisin regular puede ayudar mientras la
definicin de requerimientos est siendo hecha.
u Tanto el cliente como el staff de contratistas
deben estar involucrados en la revisin.
u La revisin debe ser formal (con los documentos
completos) o informal. Una buena comunicacin
entre desarrolladores, clientes y usuarios puede
resolver problemas en las primeras etapas.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 19


Chequeo de la Revisin
u Verificabilidad. Es el Requerimiento realmente
probable?
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 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 20


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

Proceso de Anlisis de
Requerimientos Requerimientos

Base de Datos
de Requerimientos

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 21


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

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 22


Evolucin de Requerimientos
Comprensin Inicial Comprensin de los
del Problema Cambios del Problema

Requerimientos Cambios en los


Iniciales Requerimientos

Tiempo

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 23


Clases de Requerimientos
u Requerimientos Durables. Establecer
requerimientos derivados de las actividades de la
organizacin del cliente. Por ejemplo, un hospital
siempre tendr doctores, enfermeras, etc. Puede
ser derivado de modelos de dominio.
u Requerimientos Voltiles. Los requerimientos
cambian durante el desarrollo o cuando el sistema
est en uso. En un hospital, los requerimientos se
derivan de las polticas salud-cuidados.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 24


Clasificacin de Requerimientos
u Requerimientos Cambiantes.
Los requerimientos que cambian por el ambiente del sistema.
u Surgimiento de los Requerimientos.
Requerimientos que surgen como una comprensin del
desarrollo del sistema.
u Requerimientos en Consecuencial.
Requerimientos que resultan de la introduccin del sistema a la
computadora.
u Requerimientos Compatibles.
Requerimientos que dependen de otros sistemas o de otros
procesos de la organizacin.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin 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 fciles cuando se trata de un
documento electrnico. Sin embargo, la falta de
estndares para documentos electrnicos lo hace
difcil.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 26
Evolucin Controlada
Cambio en los
Requerimientos

Documento VI de Cambio en los Documento V1 Documento V2


Requerimientos Requerimientos de Requerimientos De Requerimientos

Implementacin V1 Implementacin V2 Implementacin Implementacin


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 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 27


Resumen
u Es muy difcil formular una especificacin de
requerimientos completa y consistente.
u Una definicin de requerimientos, una
especificacin de requerimientos y una
especificacin de Software son una manera de
especificar el Software para diferentes tipos de
lectores.
u El Documento de Requerimientos es una
descripcin para clientes y desarrolladores.

Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 28


Resumen
u Los errores en los requerimientos son usualmente
muy caros de corregir una vez desarrollado el
sistema.
u La revisin debe involucrar al cliente y al staff de
contratistas para validar los requerimientos del
sistema.
u El establecer requerimientos est relacionado con
las actividades del cliente para el Software.
u Los requerimientos voltiles dependen del
contexto en que se use el sistema.
Ian Sommerville 1995 Ingeniera de Software, 5a. edicin Capitulo 4 Diapositiva 29

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