La calidad en el software: Características y estándares
El software es una industria, y como tal, se le exige calidad. Conoce cuáles son las cualidades que todo software debe tener y porqué 🚀

Cuando se habla de software usualmente se hace referencia a la parte más rápidamente reconocible, a lo más conocido y palpable, como por ejemplo la interfaz, los lenguajes de programación, las buenas prácticas y hasta los patrones y arquitecturas. Sin embargo, hay todo un marco aún más abstracto corriendo por detrás, un marco teórico, pero con implicancias prácticas muy importantes, me refiero a las características del Software, en particular a las características de la calidad del Software.

Conocer estos conceptos es una parte de la diferencia entre un programador, un desarrollador o un ingeniero de software.

También pueden recibir el nombre de cualidades del software ya que estas características que en este artículo repasaremos son en principio deseables y contribuyen a la calidad del producto, de seguro tú ya habrás escuchado y conoces a varias de las que mencionaré en el presente artículo, pero nada como tener un buen sustento y base.

Como ya he dado a entender, estas cualidades del software no están a la libre interpretación, se encuentran bien enmarcadas en un estándar que ha venido madurando durante años; veamos cuál ha sido la evolución de dicho estándar y finalmente ahondaremos en el actual.

Fuente: https://www.iso.org/standard/35733.html

Actualmente la norma ISO/IEC 25010:2011 es la que regula una nueva serie de estándares internacionales conocidos como Requisitos y Evaluación de Calidad de Productos de Software o SQuaRE (System and Software Quality Requirements and Evaluation).

Esta norma es una revisión de la ISO/IEC 9126:2001 la cual a su vez es una evolución de la norma ISO/IEC 9126:1991.

Toda industria mide la calidad. Foto de ThisisEngineering RAEng en Unsplash

Repasemos primero la norma ISO/IEC 9126:2001: está basada en el modelo de calidad de McCall el cual pondera bastante la calidad desde la perspectiva del usuario, entonces teníamos los siguientes atributos de calidad de software:

  • Funcionalidad
  • Confiabilidad
  • Eficiencia
  • Usabilidad
  • Mantenibilidad
  • Portabilidad
  • Satisfacción

La norma actual ISO/IEC 25010:2011 sin embargo es más exhaustiva, ya que se encuentra compuesta por ocho características generales de calidad, las cuales contienen a su vez características específicas, aquí se listan todas:

  • Adecuación funcional (Functional suitability): Comprende nivel completado de funcionalidades, corrección funcional y pertinencia funcional.
  • Eficiencia de desempeño (Perfomance efficiency): Inluye el comportamiento temporal, la utilización de recursos y la capacidad.
  • Compatibilidad (Compatibility): Abarca la coexistencia y la interoperabilidad.
  • Usabilidad (Usability): Comprende cuán reconocible es la adecuación, facilidad de aprendizaje, operabilidad, protección frente a errores de usuario, estética y accesibilidad.
  • Fiabilidad (Reliability): Abarca la madurez, disponibilidad, tolerancia a fallos y la capacidad de recuperación.
  • Seguridad (Security): Aquí se presentan la confidencialidad, integridad, el no-repudio, la autenticidad y la responsabilidad.
  • Mantenibilidad (Maintainability): Tenemos a la modularidad, la reusabilidad, capacidad de ser analizado, capacidad de ser modificado y la capacidad de ser probado.
  • Portabilidad (Portability): Adaptabilidad, facilidad de instalación y la capacidad de ser reemplazado.

Puedes echar un vistazo a un resumen de la norma en su página oficial: https://www.iso.org/obp/ui/#iso:std:iso-iec:25010:ed-1:v1:en

La calidad, es un trabajo en equipo. Foto de krakenimages en Unsplash

Así que estimado lector, ahora ya conoces un poco más acerca de cuáles son las características deseables en todo software a cualquier nivel y sin importar la tecnología utilizada. Desde ahora puedes utilizar este marco como un excelente referente para poder aplicarlo a tus proyectos, además te da el sustento teórico para poder defender las características aplicadas, y finamente te ayuda mucho a saber cómo definir mejor los requerimientos o requisitos no funcionales de tu software.

Nos vemos en el siguiente artículo y si te ha encantado esta entrada, ya sabes qué hacer crack...!💪😉

Un comentario en «La calidad en el software: Características y estándares»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *