Sunteți pe pagina 1din 19

Anlisis y Especificacin de Requisitos

Agosto del 2004

Ingeniera de Requisitos
Proceso mediante el cual se establecen los servicios que el sistema debe brindar y las restricciones que debe cumplir. Es un proceso sistemtico para derivar la definicin del sistema a ser construido.
Ingeniera de Requisitos

Necesidades del Cliente

Documento de Requisitos

Contenido
Requisitos Funcionales
servicios o funciones ofrecidas.

Requisitos No Funcionales
otras cualidades del sistema (performance, usabilidad, etc).

Restricciones al Proceso de Desarrollo


Tiempo y costo principalmente.

Requisito
Definicin abstracta de lo que el sistema debe hacer

Abstraccin

Definicin matemtica y formal de las funciones del sistema

Documento de Requisitos
En la licitacin de un gran proyecto de software,
Debe definir las necesidades en forma suficientemente abstracta para que la solucin no est predefinida. Los requisitos deben escribirse de modo que varios contratistas puedan competir por el contrato, ofreciendo quizs diferentes formas de lograr los objetivos de la empresa. Una vez que la licitacin es adjudicada, el contratista debe escribir la definicin del sistema para el cliente, en ms detalle, para que el cliente entienda y pueda validar lo que el software finalmente har. Ambos documentos pueden llamarse documento de requisitos del sistema.

Diferentes Documentos
Definicin de Requisitos (inicial)
servicios y cualidades que se espera del sistema, restricciones de operacin, restricciones sobre la ejecucin del proyecto, lenguaje natural y diagramas, la informacin la brinda el cliente.

Especificacin de Requisitos
detalle de los servicios, cualidades y restricciones del sistema, lenguaje ms formal y preciso, base del contrato entre desarrolladores y cliente.

Especificacin del Software


descripcin abstracta del software, base para el diseo y la implementacin, agrega detalles tcnicos.

Usuarios de los Requisitos


Especificacin de Requisitos Definicin de Requisitos
gerencia del cliente usuarios finales ingenieros del cliente gerencia de desarrollo arquitectos del sistema.
usuarios finales ingenieros del cliente arquitectos del sistema desarrolladores.

Especificacin del Software


ingenieros del cliente arquitectos del sistema diseadores del sistema desarrolladores.

Requisitos Incompletos
En sistemas grandes y complejos los requisitos nunca estn completos al iniciar el desarrollo del proyecto:
se espera que la nueva solucin mejore la situacin actual (sistema manual o anticuado); no se sabe bien en qu direccin mejorar; usuarios mltiples y diversos con distintas necesidades y prioridades; el sistema final ser un compromiso; quien paga por el sistema no es habitualmente quien lo va a usar; las restricciones de presupuesto se contraponen a las necesidades de los usuarios.

Desarrollo incremental de los Requisitos del sistema.

Ingeniera de Requisitos
Conjunto de actividades que llevan a la definicin y especificacin de requisitos:
estudio de factibilidad, anlisis de requisitos,
obtener los requisitos observando el sistema actual, discutiendo con usuarios, desarrollo de modelos y prototipos del sistema,

definicin de requisitos,
traduccin del producto del anlisis a un documento, documento orientado a mltiples lectores,

especificacin de requisitos,
descripcin detallada del sistema, base del contrato entre cliente y desarrolladores, en paralelo con el diseo.

Ingeniera de Requisitos
Estudio de Factibilidad Anlisis de Requisitos Definicin de Requisitos

Reporte de Factibilidad

Modelos del Sistema Documento Requisitos

Especificacin Requisitos Definicin de Requisitos Especificacin Requisitos

Documento de Requisitos
Documento de Requisitos

Definicin de Requisitos

+ Especificacin de
Requisitos

SRS: Software Requirements Specification


declaracin oficial de lo que har el software.

Qu es los que el sistema debe hacer?, sin indicar cmo?. Debe ser suficientemente especfico como para poder relacionar los requisitos con la funcionalidad del sistema final.

Caractersticas del Documento


Caractersticas necesarias: El documento debe ser completo y consistente:
todas las funciones deben ser incluidas, no debe haber conflictos.
solamente comportamiento externo, restricciones a la implementacin, fcilmente modificable, til como referencia para los encargados del mantenimiento del sistema, registro de reflexiones acerca de futura evolucin, respuestas aceptable a eventos inesperados.

Debe ser fcilmente modificable:


errores, evolucin de los requerimientos.

Por Captulos
Introduccin
descripcin general, funcionalidad e interaccin con otros sistemas, insercin en la empresa/ organizacin.

Glosario
definicin de trminos.

Modelos del Sistema


diagramas de relacin del sistema con el ambiente.

Definicin de Requisitos Funcionales servicios del sistema, ID, descripcin (+ diagramas), prioridad (alta, baja, media). Definicin de Requisitos No Funcionales (performance, usabilidad, portabilidad, etc) caractersticas del sistema, ID, descripcin (+ diagramas), prioridad (alta, baja, media). Restricciones (al proceso y al producto) IDEM Evolucin del Sistema cambios que se anticipan. Especificacin de Requisitos detalle de la funcionalidad:
funciones, datos, dinmica.

Validacin del Documento


El documento de requisitos expresa lo que el cliente realmente necesita. Los errores se propagan al diseo y la implementacin. La correccin es ms cara cuanto ms tarde se detecte el error.
100 veces ms caro corregir un error en los requisitos despus de entregado el sistema, que corregir el documento de requerimientos en la fase de anlisis.

La validacin debe hacerse con el cliente/usuario a medida que se construye el documento de requisitos
revisiones y caminatas.

Cualidades del Documento


Validez:
la funcionalidad especificada es aceptada por todos los usuarios.

Verificable:
los requisitos pueden ser verificados.

Consistencia:
no existen conflictos entre los requisitos.

Comprensible:
claridad de expresin.

Completo:
todas las funciones y restricciones estn incluidas.

Rastreable:
origen de los requisitos (evolucin).

Realismo:
requisitos realizables, mejoras esperables realistas.

Adaptable:
los cambios no afectan el sistema completo.

Evolucin de Requisitos
La comprensin del sistema avanza a medida que se analiza la definicin de requisitos. El tiempo de desarrollo de grandes sistemas puede ser varios aos.
El ambiente cambia y afecta los requisitos iniciales.

Clases de requisitos:
duraderos: relativos a actividades esenciales; voltiles: requisitos temporales propensos a cambiar.

Requisitos Voltiles
Mutables:
cambios en el ambiente organizacional.

Emergentes:
la comprensin profunda del sistema trae a la luz nuevos (o cambios en los) requisitos.

Consecuencias:
la implantacin del sistema trae nuevos requisitos (por ej. restricciones).

Compatibilidad:
cambios en otros sistemas con los que se interacta una aplicacin, generan nuevos requisitos.

Actualizacin de Requisitos
Documento de Requisitos 1 Cambio en los Requisitos Implementacin del Sistema 2

Implementacin del Sistema 1

Cambio en los Requisitos Documento de Requisitos 2

Documento de Requisitos 1

Implementacin del Sistema 1

Implementacin del Sistema 2

Conclusiones
Los requisitos son la base del contrato y la base del proceso de desarrollo de software Requisitos incompletos o ambiguos slo generan problemas Hay que validar los requisitos, ojal a travs de un prototipo Si los requisitos no estn claros, no puedo ir a ningn lado (ando si rumbo). Los requisitos sirven para demostrarle al cliente que hemos terminado el proyecto. Los requisitos sirven como herramienta de negociacin.

S-ar putea să vă placă și