You are on page 1of 7

REQUISITOS FUNCIONALES Y NO FUNCIONALES

Requisitos Funcionales:
Son declaraciones de los servicios que proveer el sistema, de la manera en que ste reaccionar
a entradas particulares. En algunos casos, los requerimientos funcionales de los sistemas tambin
declaran explcitamente lo que el sistema no debe hacer.
Los requerimientos funcionales de un sistema describen la funcionalidad o los servicios que se
espera que ste provea. Estos dependen del tipo de software y del sistema que se desarrolle y de
los posibles usuarios del software. Cuando se expresan como requerimientos del usuario,
habitualmente

se

describen

de

forma

general

mientras

que

los

requerimientos

funcionales del sistema describen con detalle la funcin de ste, sus


entradas y salidas, excepciones, etc.
Cuando hablamos de una caracterstica requerida de la cual se sabe que va a ser satisfecha por
medio de la adicin de un subsistema o bloque de cdigo en el software, entonces se dice que
estamos ante un requisito funcional, por cuanto es un requisito que denota una funcionalidad del
sistema.
Los requisitos funcionales sern mejor representados en un documento o en
un caso de uso; en tanto que el tamao del proyecto ser lo que haga la diferencia entre tener
un documento especifico o un anexo de la visin del sistema.

Requisitos No Funcionales:
Por otra parte, no todo lo que los clientes nos van a solicitar es funcionalidad pura; por el contrario
ellos desean otras cualidades, si se quieren generalidades, que no son objeto de codificacin si
bien es cierto que pueden llegar a afectar a esta.
Llamamos requisito no funcional a todas las exigencias de cualidades que se imponen al proyecto:
exigencias de usar un cierto lenguaje de programacin o plataforma tecnolgica, por ejemplo. Un
requisito no funcional es una caracterstica ya sea del sistema, del proyecto o del servicio de
soporte, que nos es requerida junto con la especificacin del sistema pero que como ya dije,
muchas veces no se satisface aadiendo cdigo, sino cumpliendo con esta como si de una
restriccin se tratara.
Son aquellos requerimientos que no se refieren directamente a las funciones especficas que
entrega el sistema, sino a las propiedades emergentes de ste como la fiabilidad, la respuesta en

el tiempo y la capacidad de almacenamiento. De forma alternativa, definen las restricciones del


sistema como la capacidad de los dispositivos de entrada/salida y la representacin de datos que
se utiliza en la interface del sistema.
Muchos requerimientos no funcionales se refieren al sistema como un todo ms que a rasgos
particulares del mismo. Esto significa que a menudo con ms crticos que los requerimientos
funcionales particulares. Mientras que el incumplimiento de este ltimo degradar el sistema, una
falla en un requerimiento no funcional del sistema lo inutiliza.
Los requerimientos no funcionales surgen de la necesidad del usuario, debido a las restricciones
en el presupuesto, a las polticas de la organizacin, a la necesidad de interoperabilidad con otros
sistemas de software o hardware o a factores externos como los reglamentos de seguridad, las
polticas de privacidad, etctera.

Los requerimientos son una descripcin de las necesidades o deseos de un producto. La meta
principal en esta etapa es identificar y documentar lo que en realidad se necesita, en una forma en
que pueda fcilmente ser transmitido al cliente y al equipo de desarrollo. Se recomienda aqu
definir al menos los siguientes puntos:
Panorama general
Metas
Funciones del sistema
Atributos del sistema
Supongamos como caso de estudio el sistema de una terminal de punto de venta. Esta terminal es
un sistema automatizado con el que se registran las ventas y se realizan los pagos. Por lo general
este tipo de sistemas comprenden hardware (un computador y un lector de cdigo barras) y
software (el sistema que se ejecuta en la terminal). Suponga que se nos ha contratado para crear
este software.
a) Panorama general
Este proyecto tiene por objeto crear un sistema de terminal para el punto de venta que se utilizar
en las ventas al menudeo.
b) Metas
En trminos generales, la meta es una mayor automatizacin del pago en las cajas registradoras, y
dar soporte a servicios ms rpidos, ms baratos y mejores. Ms concretamente, la meta incluye:
Pago rpido de los clientes.
Anlisis rpido y exacto de las ventas.
Control automtico del inventario.

c) Funciones del sistema (Requisitos Funcionales)


Las funciones del sistema son lo que ste deber de hacer. Hay que identificar estas funciones
y listarlas en grupos lgicos. Para verificar que X es en verdad una funcin del sistema, la siguiente
frase deber tener sentido: El sistema deber hacer X. Por ejemplo: el sistema deber autorizar
pagos a crdito.
Las funciones pueden clasificarse en tres categoras: evidentes, ocultas y superfluas. Las
evidentes deben realizarse, y el usuario debe saber que se han realizado. Las ocultas tambin
deben realizarse, y puede que no sean visibles para el usuario. Muchas de estas funciones se
omiten (errneamente) durante el proceso de obtencin de requerimientos. Las superfluas son
opcionales, y su inclusin no repercute significativamente en el costo ni en otras funciones.
Las siguientes son algunas de las funciones ms representativas del sistema de punto de venta:

Funciones bsicas:
Referencia Funcin Categora
R1.1 Registrar las ventas en proceso (actual): los productos comprados. evidente
R1.2 Calcular el total de la venta actual; se incluye el impuesto. evidente
R1.3 Capturar la informacin sobre el objeto comprado usando su cdigo de barras y un lector, o
usando una captura manual de un cdigo de producto. evidente
R1.4 Reducir las cantidades del inventario cuando se realiza una venta. oculta
R1.5 Registrar las ventas efectuadas. oculta
R1.6 El cajero deber introducir una identificacin y una contrasea para poder utilizar el sistema.
evidente
R1.7 Ofrecer un mecanismo de almacenamiento persistente. oculta
R1.8 Mostrar la descripcin y el precio del producto registrado. evidente

Funciones de pago:
Referencia Funcin Categora
R2.1 Manejar los pagos en efectivo, capturando la cantidad ofrecida y calculando el saldo deudor.
evidente
R2.2 Manejar los pagos a crdito, capturando la informacin crediticia a partir de una lectora de
tarjetas, o mediante captura manual, y autorizando los pagos con el servicio de autorizacin
(externa) de crditos de la tienda a travs de una conexin por modem. evidente
R2.3 Manejar los pagos con cheque, capturando el nmero de RUT y telfono mediante captura
manual, y autorizando los pagos con el servicio de autorizacin (externo) de cheques de la tienda a
travs de consulta telefnica. evidente
R2.4 Registrar los pagos en el sistema de cuentas por cobrar, pues el servicio de autorizacin de
crdito debe a la tienda el monto del pago. oculta
d) Atributos del sistema (Requisitos No Funcionales)
Los atributos del sistema son cualidades no funcionales que a menudo se confunden con
las funciones. Por ejemplo: facilidad de uso, tolerancia a fallas, tiempo de respuesta,
metfora de interfaz, plataformas.
Los atributos tienen un posible conjunto de detalles de atributos, los cuales tienden a ser valores
discretos, confusos o simblicos. Por ejemplo:
tiempo de respuesta = (psicolgicamente correcto) metfora de interfaz = (grfico, colorido, basado
en formularios)
Algunos atributos del sistema tambin pueden tener restricciones de frontera del atributo, que son
condiciones obligatorias de frontera, generalmente en un rango numrico de valores de un atributo.
Por ejemplo:
tiempo de respuesta = (dos segundos como mximo)

Algunos atributos del sistema de punto de venta son:


Atributo Detalles y restricciones de frontera
El tiempo de respuesta cuando se registre un producto vendido, la descripcin y el precio debern
aparecer en un lapso de tiempo no superior a segundo. (restriccin de frontera)
Las ventanas sern orientadas a formularios y cuadros de dilogo. (detalle - metfora de interfaz )
Permitir una navegacin fcil con teclado y no con mouse. (detalle)
Debe registrar los pagos a crdito autorizados que se hagan a las cuentas por cobrar en un plazo
de 24 horas, aun cuando se produzcan fallas de energa o del equipo. (restriccin de frontera tolerancia a fallas).
El aplicativo se ejecutara en Plataformas del sistema operativo Microsoft Windows 95, 98, 2000 y
NT. (detalle)
Finalmente, es conveniente describir todos los atributos del sistema que se relacionen claramente
con las funciones especificadas. Adems, los detalles de los atributos y las restricciones de frontera
pueden catalogarse como obligatorios u opcionales. Por ejemplo:
Ref. Funcin Categora Atributo Detalles y restricciones Categora
R1.9 Mostrar la descripcin y el precio del producto registrado. Evidente tiempo de respuesta 1
segundo como mximo obligatorio
metfora de interfaz Pantallas basadas en formularios. Con colores.

obligatorio

R2.4 Registrar los pagos a crdito en el sistema de cuentas por cobrar, pues el servicio de
autorizacin de crdito debe a la tienda el importe del pago. oculto tolerancia a fallas Debe registrar
en las cuentas por cobrar en un plazo de 24 horas, aun cuando se produzcan fallas de energa o
del equipo. Obligatorio tiempo de respuesta 10 segundos como mximo obligatorio.
Otros Ejemplos de Requisitos No Funcionales:
Supongamos que queremos crear un software para un cajero automtico. El cliente desea
que este programa est disponible las 24 horas del da los siete das de la semana
(disponibilidad).

El nmero de usuarios que podrn acceder de manera simultnea al programa.


La cantidad de ancho de banda que el aplicativo necesitara para funcionar correctamente.
Esto en los casos de tener canales dedicados, es decir, que el aplicativo necesite
transportar datos de una sucursal situada en una ciudad a otra por medio de una VPN.

You might also like