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

Ingeniería de Requerimientos Objetivos

u Introducción a la Noción de Ingeniería de


Requerimientos.
u Estableciendo lo que el cliente
u Explicación de los diferentes niveles de detalle de
requiere de un Sistema de requerimientos que se necesiten.
Software. 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 de vida de un sistema.
Ingeniería de SoftwareDiapositiva 1 Ingeniería de SoftwareDiapositiva 2

Tópicos Ingeniería de Requerimientos


u El Proceso de Ingeniería de Requerimientos u El proceso de establecer los servicios que el
u Los Documentos de Requerimientos de software cliente requiere de un sistema y los limites bajo
u Validación de Requerimientos los cuales opera y se desarrolla.
u Evolución de Requerimientos u Los Requerimientos pueden ser Funcionales o
No-Funcionales
• Los Requerimientos funcionales describen servicios o funciones
• Los Requerimientos No-funcionales son un límite en el sistema
o en el proceso de desarrollo.

Ingeniería de SoftwareDiapositiva 3 Ingeniería de SoftwareDiapositiva 4

Requerimientos
¿Qué es un Requerimiento? Definición/Especificación
u Es un rango de instrucciones abstractas de alto u Definición de Requerimientos
nivel de un servicio o de un sistema, limitado a • Una declaración en un Lenguaje Natural incluye los diagramas
de los servicios del sistema y sus límites operacionales. Escrito
detallar una especificación funcional matemática. para clientes.
u Así es inevitable como los Requerimientos u Especificación de Requerimientos
pueden servir en una función dual • Un documento estructurado con descripción o detalle de los
• Puede ser la base para una declaración de un contrato, por lo servicios del sistema. Escrito como un contrato entre el cliente y
tanto, deber estar abierto a interpretación. el contratista.
• Puede ser la base para el contrato en sí, por lo tanto, debe ser u Especificación de Software
definido en detalle.
• Descripción detallada de software, la cual, puede servir como
• Ambas declaraciones serán llamadas Requerimientos.
una base para diseño o implementación. Escrito para
desarrolladodres.
Ingeniería de SoftwareDiapositiva 5 Ingeniería de SoftwareDiapositiva 6

1
Definiciones y Especificaciones Lectores de Requerimientos
Definición de Requerimientos
Gerencia de Cliente
Definición de Usuarios Finales del Sistema
1. El Software proporciona significado de representación y acceso a
Requerimientos Ingenieros de Clientes
archivos externos creados por otras herramientas. Gerencia de Contratistas
Arquitectos del Sistema
Especificación de Requerimientos
1.1 El usuario debe proporcionar facilidades para definir el tipo de archivos externos. Usuarios Finales del Sistema
1.2 Cada tipo de archivo externo puede tener una herramienta asociada. La cual, será Requerimientos
Ingenieros de Cliente
aplicada para el archivo. Especificación de
Arquitectos del Sistema
1.3 Cada tipo de archivo externo será representado como un icono específico mostrado al
usuario. Desarrolladores de Software
1.4 Las facilidades proporcionadas para la representación del icono en un tipo de archivo
externo será definido por el usuario. Especificación de (Quizá) Ingenieros de Clientes
1.5 Cuando un usuario selecciona una representación de icono de un archivo externo, el
Software Arquitectos del Sistema
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. Desarrolladores de Software
Ingeniería de SoftwareDiapositiva 7 Ingeniería de SoftwareDiapositiva 8

Problemas Desagradables Razones de Inconsistencia


u Los sistemas de software grandes deben mejorar
u Sistemas de Software grandes con problemas de
su actual situación. Es difícil anticipar los efectos
direccionamiento.
que el sistema tendrá en la organización.
u Problemas de tal manera complejos que puede ser
u Usuarios diferentes tienen requerimientos y
que nunca se comprendan completamente y
prioridades diferentes. Hay constantemente
donde los desarrolladores van comprendiendo el
compromiso de cambios en los requerimientos.
sistema durante su desarrollo
u Los usuarios finales del sistema y la organización
u Por lo tanto, los requerimientos son normalmente
que paga por el sistema tienen requerimientos
incompletos e inconsistentes.
diferentes.
u El prototipado es requerido para clarificar

Ingeniería de SoftwareDiapositiva 9
requerimientos
Ingeniería de SoftwareDiapositiva 10

Proceso de Ingeniería de El Proceso de Ingeniería de


Requerimientos Requerimientos
Estudio de Análisis de
u Estudio de Factibilidad Factibilidad Requerimientos
• Encuentran los usuarios actuales que sus necesidades son
satisfechas dada la tecnología y el presupuesto disponible? Definición de
Reporte de Requerimientos
u Análisis de Requerimientos Factibilidad
• Encontrar que el sistema requiere del mantenimiento de
intereses. Especificación
Modelos del de Requerimientos
u Definición de Requerimientos Sistema
• Definir los requerimientos en una forma comprensible para el
Definición de
cliente.
Requerimientos
u Especificación de Requerimientos Documento de
• Define los requerimientos en detalle. Requerimientos Especificación de
Requerimientos
Ingeniería de SoftwareDiapositiva 11 Ingeniería de SoftwareDiapositiva 12

2
Requerimientos del Documento de
Documento de Requerimientos Requerimientos
u Es la declaración oficial de lo que es requerido u Especificación de la conducta externa del
para que el sistema sea desarrollado. sistema.
u Incluye la definición y especificación de u Especificar los límites de la implementación.
requerimientos. u Fácil de cambiar.
u No es un documento de diseño. Tanto como sea u Sirve como una herramienta de referencia para
posible, es un conjunto de lo que es el sistema y mantenimiento.
como lo hará. 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 SoftwareDiapositiva 13 Ingeniería de SoftwareDiapositiva 14

Estructura del Documento de Estructura del Documento de


Requerimientos Requerimientos
u Definición de Requerimientos No-funcionales.
u Introducción. • Definir las limitantes del sistema y el proceso de desarrollo.
• Describe la necesidad de crear el sistema y cuales son sus
u Evolución del Sistema.
objetivos.
• Definir las suposiciones fundamentales en las cuales el sistema
u Glosario. se basa y se anticipan los cambios.
• Define los términos técnicos usados. u Especificación de Requerimientos.
u Modelos del Sistema. • Especificación detallada de los requerimientos funcionales del
sistema.
• Define los modelos que muestran los componentes del sistema y
las relaciones entre ellos. u Apéndices.
u Definición de Requerimientos Funcionales. • Descripción de la plataforma de Hardware del Sistema.
• Requerimientos de la base de Datos (quizá como un modelo
• Define los servicios que serán proporcionados.
ER)
u Indice.
Ingeniería de SoftwareDiapositiva 15 Ingeniería de SoftwareDiapositiva 16

Validación de Requerimientos Chequeando Requerimientos


u Demostración de que los requerimientos que
u Validación. Provee al sistema las funciones que
definen el sistema son lo que el cliente realmente
mejor soporten las necesidades del cliente?
quiere.
u Consistencia. Existe cualquier conflicto en los
u Los costos de errores en los requerimientos son
requerimientos?
altos, por lo cual, la validación es muy
importante. u Completo. Están incluidas todas las funciones
• Fijar un error de requerimiento después del desarrollo puede requeridas por el cliente?
resultar en un costo 100 veces mayor que fijar un error en la
implementación.
u Realismo. Pueden los requerimientos ser
implementados con la tecnología y el presupuesto
u El Prototipado (discutido en el Cáp. 8) es una
disponible?
técnica importante de la validación de
requerimientos.
Ingeniería de SoftwareDiapositiva 17 Ingeniería de SoftwareDiapositiva 18

3
Revisión de Requerimientos Chequeo de la Revisión
u Una revisión regular puede ayudar mientras la u Verificabilidad. Es el Requerimiento realmente
definición de requerimientos está siendo hecha. probable?
u Tanto el cliente como el staff de contratistas u Entendibilidad. Es el Requerimiento
deben estar involucrados en la revisión. comprendido propiamente?
u La revisión debe ser formal (con los documentos u Probabilidad. Es el origen de los requerimientos
completos) o informal. Una buena comunicación claramente establecido?
entre desarrolladores, clientes y usuarios puede u Adaptabilidad. Puede el requerimiento ser
resolver problemas en las primeras etapas. cambiado sin causar un gran impacto en otros
requerimientos?

Ingeniería de SoftwareDiapositiva 19 Ingeniería de SoftwareDiapositiva 20

Chequeo Automatizado de la
Consistencia Evolución de Requerimientos
Requerimientos en un Reporte de los problemas
Lenguaje Formal de Requerimientos
u Los requerimientos siempre involucran como
comprender mejor el desarrollo de las
Proceso de Análisis de
necesidades de los usuarios y como los objetivos
Requerimientos Requerimientos de la organización pueden cambiar.
u Es esencial planear posibles cambios en los
Base de Datos requerimientos cuando el sistema sea
de Requerimientos desarrollado y utilizado.

Ingeniería de SoftwareDiapositiva 21 Ingeniería de SoftwareDiapositiva 22

Evolución de Requerimientos Clases de Requerimientos


Comprensión Inicial
u Requerimientos Durables. Establecer
Comprensión de los
del Problema Cambios del Problema requerimientos derivados de las actividades de la
organización del cliente. Por ejemplo, un hospital
siempre tendrá doctores, enfermeras, etc. Puede
Requerimientos Cambios en los ser derivado de modelos de dominio.
Iniciales Requerimientos
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.
Tiempo

Ingeniería de SoftwareDiapositiva 23 Ingeniería de SoftwareDiapositiva 24

4
Cambios en el Documento de
Clasificación de Requerimientos Requerimientos
u El documento de requerimientos debe ser
u Requerimientos Cambiantes.
organizado, de tal forma que los cambios en los
• Los requerimientos que cambian por el ambiente del sistema.
requerimientos puedan ser hechos sin tener que
u Surgimiento de los Requerimientos.
re-escribir demasiado.
• Requerimientos que surgen como una comprensión del
desarrollo del sistema. u Las referencias externas deben ser minimizadas y
u Requerimientos en Consecuencial. las secciones del documento deben ser tan
• Requerimientos que resultan de la introducción del sistema a la modulares como sea posible.
computadora.
u Los cambios son fáciles cuando se trata de un
u Requerimientos Compatibles. documento electrónico. Sin embargo, la falta de
• Requerimientos que dependen de otros sistemas o de otros
procesos de la organización.
estándares para documentos electrónicos lo hace
difícil.
Ingeniería de SoftwareDiapositiva 25 Ingeniería de SoftwareDiapositiva 26

Evolución Controlada Resumen


Cambio en los
Requerimientos u Es muy difícil formular una especificación de
Documento VI de requerimientos completa y consistente.
Cambio en los Documento V1 Documento V2
Requerimientos Requerimientos de Requerimientos De Requerimientos u Una definición de requerimientos, una
especificación de requerimientos y una
especificación de Software son una manera de
Implementación V1 Implementación V2 Implementación Implementación
del Sistema del Sistema V1 del Sistema V2 del Sistema
especificar el Software para diferentes tipos de
lectores.
Inconsistencia de los Consistencia de los u El Documento de Requerimientos es una
Requerimientos y del Requerimientos y del
Sistema Sistema descripción para clientes y desarrolladores.

Ingeniería de SoftwareDiapositiva 27 Ingeniería de SoftwareDiapositiva 28

Resumen
u Los errores en los requerimientos son usualmente
muy caros de corregir una vez desarrollado el
sistema.
u La revisión 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 volátiles dependen del
contexto en que se use el sistema.
Ingeniería de SoftwareDiapositiva 29

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