Menú Cerrar

Atributos de calidad del software

atributos de calidad

Uno de los insumos más importantes para el trabajo de un arquitecto de software son los atributos de calidad. ¿Por qué? Porque guían muchas de las actividades que estos realizan.

En este artículo quiero hablarte de qué son atributos de calidad, y darte una lista de los atributos principales. La idea es que la puedas consultar cuando estés trabajando en los atributos de tu proyecto.

¿Qué son los atributos de calidad?

La definición de atributos de calidad que nos dan en el libro Software architecture in Practice (uno de mis libros recomendados) es la siguiente:

Un atributo de calidad es una propiedad medible de un sistema, que indica qué tan bien el sistema satisface las necesidades de las partes interesadas.

Sobre esta definición, profundizo en un video de mi canal de YouTube:

A los atributos de calidad también se les conoce como:

  • Requerimientos no funcionales.
  • Características de arquitectura (mi definición favorita).
  • Propiedades de calidad.

Listado de atributos de calidad

No existe una lista definitiva de atributos. La realidad es que dependiendo del proyecto y sus necesidades, casi que uno podría inventarse nuevos atributos. Sin embargo, hay algunos que son mucho más comunes que otros.

Voy a intentar darte una lista lo más completa posible, pasando por los comunes, hacia unos menos comunes. Esta lista será un documento viviente, que iré actualizando con el tiempo.

Los atributos más comunes

  1. Desplegabilidad (facilidad de despliegue).
  2. Disponibilidad.
  3. Escalabilidad.
  4. Interoperabilidad.
  5. Modificabilidad.
  6. Rendimiento.
  7. Seguridad.
  8. Testeabilidad (facilidad de probar el sistema).
  9. Usabilidad.

Otros atributos de calidad

  1. Accesibilidad.
  2. Adaptabilidad.
  3. Agilidad.
  4. Confiabilidad.
  5. Cumplimiento de estándares (dependiendo de la industria y las necesidades de los usuarios).
  6. Distribución del desarrollo. ¿El diseño del sistema permite que equipos separados a nivel global puedan trabajar en él?
  7. Elasticidad.
  8. Extensibilidad.
  9. Facilidad de desarrollo.
  10. Facilidad de instalación (installability).
  11. Factibilidad. ¿Lo que se quiere hacer es viable de acuerdo al tiempo y el presupuesto?
  12. Internacionalización (i18n).
  13. Localización (l10n).
  14. Marketeabilidad (de marketing o mercado). ¿El sistema está hecho con una serie de tecnologías que el mercado considera atractivas y modernas?
  15. Mantenibilidad.
  16. Movilidad.
  17. Modularidad.
  18. Monitoreabilidad.
  19. Portabilidad.
  20. Recuperabilidad.
  21. Reusabilidad.
  22. Tolerancia a fallos.
  23. Variabilidad.

Y todavía hay más atributos. En este artículo de Wikipedia encontrarás una lista más extensa.

Atributos y patrones de arquitectura

Los atributos son una buena herramienta para decidir cuál es el patrón de arquitectura a usar en nuestro sistema. En este video te cuento más detalles.

Espero que con este artículo introductorio, te haya un poco más claro este tema.

Si tienes alguna pregunta, con gusto la respondo en los comentarios.


Suscríbete a mi lista de correo.

Te avisaré de nuevo material que te ayude a ser un mejor desarrollador o arquitecto.
Publicado en Arquitectura de software