2. ¿QUÉ ES UN REQUERIMIENTO?
En la ingeniería de sistemas, un requisito es una necesidad documentada sobre el contenido,
forma o funcionalidad de un producto o servicio. Se usa en un sentido formal en la ingeniería
de sistemas, ingeniería de software e ingeniería de requisitos.
En la ingeniería clásica, los requisitos se utilizan como datos de entrada en la etapa de diseño
del producto. Establecen qué debe hacer el sistema, pero no cómo hacerlo.
La fase de captura, elicitación y registro de requisitos puede estar precedida por una fase de
análisis conceptual del proyecto. Esta fase puede dividirse en recolección de requisitos,
análisis de consistencia e integridad, definición en términos descriptivos para los
desarrolladores y un esbozo de especificación, previo al diseño completo.
3. REQUERIMIENTOS FUNCIONALES
Un requisito funcional define una función del sistema de software o sus componentes.
Una función es descrita como un conjunto de entradas, comportamientos y salidas. Los
requisitos funcionales pueden ser: cálculos, detalles técnicos, manipulación de datos y
otras funcionalidades específicas que se supone, un sistema debe cumplir. Los
requisitos de comportamiento para cada requisito funcional se muestran en los casos
de uso. Son complementados por los requisitos no funcionales, que se enfocan en
cambio en el diseño o la implementación.
4. REQUERIMIENTOS NO FUNCIONALES
Un requisito no funcional o atributo de calidad es, en la ingeniería de sistemas y la
ingeniería de software, un requisito que sabe bien y especifica criterios que pueden
usarse para juzgar la operación de un sistema en lugar de sus comportamientos
específicos, ya que éstos corresponden a los requisitos funcionales. Por tanto, se
refieren a todos los requisitos que no describen información a guardar, ni funciones a
realizar, sino características de funcionamiento, por eso suelen denominarse Atributos
de calidad de un sistema.
5. REQUERIMIENTOS DE USUARIO
Son declaraciones en lenguaje natural y en diagramas de los servicios que se espera
que el sistema provea y de las restricciones bajo las cuales debe operar.
Describen los requerimientos funcionales y no funcionales de tal forma que sean
comprensibles por los usuarios del sistema que no posean un conocimiento técnico
detallado. Únicamente especifican el comportamiento externo del sistema y evitan,
tanto como sea posible, las características de diseño del sistema. Por consiguiente, los
requerimientos del usuario no se deben definir utilizando un modelo de
implementación. Deben redactarse utilizando el lenguaje natural, representaciones y
diagramas intuitivos sencillos.
Sin embargo, pueden surgir diversos problemas cuando se redactan en lenguaje
natural: falta de claridad, confusión de requerimientos y conjunción de
requerimientos.
6. REQUERIMIENTOS DE SISTEMA
Establecen con detalle los servicios y restricciones del sistema. El documento de requerimientos del
sistema, algunas veces denominado especificación funcional, debe ser preciso. Éste sirve como un
contrato entre el comprador del sistema y el desarrollador del software.
Son descripciones más detalladas de los requerimientos del usuario. Sirven como base para definir
el contrato de la especificación del sistema y, por lo tanto, debe ser una especificación completa y
consistente del sistema. Son utilizados por los ingenieros de software como el punto de partida
para el diseño del sistema.
La especificación de requerimientos del sistema incluye diferentes modelos del sistema como el de
objetos o el de flujo de datos.
En principio, los requerimientos del sistema deberán establecer lo que éste hará y no la manera en
que se implementará. Sin embargo, en el nivel de detalle requerido para especificar el sistema
completamente, es casi imposible excluir toda la información de diseño.
Una especificación del diseño del software
Es una descripción abstracta del diseño del software, que es una base para un diseño e
implementación detallados; agrega detalle a la especificación de requerimientos del sistema.
7. ¿QUÉ ES EL ANALISIS DE REQUERIMIENTOS?
La etapa en que se estudian los requisitos para verificar que estén correctamente
adecuados a las características mencionadas es conocida como Análisis de
requisitos. En la misma se enfocan e intentan solucionar las deficiencias que los
requisitos puedan tener.
Muchas veces se habla de requerimientos en vez de requisitos; esto se debe a una
mala traducción del inglés. La palabra requirement debe ser traducida como
requisito, mientras que requerimiento se traduce al inglés como request.
El propósito de la ingeniería de requisitos es hacer que los mismos alcancen un
estado óptimo antes de alcanzar la fase de diseño en el proyecto. Los buenos
requisitos deben ser medibles, comprobables, sin ambigüedades o contradicciones,
etc.
8. IMPORTANCIA DEL ANALISIS DE
REQUERIMIENTOS
Una solución aplicada en los problemas de comunicaciones ha sido emplear a especialistas en análisis del negocio o del
sistema.
Las técnicas introducidas en los años 90 tienden al uso de prototipos, lenguaje unificado de modelado, casos de uso, y el
desarrollo ágil de software.
Otros tipos de herramientas aplicadas para salvar las diferencias entre los usuarios y las organizaciones de tecnología de la
información y que permiten la comprobación de las aplicaciones son:
pizarras electrónicas para bosquejar los algoritmos y para probar alternativas
capacidad de capturar la lógica del negocio y los datos necesarios
capacidad de generar los prototipos que imitan fielmente el producto final
interactividad
la capacidad para agregar requisitos contextuales y otro comentarios
capacidad para que usuarios remotos y distribuidos operen con el prototipo
Por último, se requieren herramientas que permitan medir, de forma objetiva, la calidad de una especificación de requisitos.