top of page
DDQA_edited.jpg

Diario de
QA

  • linkedin
DDQA.png
  • Foto del escritorCarla Gomez

Requerimientos de software

Actualizado: 27 oct 2022

Hablemos de una parte muy importante no solo en Software Testing, sino, en Ingeniería de Software en general: Los requerimientos o requisitos.


Un requerimiento define las funciones, capacidades o atributos intrínsecos de un sistema de software, en otras palabras, describe como un sistema debe comportarse.


Existen dos tipos de requerimientos:


Requerimientos funcionales


Según la oficina de gestión de proyectos, los requerimientos funcionales de un sistema, son aquellos que describen cualquier actividad que este deba realizar, en otras palabras, el comportamiento o función particular de un sistema o software cuando se cumplen ciertas condiciones. Estos requisitos deben estar especificados de manera explícita. Ejemplos:

  • El campo de monto acepta únicamente valores numéricos con dos decimales.

  • La pantalla de registro de pago puede imprimir los datos en pantalla a la impresora.

  • Después de tres intentos fallidos de entrar al sistema, bloquear la cuenta.

Requerimientos no funcionales


Los requerimientos no funcionales definen las características o cualidades generales que se esperan de un sistema y establecen restricciones sobre el producto, el proceso de desarrollo de software y establecen restricciones externas que el software debe lograr. Ejemplos:

  • Requerimientos de usabilidad: La usabilidad se define como el esfuerzo que necesita hacer un usuario para aprender, usar, ingresar datos e interpretar los resultados obtenidos de un software de aplicación.

  • Requerimientos de eficiencia: Relacionado con desempeño en cuanto a tiempo de respuesta, número de operaciones por segundo, entre otras mediciones, así como consumo de recursos de memoria, procesador, espacio en disco o red.

  • Requerimientos de dependibilidad: Engloba varios atributos como:

    • Disponibilidad: Disposición del sistema para prestar servicio correctamente.

    • Confiabilidad: Continuidad del servicio prestado por el sistema.

    • Integridad: Ausencia de alteraciones inadecuadas al sistema.

    • Mantenibilidad: Posibilidad de realizar modificaciones o reparaciones a un proceso sin afectar la continuidad del servicio.

Ahora que tenemos estos conceptos claros ¿Cómo relacionamos los requerimientos con el testing?

Las pruebas se pueden clasificar conforme a lo que verifican, en este caso se dividen en pruebas funcionales y no funcionales.


Las pruebas funcionales se basan en la ejecución, revisión y retroalimentación de las funcionalidades anteriormente especificadas, es decir, los requisitos funcionales. Dentro de estas hay distintos tipos que serán detalladas en el siguiente post. Algunos tipos de pruebas funcionales son:

  • Pruebas exploratorias

  • Pruebas de humo

  • Pruebas de regresión

Las pruebas no funcionales, en cambio, tienen como objetivo verificar los requisitos que se utilizan para juzgar la operación de un sistema, en palabras más simples, características que, aunque tal vez no fueron especificadas, un sistema debe contar con ellas. Ejemplo:

  • Pruebas de usabilidad

  • Pruebas de rendimiento

  • Pruebas de compatibilidad

  • Pruebas de portabilidad

En conclusión, para decir que sistema tiene calidad deben cumplirse los requisitos funcionales y no funcionales, aunque cabe destacar que esto no es lo único que se toma en cuenta para evaluar la calidad. Si un sistema cumple con los requisitos especificados y no cumple con las necesidades del cliente, pues, no tiene calidad, porque el cliente no lo utilizará.


En el próximo post hablaremos de unos temas interesantes: Verificación y validación, los niveles de prueba y los tipos de prueba. #NoTeRindas


 

Fuentes:



8936 visualizaciones1 comentario

Entradas Recientes

Ver todo

1 comentario


Santiago Bernal Tinjaca
Santiago Bernal Tinjaca
09 oct 2023

Los requerimientos vienen a ser la base para construir nuestro software, bien definidos pueden dar un gran apoyo al crear nuestros casos de prueba, gracias por tu post.😀

Editado
Me gusta
bottom of page