La calidad es determinante en la aceptación de un producto de software. En el mercado actual la calidad del software que produce una empresa determina sus ventas y ganancias. Según [Pressman y Maxim, 2015] la calidad del software enfatiza en tres puntos importantes:

  • Un proceso eficaz de software establece la infraestructura que da apoyo a cualquier esfuerzo de elaboración de un producto de software de alta calidad.
  • Un producto útil entrega contenido, funciones y características que el usuario final desea; sin embargo, de igual importancia es que entrega estos activos en forma confiable y libre de errores.
  • Al agregar valor para el productor y para el usuario de un producto, el software de alta calidad proporciona beneficios a la organización que lo produce y a la comunidad de usuarios finales. La organización que elabora el software obtiene valor agregado porque el software de alta calidad requiere un menor esfuerzo para el mantenimiento, menos errores que corregir y poca asistencia al cliente. Esto permite que los ingenieros de software dediquen más tiempo a crear nuevas aplicaciones y menos a repetir trabajos mal hechos. La comunidad de usuarios obtiene valor agregado porque la aplicación provee una capacidad útil en forma tal que agiliza algún proceso del negocio.

No es lógico implementar un modelo de calidad que luego no podrá ser certificado para brindar reconocimiento internacional a la empresa o institución desarrolladora de software

Lionel Baquero

Los modelos de evaluación de la calidad del producto de software han surgido como un esfuerzo para descomponer la calidad en características más sencillas que puedan ser medidas. Desde el primer modelo de calidad del producto de software propuesto en [McCall, 1977] se define la usabilidad como factor que influye en la evaluación de la calidad.

Destacable es el hecho de que la mayoría de los factores propuestos por McCall, aún continúan definiendo la calidad; las formas de calcular estos criterios son las que han sufrido cambios radicales con el paso de los años. Este modelo, fue propuesto y diseñado para cualquier tipo de sistema. La mayor contribución del modelo es toda su organización, desde las perspectivas hasta la consideración de las métricas [Fernández, 2018].

Se muestran en la Figura 1 los factores definidos y se puede observar que la usabilidad es representada como un factor de calidad del producto de software. El modelo de McCall define usabilidad como el esfuerzo que se requiere para aprender, operar, preparar las entradas, e interpretar las salidas de un programa.

Basado en el modelo de McCall surge el estándar ISO 9126 [ISO, 1992], sustituyendo los atributos antes definidos por características. En este están definidas seis características que todo producto de software debe poseer y que determinan la calidad, como se puede ver en la Figura 2. Estas características se dividen en subcaracterísticas que son medidas utilizando métricas.

Figura 2: Modelo de calidad de ISO 9126. (Fuente: adaptado de [Obeso y col., 2005])

Es de destacar que ISO 9126 reutiliza y redefine los factores de la calidad de la clasificación de McCall entre sus características. En ambos casos no todos los factores o características pueden medirse de forma directa. En su modelo se reconoce usabilidad como el grado en el que el software es fácil de usar. Además se le atribuyen como subcaracterísticas necesarias que el software sea entendible, aprendible y operable.

Luego como resultado de la evolución de ISO 9126 y otros estándares surge el modelo propuesto por ISO 25000 [ISO, 2005] que tiene como objetivo crear un marco para la evaluación de la calidad de los productos de software.

La serie de estándares ISO 25000 consta de cinco divisiones:

  • División de Gestión de Calidad (ISO 2500n)
  • División de Modelo de Calidad (ISO 2501n)
  • División de Medición de la Calidad (ISO 2502n)
  • División de Requisitos de Calidad (ISO 2503n)
  • División de Evaluación de la Calidad (ISO 2504n)

Este estándar define la calidad del software como el grado en que el producto de software satisface las necesidades expresadas o implícitas, cuando es usado bajo condiciones determinadas. Algunas de las características para este modelo se corresponden con las de ISO 9126, aunque se incluyen o modifican algunas como se puede observar en la Figura 3.

Figura 3: Modelo de calidad del producto de software de ISO 25010. (Fuente: adaptado de [ISO, 2011])

En ISO 25010 [ISO, 2011], correspondiente a la división del modelo de calidad se definen 8 características y 31 subcaracterísticas. También en ISO 25023 [ISO, 2016] se establecen 86 métricas de calidad del producto de software. De estas, 6 subcaracterísticas (19.4%) y 22 métricas (25.6%) se corresponden con la usabilidad del software, lo que demuestra la importancia que se le otorga. La característica de usabilidad para este modelo se conceptualiza como la capacidad del producto de software para ser entendido, aprendido, usado y resultar atractivo para el usuario, cuando se usa bajo determinadas condiciones.

El autor de este artículo asume que usabilidad es la percepción que tiene el usuario sobre la capacidad del producto de software para ser entendido, aprendido, usado y resultarle atractivo cuando lo usa. Esta definición permite explicitar que el usuario es quien determina si el producto es usable o no, y esta determinación depende únicamente del criterio que se ha formado mediante su experiencia en el uso del software.

Lionel Baquero

Las subcaracterísticas de usabilidad se definen en ISO 25010 de la siguiente forma:

  • Inteligibilidad: Capacidad del producto que permite al usuario entender si el software es adecuado para sus necesidades.
  • Aprendizaje: Capacidad del producto que permite al usuario aprender su aplicación.
  • Operabilidad: Capacidad del producto que permite al usuario operarlo y controlarlo con facilidad.
  • Protección frente a errores de usuario: Capacidad del sistema para proteger a los usuarios de cometer errores.
  • Estética de la interfaz de usuario: Capacidad de la interfaz de usuario de agradar y satisfacer la interacción con el usuario.
  • Accesibilidad: Capacidad del producto que permite que sea utilizado por usuarios con determinadas características y discapacidades.

Se hace énfasis en ISO 25000 en este artículo como guía para la evaluación de la usabilidad del producto de software dada su actualidad, amplia aceptación y difusión, así como el excelente modelo de evaluación que ofrece.

Aunque se han desarrollado otros modelos de calidad del producto de software estos no se caracterizan por brindar posibilidades de certificación internacional. No es lógico implementar un modelo que luego no podrá ser certificado para brindar reconocimiento internacional a la empresa o institución desarrolladora de software.

Referencias bibliográficas:

  • [Pressman y Maxim, 2015] Pressman, R. y Maxim, B. (2015). Software Engineering: A Practitioner’s Approach. McGraw-Hill Education, 8th edition.
  • [McCall, 1977] McCall, J. A. e. a. (1977). Factors in software quality. US Rome Air development center reports.
  • [Fernández, 2018] Fernández, Y. (2018). Modelo computacional para la evaluación y selección de productos de software. Tesis doctoral, Universidad de Granada.
  • [ISO, 1992] ISO (1992). ISO/IEC 9126: Information Technology – Software Product Evaluation – Quality Characteristics and Guidelines for Their Use.
  • [Obeso y col., 2005] Obeso, M. E. A., Lovelle, J. M. C., y Prieto, A. B. M. (2005). Metodología de medición y evaluación de la usabilidad en sitios web educativos. Universidad de Oviedo.
  • [ISO, 2005] ISO (2005). ISO/IEC 25000 – System and Software Quality Requirements and Evaluation (SQuaRE).
  • [ISO, 2011] ISO (2011). Systems and software engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) – System and software quality models.
  • [ISO, 2016] ISO (2016). Systems and software engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) — Measurement of system and software product quality.