1. Insight | Marzo 2015
Cómo realizar y estandarizar la evaluación de la
calidad de productos de software para su empresa
Resumen
Cuando llega el momento de decidir entre varios productos de software en competencia
para satisfacer necesidades de habilitación tecnológica del negocio, nadie quiere
equivocarse y después tener que rendir cuentas al directorio de una mala inversión. Todos
deseamos seleccionar el producto de mayor calidad dentro de los márgenes del
presupuesto y que agregue valor a la organización. Pero cuando comenzamos a hablar de
calidad del software, no todos están de acuerdo. Para algunos significa “que funcione bien”,
para otros “que no se caiga el sistema” o que tenga el “mejor tiempo de respuesta” o que
“pase las pruebas”, etc. En un mundo globalizado donde compiten muchos proveedores
que ofrecen lo mejor de la industria, y donde hay tanta necesidad de adopción y
optimización tecnológica para la mejora productiva y satisfacción del cliente final, es
necesario contar con un modelo de referencia que nos brinde una comprensión común de
lo que entendemos por calidad y una guía para unificar los criterios de selección de
tecnologías que facilite esta delicada tarea a los responsables de esta comprometedora
decisión. Este artículo describe y operacionaliza en una plantilla excel el modelo de Calidad
de Productos de Software propuesto dentro de la familia de normas ISO/IEC 25000.
Jorge Maturana, 10 Abril de 2016.
Introducción
En tecnologías parece que nunca es suficiente. Usted puede contar con el proceso perfecto
de implementación de software, ajustado a las mejores prácticas de la industria. Sin
embargo, si las especificaciones de requerimientos, diseño o programación no son las
adecuadas a la realidad de su organización, el resultado de este trabajo perfecto,
2. cuidadosamente adherido a dichas especificaciones, terminará entregando un producto
deficiente, de mala calidad y quizás inservible.
Los modelos de calidad del producto software no son nuevos. Desde hace ya tiempo se
vienen desarrollando y aunque tienen menor difusión que los modelos de calidad de
procesos -como CMMI, SPICE, ISO 12207, IT Mark y otros- en la actualidad son cada vez más
relevantes y necesarios cuando se trata de evaluar la calidad de un producto software o
seleccionar entre varios productos en competencia.
Con la publicación de la primera norma de calidad ISO 9126, hace más de dos décadas, se
unificaron los criterios de estudios anteriores y los modelos de calidad del producto de
software comienzan a ser una herramienta de real utilidad para las empresas, liberándose
más tarde la norma ISO/IEC 14598 que aborda el proceso de evaluación de productos
software.
Hoy estas normas tienen una sucesora, la serie de normas ISO 25000 conocida como el
proyecto SQuaRE (System and Software Quality Requirements and Evaluation), que tienen
por objetivo la creación de un marco de trabajo común para evaluar la calidad del producto
de software y consolida coherentemente distintos aspectos de la calidad:
• Gestión de la Calidad, que comprende la definición de la arquitectura de todos los
modelos, términos y definiciones comunes referenciados por todas las otras normas
de la familia.
• Modelos de Calidad, que comprende la descripción detallada de los modelos para la
perspectiva de calidad interna, externa y calidad en uso del producto software,
además de un modelo para la calidad de los datos.
• Medición de la Calidad, que incluye un modelo de referencia de la medición de la
calidad del producto, definiciones de medidas de calidad (interna, externa y en uso) y
guías prácticas para su aplicación.
• Requisitos de Calidad, que ayuda a especificar requisitos de calidad que pueden ser
utilizados tanto en el proceso de elicitación de requisitos de calidad del producto
software a desarrollar, o como entrada del proceso de evaluación.
• Proceso de Evaluación de Calidad, que comprende normas, recomendaciones y
guías para llevar a cabo el proceso de evaluación del producto software y su
implementación práctica desde el punto de vista de los desarrolladores, de los
adquirentes y de los evaluadores independientes
3. Modelos de calidad de productos de software
El estándar de calidad ISO/IEC 25010 define dos modelos para evaluar la calidad del
software: un modelo de Calidad del Producto y un modelo de Calidad de Uso. A su vez
establece tres vistas diferenciadas para la medición de la calidad. Una vista Interna medible a
partir de características intrínsecas del software, como el código fuente que puede ser
revisado mediante pruebas de caja blanca, una vista Externa medible en el comportamiento
del producto, como en una prueba de caja negra, y una vista de Calidad en Uso que es la
perspectiva del usuario del producto cuando es utilizado en un ambiente realista y mide la
efectividad y productividad del usuario final al utilizar el software, en vez de medir las
propiedades del software en sí.
El modelo de Calidad del Producto de software está compuesto por ocho características,
que se subdividen en subcaracterísticas que se pueden medir por métricas internas o
externas.
Figura 1.- Modelo de calidad del producto de software
Características
Subcaracterísticas
4. El modelo de Calidad en Uso está compuesto por cinco características, que se subdividen
en subcaracterísticas que se pueden medir cuando un producto se utiliza en un contexto de
uso real o simulado.
Figura 2.- Modelo de calidad en uso del software
Debe considerar que ninguna norma establece los niveles de calidad deseables para las
evaluaciones, no proporcionan ningún valor de referencia o el umbral que debe cumplir una
métrica. Sería incoherente establecer valores únicos de referencia para toda la industria
debido a la diversidad de situaciones donde las cualidades medibles específicas varían de
un sistema a otro, dependiendo del tipo de software y los niveles de servicio requeridos
por cada organización.
La recomendación es que los requisitos y niveles de calidad sean concomitantes con las
características de la aplicación, su criticidad y requerimientos técnicos y del negocio, lo cual
es tarea del lado del usuario, el cliente, el CIO, o del responsable pertinente, quién debe
determinar el nivel de calidad final que un producto software deberá alcanzar.
5. El proceso de evaluación y certificación de la calidad
La misma familia de normas también proporciona una descripción del proceso de evaluación
de la calidad del producto de software y establece los requisitos para la aplicación de este
proceso. El proceso puede ser utilizado para la evaluación de la calidad del software pre-
desarrollado, software comercial-off-the-shelf o software a medida, se puede utilizar durante
o después del proceso de desarrollo y reúne los enfoques apropiados tanto para los
desarrolladores, compradores y evaluadores independientes de productos de software.
De esta manera se posibilita la certificación de la calidad de productos mediante entidades
de acreditación independientes que realizan las pruebas de evaluación de la calidad de las
aplicaciones de software bajo esta familia de estándares, y que están habilitadas para emitir
un certificado que avale, por ejemplo, la adecuación funcional del software de un fabricante
y asegurar a sus clientes que su producto cumple completa y correctamente los requisitos
funcionales descritos en el producto.
Figura 3.- Modelo del proceso de evaluación de productos de software
Forma para la evaluación de la calidad del producto de software
La plantilla a continuación describe los atributos de calidad para el producto de software y
propone una forma práctica y sencilla de aplicar el modelo de evaluación de productos de
software, el cual puede ir perfeccionando y adecuando a las características, exigencias y
necesidades de su organización.
6. Figura 4.- Forma para la evaluación de calidad de productos de software
7. Conclusiones
Los modelos de Calidad de Procesos que antecedieron a los modelos de Calidad de
Productos han realizado un buen trabajo en estandarizar, difundir y unificar un
entendimiento común sobre la calidad de los procesos. Pero aun así no es suficiente. Usted
puede tener un software desarrollado ejemplarmente de acuerdo a las mejores prácticas,
pero aun así puede fallar a la hora de su uso en producción. Las razones son simples. Si los
requerimientos y especificaciones no son las correctas, entonces el producto resultante
tampoco será el correcto.
Con la creación y difusión de modelos de calidad del producto, se ha avanzado
significativamente en la búsqueda de la calidad, pero aún quedan muchos desafíos que
superar especialmente en la habilitación práctica de mediciones objetivas y cuantificables.
Las mediciones de los atributos de calidad siguen siendo un problema por el alto esfuerzo y
costo asociados.
El modelo de calidad del producto es sólo una parte de la torta, ya que junto a la madurez
de los procesos de evaluación de calidad del producto, actualmente existe la necesidad de
contar con un entorno tecnológico eficaz que permita automatizar las mediciones de la
calidad, su análisis y la presentación de los resultados.
Figura 5.- Los tres ejes centrales en la evaluación de calidad de productos de software
Jorge Maturana es CEO y fundador de la consultora en Management y Tecnologías ORGÁNICA Ltda., Director Trusted
Advisor del Grupo HDI – Innovation in Software Quality, Director para Chile de la Asociación Latinoamericana de
Testing de Software (ALATS), Profesor del programa MBA de Universidad Bernardo O'Higgins, Relator y conferencista
en tecnologías y gestión organizacional, ex-Gerente de Sistemas y Operaciones de eCommerce Falabella, ex Gerente
de Planificación y Control TI de Falabella, ex Gerente de Administración y Control Financiero TI de Falabella. De
profesión Ingeniero Informático, Licenciado en Ingeniería, Postitulado en Gestión Informática, es Magister en Filosofía
de las Ciencias, Diplomado en Neuropsicología, Magister(c) en Psicología Social Aplicada, Certified CMMI, COBIT, ITIL,
Thomas Personal Profile Analysis. Recibió el Premio a la Trayectoria Profesional otorgado por el Departamento de
Informática, Facultad Ingeniería, U. Santiago de Chile.