Introducción a la ingeniería de requisitos
La Ingeniería de requisitos estudia todas las actividades relacionadas con los requisitos de software. La ingeniería de requisitos se encarga de las siguientes subtareas:
-Encontrar los requisitos, conocer que requisitos necesita el cliente y cuáles pueden ser los requisitos candidatos de desarrollar.
–Administrar y gestionar los requisitos, analizar el tiempo y por lo tanto el gasto que puede suponer desarrollar uno o varios requisitos.
–Documentar los requisitos, escribir como sería cada requisito y exactamente cómo será cada requisito. Validar los requisitos, en este punto validaremos con el resto de implicados si el requisito es exactamente lo que queremos realizar, sino ha habido ningún fallo hasta ahora en la obtención de los requisitos.
–Verificar los requisitos, verificar que lo que se ha desarrollado es lo que realmente querían los stakeholders
Problemas que encontramos en la ingeniería de requisitos
Diferencias con respecto a la información que obtenemos de las diferentes partes.
Limitaciones de entendimiento entre los diferentes implicados.
Limitaciones entre la comunicación de las personas implicadas, se pueden usar lenguajes más técnicos si todos los implicados conocen este tipo de lenguaje.
Dificultad para encontrar cual de las posibles soluciones es la mejor para los stakeholders.
Tipos de requisitos
Los Requisitos se subdividen en dos tipos, Requisitos de producto y Requisitos de proceso.
A su vez los Requisitos de producto se subdividen en dos categorías, Requisitos funcionales y Requisitos no funcionales. Aunque muchos requisitos pueden no formar parte de una sola categoría.
Requisitos de producto
Los requisitos del producto, digamos que son las características finales que el usuario quiere que tenga el producto. Si fuese un TPV virtual, que se puedan insertar números de tarjetas, que tenga que validar el pin, etc.
Este tipo de Requisitos se puede subdividir en dos tipos Requisitos funcionales y no funcionales
Requisitos funcionales
Este tipo de Requisitos son las funcionalidades que tiene que tener el producto.
Por ejemplo, si fuese un TPV virtual un requisito funcional sería que el cliente tenga que introducir el número de tarjeta, que se conecte con el banco, y que muestre una confirmación en el caso de que la transacción sea correcta.
Requisitos no funcionales
Los requisitos no funcionales, son los que no son funcionalidades pero se espera que el sistema lo haga, con el mismo ejemplo, se espera que el sistema sea fiable y que si muestra una confirmación de compra, esta sea correcta.
Por ejemplo, que no tarde 2 horas en conectarse con el banco para validar la transacción, etc.
Requisitos de proceso
Los requisitos de proceso, son los requisitos que no tienen nada que ver con el producto una vez se haya realizado el producto completamente, por ejemplo el tiempo que se tarda en desarrollar, el equipo, etc.