En desarrollo digital, ¿cuál es la diferencia entre requisitos funcionales y no funcionales?

La mayoría de la gente le dirá que los requisitos funcionales son lo que el programa necesita hacer y los requisitos no funcionales son la interfaz de usuario.
Y diría que esa es la razón por la que tantos programas apestan.

Tomemos un auto.

Si buscas comprar un automóvil y alguien te ofrece un chasis desnudo con solo el motor y las ruedas, los mirarías como si estuvieran locos. Es cierto que eso es todo lo que necesita para hacer funcionar el vehículo, pero no sería un automóvil hasta que al menos coloque el asiento del conductor y el volante. Ahora la carrocería también puede considerarse un requisito funcional. Ahora tienes un auto básico, ¿o sí? Dado que el objetivo del automóvil no es ir de A a B sino llevarlo de A a B, se deben tener en cuenta sus requisitos de usuario. Entonces, ¿cuántos de los “lujos” de un automóvil son realmente requisitos funcionales? Cuán bien responda esa pregunta determinará qué tan bueno será su software

En este caso, los requisitos no funcionales serían el color del trabajo de pintura y si el automóvil tiene transmisión automática o no, o al menos está en este lado del estanque. En el caso del diseño de software que puede relacionarse con temas y temas para programas. Por supuesto, eso dependería de cuán funcional creas que es la “Interacción y personalización del usuario”. Para una empresa inteligente, eso también sería un valioso requisito funcional también.

Gracias por el A2A, Raqib

No estoy muy seguro de lo que quieres decir con “desarrollo digital”. Por ahora te diré que quieres decir algo como desarrollo de software.

En términos muy generales, los requisitos funcionales son comportamientos específicos (es decir, funcionalidad ), mientras que los requisitos no funcionales son otros criterios, generalmente menos cuantificables, menos observables sin un largo período de observación, y / o menos directamente relacionados con el propósito principal del programa. Muchas personas piensan que los requisitos funcionales son lo que se supone que debe hacer un sistema , mientras que los requisitos no funcionales son lo que se supone que son los sistemas. Por ejemplo, supongamos que está escribiendo un programa para ayudar a los usuarios a rastrear su colección de widgets (que tienen tamaño, color, material, nombre e imagen) y mostrarlos a otros. Los requisitos funcionales incluirían cosas tales como:

  • Los usuarios pueden crear, leer, actualizar y eliminar registros de widgets en su cuenta ( hacer el mantenimiento de registros de widgets)
  • Esos registros contienen cada una de las propiedades que mencioné anteriormente ( hacer un registro de cada uno de esos factores)
  • Esos registros son visibles para otros usuarios (incluidas las personas que no han iniciado sesión) si y solo si están marcados como “públicos” (proteja los registros; esto podría llamarse no funcional si “mostrarlos” no fuera parte del propósito principal)
  • Los usuarios pueden buscar widgets por cada uno de los criterios textuales, además de si son propios del usuario, de otro usuario específico ( y público marcado), o de cualquiera ( y público marcado), y por supuesto devolver resultados correctos (deje que el usuario buscar de esta manera, correctamente)

Los requisitos no funcionales pueden ser cosas como:

  • 99.9% de tiempo de actividad ( sea confiable): cuantificable pero solo después del lanzamiento y operación prolongada
  • Tiempo de respuesta de búsqueda inferior al segundo ( sea rápido): cuantificable pero menos relacionado con el propósito
  • Diseño receptivo ( se puede leer fácilmente en pantallas pequeñas): semicuantificable, pero menos relacionado con el propósito
  • Paleta de colores agradable a la vista (agradable de ver): extremadamente subjetiva

Consulte los requisitos no funcionales para obtener más información.

Aprendí la esencia de los requisitos funcionales y no funcionales cuando estuve involucrado en un proyecto el año pasado.

Te sugiero que revises este hermoso artículo antes de pasar por las diferencias:


¿Cuáles son los requisitos funcionales y no funcionales?


Las diferencias se enumeran como:

Requerimientos funcionales

1. Los requisitos funcionales son aquellos requisitos que tratan con lo que el sistema debe hacer o proporcionar a los usuarios.

2. Determina las características del producto.

3. Está definido por los usuarios.

4. Es fácil probar los requisitos funcionales.


Requerimientos no funcionales

1. Los requisitos no funcionales son aquellos que definen las restricciones sobre cómo lo hará el sistema.

2. Determina las propiedades del producto.

3. Lo determinan los desarrolladores y arquitectos de software.

4. Es comparativamente difícil.

Apreciado por Upvotes 🙂

Funcional en un automóvil es como el motor y las ruedas. No funcional en un automóvil es como el asiento y la transmisión automática. Una de ellas hace que la cosa funcione y la otra la hace utilizable por el usuario. Entonces, para una aplicación, funcional son los requisitos que hacen que haga lo que quieres que haga (como jugar al solitario). Los requisitos no funcionales son similares: ¿está en francés para los usuarios franceses? ¿O es obvio el botón Iniciar sesión? … Cosas que lo hacen útil para el usuario. ¿Eso ayuda?