REQUERIMIENTOS NO FUNCIONALES
“Requerimientos no funcionales”
Monografía
Requerimientos no Funcionales
Introducción
A comienzos de los años 60 el desarrollo del hardware era complejo y caro de
construir, en cualquier momento la computadora podía sufrir una avería y solo el
mantenimiento costaba millones de dólares. Comparado a ese costo, tenía poca importancia
la complejidad o la calidad del desarrollo delsoftware.
Habitualmente el software no era de gran tamaño debido a la escasa capacidad de memoria
y generalmente estaban escritos por una persona que era empleado en la organización que
usaba el hardware. Este desinterés respecto al desarrollo del software cambia cuando,
gracias a los avances en la tecnología, aumenta la capacidad de memoria y se reducen los
costes de desarrollo y mantenimiento delhardware.
Cuando la demanda de software cada vez más complejo comienza a crecer, también
comienza a crecer una gran cantidad de problemas y un alto índice de fracasos en los
proyectos de desarrollo, a esto se le llamó la “crisis del software”.
De allí surge la necesidad de una Ingeniería del Software, que permita llevar adelante
cualquier desarrollo de software, que tenga: calidad, que concluya en elplazo estipulado y
con un costo razonable.
En un estudio que se hizo en Norteamérica, los directores de los proyectos que participaron
indicaron que los tres principales factores de fracaso en el desarrollo del software eran:
1-Falta de información por parte de los usuarios
2- Especificaciones y requerimientos incompletos
3- Especificaciones y requerimientos cambiantes
Los proyectos en los que nose determinaban correctamente los requerimientos y éstos
cambiaban frecuentemente durante el desarrollo, superaban con creces su presupuesto
inicial. Todas estas circunstancias convencieron a la comunidad de la Ingeniería de Software
de la necesidad, de una Ingeniería de Requerimientos.
Una vez asumida la necesidad de una Ingeniería de Requerimientos(IR), el reto al
que se enfrentó la comunidadinvestigadora era identificar claramente los problemas a los
que se enfrenta y dotar a dicha ingeniería de las herramientas teóricas y prácticas
necesarias para solucionarlos.
Dentro de la Ingeniería de Requerimientos, la especificación de los RequerimientosNo
Funcionales (RNF) en sistemas de software, ha presentado múltiples retos a los
investigadores interesados en el tema. Las crecientesexigencias de los sistemas en
características relacionadas con requerimientos no funcionales, como desempeño,
seguridad, escalabilidad, entre otros, ha permitido diversos enfoques a la hora de construir
los planos del software del sistema deseado por el cliente.La dificultad para identificar,
evaluar y tipificar los RNF se relaciona con la falta de consenso en definiciones y esquemas
de clasificación enla literatura existente sobre ellos.
¿Qué es un requerimiento?
La definición más general alrededor de esta noción es la que brinda el Instituto de Ingeniería
Electrónica y Eléctrica (IEEE):
(1) Una condición o necesidad de un usuario para resolver un problema o alcanzar
un objetivo.
(2) Una condición o capacidad que debe estar presente en un sistema o
componentes de sistema para satisfacerun contrato, estándar, especificación u otro
documento formal.
(3) Una representación documentada de una condición o capacidad documentada
como las descritas en (1) y (2).
Sistemas de Información II
Monografía
Requerimientos no Funcionales
Esta definición expresa la perspectiva clásica de los requerimientos como elementos de un
producto, o criterios para acuerdos. Sin embargo, otros autores sonmás específicos frente a
la relación de los requerimientos con relación al sistema que van a representar; algunos lo
definen como la propiedad que un sistema debería tener para tener éxito en el entorno en el
que se usará.
Otra definición, que justifica la necesidad de los requerimientos frente a las perspectivas del
usuario y del sistema es:
“… Un requerimiento es algo que el producto debe...
Regístrate para leer el documento completo.