![](https://static.wixstatic.com/media/0fa931_8e0b8dbcaa454f14afd25e417875d296~mv2.png/v1/fill/w_621,h_248,al_c,q_85,enc_auto/0fa931_8e0b8dbcaa454f14afd25e417875d296~mv2.png)
Existen varios modelos de evaluación de calidad de Software, en otro post hablamos de ellos, está vez vamos a hablar del modelo ISO 25000, pero primero vamos a ver el siguiente vídeo que nos muestra qué es la ISO.
Recordemos que , los modelos de calidad de software se clasifican de acuerdo con el enfoque de evaluación, ya sea a nivel de proceso, producto o calidad en uso. La norma ISO 25000 es de tipo calidad del producto.
¿Qué es ISO 25000?
ISO/IEC 25000, conocida como SQuaRE (System and Software Quality Requirements and Evaluation), es una familia de normas que tiene por objetivo la creación de un marco de trabajo común para evaluar la calidad del producto software.
El objetivo general de la creación de este estándar es organizar, enriquecer y unificar las series que cubren dos procesos principales: especificación de requisitos de calidad del software y evaluación de la calidad del software, soportada por el proceso de medición de calidad del software. Las características de calidad y sus mediciones asociadas pueden ser útiles no solamente para evaluar el producto de software sino también para definir los requerimientos de calidad. Este estándar va dirigido tanto a las pequeñas empresas que crean software como a las más grandes empresas, sin importar su volumen de producción.
La familia ISO 25000 es el resultado de la evolución de otras normas anteriores, especialmente de las normas ISO/IEC 9126, e ISO/IEC 14598. Según Piedrahita (2007) "Dado la importancia que tiene dentro del desarrollo de un producto de software, las subcaracterísticas seguridad e interoperabilidad pasaron a ser parte de las características ya existentes, lo que re-definió el modelo de calidad propuesto por la norma, convirtiéndose en un nuevo modelo de calidad que contiene ocho características. Este modelo es propuesto en la norma SQuaRE - ISO/IEC CD 25010".
El modelo de calidad propuesto por SQuaRE se divide en dos partes: de calidad interna y externa, y de calidad en uso. La calidad interna se relaciona con las propiedades estáticas del software; la externa hace alusión a las características asociadas con la ejecución del software en el hardware y el sistema operativo. La calidad en uso considera la calidad del sistema en su ambiente operacional para usuarios, para las tareas específicas que realizan. En lo expuesto por Piedrahita (2007), el modelo SQuaRE supone que la calidad de los procesos presenta dependencia tanto de la calidad interna y externa, como de la calidad en el uso; y estas últimas, a su vez, se ven influenciadas por la calidad en el proceso, tal como se observa en la Figura 1.
![](https://static.wixstatic.com/media/0fa931_aada9aa2068e4c3895cbd2db0c0d9471~mv2.jpg/v1/fill/w_669,h_273,al_c,q_80,enc_auto/0fa931_aada9aa2068e4c3895cbd2db0c0d9471~mv2.jpg)
Figura 1. Acercamientos a la calidad, ISO/IEC CD 25010:2007. Tomado Martínez (2013)
CARACTERÍSTICAS y SUB-CARACTERÍSTICAS A EVALUAR EN LA CALIDAD INTERNA Y EXTERNA
![](https://static.wixstatic.com/media/0fa931_ae8330b07cf24dfa8d21daf4abb7d6f6~mv2.png/v1/fill/w_980,h_422,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/0fa931_ae8330b07cf24dfa8d21daf4abb7d6f6~mv2.png)
Figura 2. ISO/IEC CD 25010:2007. Software engineering – Software product Quality Requirements and Evaluation (SQuaRE) – quality model. Tomado de Piedrahita(2007)
Funcionalidad La capacidad del producto de software para proveer las funciones que satisfacen las necesidades explícitas e implícitas cuando el software se utiliza bajo condiciones específicas.
Adecuación La capacidad del producto de software para proveer un adecuado conjunto de funciones para las tareas y objetivos especificados por el usuario.
Exactitud La capacidad del producto de software para proveer los resultados o efectos acordados con un grado necesario de precisión.
Conformidad con la funcionalidad La capacidad del producto de software de adherirse a los estándares, convenciones o regulaciones legales y prescripciones similares referentes a la funcionalidad.
2. Seguridad La capacidad del producto de software para proteger la información y los datos de modo que las personas o los sistemas no autorizados no puedan leerlos o modificarlos, y a las personas o sistemas autorizados no se les niegue el acceso a ellos.
Resistencia al Acceso La capacidad del software para proteger de accesos ilegales y no autorizados.
Resistencia a la copia La capacidad del producto de software para protegerse de copias ilegales.
Facilidad para cifrar La capacidad del producto de software para proteger de buscadores ilegales por encriptación.
Resistencia a la falsificación La capacidad del producto de software para no permitir el análisis de la estructura interna y de datos almacenados.
Robustez La capacidad del producto de software para recuperarse de entradas y situaciones anómalas.
Conformidad con la seguridad La capacidad del producto de software para adherirse a estándares, convenciones o regulaciones en lo relacionado con seguridad.
3. Interoperabilidad La capacidad del producto de software de interactuar con uno o más sistemas especificados. La interoperabilidad se utiliza en lugar de compatibilidad para evitar una posible ambigüedad con la reemplazabilidad.
Compatibilidad de la OSI La capacidad del producto de software para interactuar con uno o más sistemas especificados en cada nivel de la capa de la OSI (Open Systems Interconnection)
Compatibilidad del software La capacidad del producto de software para ser cooperativamente operable con uno o más productos de software.
Compatibilidad de los datos La capacidad del producto de software para intercambiar los datos con uno o más sistemas especificados.
Trazabilidad La capacidad del producto software para registrar los eventos operacionales para analizar la causa de la interacción.
Conformidad con la interoperabilidad La capacidad del producto de software para adherirse a los estándares, convenciones o regulaciones en lo relacionado con la interoperabilidad.
4. Fiabilidad La capacidad del producto de software para mantener un nivel específico de funcionamiento cuando se está utilizando bajo condiciones especificadas.
Madurez La capacidad del producto de software para evitar fallas como resultado de errores en el software.
Tolerancia a errores La capacidad del producto de software para mantener un nivel especificado de funcionamiento en caso de errores del software o de incumplimiento de su interfaz especificada.
Recuperabilidad La capacidad del producto de software para restablecer un nivel especificado de funcionamiento y recuperar los datos afectados directamente en el caso de una falla. Algunas veces un producto de software se “caerá” por cierto periodo de tiempo, el lapso de éste periodo es impuesto por la recuperabilidad.
Conformidad con la fiabilidad La capacidad del producto de software para adherirse a las normas, convenciones o regulaciones relativas a la fiabilidad.
5. Usabilidad La capacidad del producto de software de ser entendido, aprendido, usado y atractivo al usuario, cuando es utilizado bajo las condiciones especificadas.
Apropriabilidad (Comprensibilidad) La capacidad del producto de software para permitir al usuario entender si el software es adecuado, y cómo puede ser utilizado para las tareas y las condiciones particulares de la aplicación.
Facilidad de aprendizaje La capacidad del producto de software para permitir al usuario aprender su aplicación. Un aspecto importante a considerar aquí es la documentación del software.
Operabilidad La capacidad del producto de software para permitir al usuario operarlo y controlarlo. Aspectos de adaptación, facilidad de cambio e instalación pueden afectar la operabilidad. Operabilidad corresponde a la conformidad, tolerancia a error y control que concuerdan con las expectativas del usuario.
Capacidad de ayuda (Helpfulness) La capacidad del producto de software para proveer ayuda cuando el usuario necesita asistencia.
Atractibilidad (Likability) La capacidad del producto de software de ser atractivo al usuario. Se refiere a los atributos del software deseados para hacer éste más atractivo al usuario, tales como el uso del color y los diseños gráficos.
Conformidad de uso La capacidad del producto de software para adherirse a los estándares, convenciones, guías de estilo o regulaciones relacionadas con su usabilidad.
6. Eficiencia La capacidad del producto de software para proveer un desempeño adecuado, de acuerdo con la cantidad de recursos utilizados y bajo las condiciones planteadas.
Comportamiento en el tiempo La capacidad del producto de software para proveer tiempos adecuados de respuesta y procesamiento, y ratios de rendimiento cuando realiza su función bajo las condiciones establecidas.
Utilización de recursos La capacidad del producto de software para utilizar cantidades y tipos adecuados de recursos cuando este funciona bajo las condiciones establecidas.
Conformidad con la eficiencia La capacidad del producto de software para adherirse a estándares o convenciones relacionados con la eficiencia.
7. Mantenibilidad Capacidad del producto de software para ser modificado. Las modificaciones pueden incluir correcciones, mejoras o adaptación del software a cambios en el entorno, especificaciones de requerimientos funcionales.
Capacidad de ser analizado La capacidad del producto de software para ser diagnosticado por deficiencias o causas de fallas en el software o la identificación de las partes a ser modificadas.
Facilidad de cambio La capacidad del software para permitir que una determinada modificación sea implementada. La implementación incluye codificación, diseño y documentación de cambios.
Estabilidad La capacidad del producto de software para evitar efectos inesperados debido a modificaciones del software.
Facilidad de prueba La capacidad del software para permitir que las modificaciones sean validadas.
Conformidad con la facilidad de mantenimiento La capacidad del software para adherirse a estándares o convenciones relativas a la facilidad de mantenimiento.
8. Portabilidad La capacidad del software para ser trasladado de un entorno a otro. El entorno puede incluir entornos organizacionales, de hardware o de software.
Adaptabilidad La capacidad del producto software para ser adaptado a diferentes entornos especificados sin aplicar acciones o medios diferentes de los previstos para el propósito del software considerado.
Facilidad de instalación La capacidad del producto de software para ser instalado en un ambiente especificado.
Coexistencia La capacidad del producto de software para coexistir con otros productos de software independientes dentro de un mismo entorno, compartiendo recursos comunes.
Reemplazabilidad La capacidad del producto de software para ser utilizado en lugar de otro producto de software, para el mismo propósito y en el mismo entorno. Por ejemplo, la reemplazabilidad de una nueva versión de un producto de software es importante para el usuario cuando se vaya a actualizar.
Conformidad con la portabilidad La capacidad del software para adherirse a estándares o convenciones relacionados con la portabilidad.
CALIDAD DE USO
Según Piedrahita ( 2007). La calidad en uso del software se refiere a la capacidad del software para alcanzar la calidad en uso para los contextos específicos del uso. Alcanzar la calidad en uso depende de alcanzar la calidad externa necesaria, que alternadamente depende de alcanzar la calidad interna necesaria. Las medidas son normalmente requeridas en los tres niveles; así, resolver los criterios para las medidas internas no son generalmente suficientes para asegurar el logro de los criterios para las medidas externas, y resolver los criterios para las medidas externas de las sub-características no son generalmente lo suficiente para asegurar la realización de los criterios para la calidad en uso.
El modelo de calidad para la calidad del software en uso pasó de tener 4 componentes como se expone en la norma ISO/IEC 9126-1:2001 a tener 6 componentes como se expone en la norma SQuaRE - ISO/IEC CD 25010.
![](https://static.wixstatic.com/media/0fa931_f9a55d60f1aa4468b22d38d12c4128c0~mv2.png/v1/fill/w_888,h_457,al_c,q_90,enc_auto/0fa931_f9a55d60f1aa4468b22d38d12c4128c0~mv2.png)
Figura 3. Modelo de calidad para la calidad del software en uso. Tomado de Piedrahita(2007)
1. Usabilidad en uso La capacidad del producto de software para permitir a usuarios específicos alcanzar metas específicas con eficacia, productividad y satisfacción en contextos específicos del uso.
Eficicacia de uso La capacidad del producto de software para permitir a usuarios alcanzar metas específicas con exactitud y completitud en un contexto específico del uso.
Productividad de uso La capacidad del producto de software para permitir a usuarios consumir cantidades apropiadas de recursos en lo referente a la eficacia alcanzada en un contexto especificado del uso.
Satisfacción de uso La capacidad del producto de software para satisfacer a usuarios en un contexto específico del uso. La satisfacción de uso se subdivide más a fondo en las siguientes subsubcaracterísticas:
• Atractividad (satisfacción cognoscitiva)
• Placer (satisfacción emocional)
• Comodidad (satisfacción física)
Conformidad con la Usabilidad en uso La capacidad del producto de software para adherirse a estándares o convenciones relacionadas con la usabilidad en uso.
2. Contexto de uso La capacidad del producto de software para proveer la usabilidad en uso aceptable en todos los conceptos requeridos del uso.
Tipos de usuario de uso La capacidad del producto de software para proveer la usabilidad de uso aceptable para todos los tipos de usuarios requeridos.
Tareas de uso La capacidad del producto de software para proveer la usabilidad de uso aceptable para todas las tareas requeridas.
Ambientes de uso La capacidad del producto de software para proveer la usabilidad de uso aceptable para todos los ambientes organizacionales, físicos y técnicos requeridos.
Conformidad del contexto en uso La capacidad del producto de software para adherirse a estándares o convenciones relacionadas con el contexto en uso.
3. Seguridad en uso
Riesgo para el operador en uso La capacidad del producto de software para proporcionar niveles de riesgo aceptables del daño al público en contextos previstos del uso.
Riesgo de la corrupción del software en el uso La capacidad del producto de software de suministrar niveles de riesgo aceptables frente a la corrupción del software respecto de los contextos de uso previstos.
Riesgos comerciales del uso La capacidad del producto de software de suministrar niveles de riesgo aceptables frente a una falla que redundaría en daños comerciales o daños en la reputación respecto de los contextos de uso previstos. Nota: Los riesgos generalmente son consecuencia de las deficiencias en la funcionalidad (incluyendo la seguridad), confiabilidad, usabilidad o matenibilidad.
Conformidad del riesgo en uso La capacidad del producto de software para adherirse a estándares o convenciones relacionadas con la seguridad en uso. 2.8.4.5 Seguridad en uso La capacidad del producto de software para proteger la información y los datos de modo que las personas o los sistemas no autorizados no puedan leerlos o modificarlos y que a las personas o los sistemas autorizados no se les niegue el acceso a ellos.
Conformidad con la la seguridad en uso La capacidad del producto de software para adherirse a estándares o convenciones relacionadas con la seguridad en uso.
5. Adaptabilidad de uso
Facilidad de aprendizaje en uso La calidad en uso de los procesos de aprendizaje.
Flexibilidad en uso La capacidad del producto de software para proporcionar software de calidad en uso en el rango más amplio de contextos del uso.
Accesibilidad en uso La capacidad del producto de software para proporcionar software de calidad en uso para gente con el más amplio rango de capacidades.
Conformidad con la adaptabilidad en uso La capacidad del producto de software para adherirse a estándares o convenciones relacionadas con la adaptabilidad en uso.
FAMILIA ISO
La ISO 25000 se encuentra compuesta por cinco divisiones que nos permiten evaluar la calidad del Producto Software desde el punto de vista de desarrollo, de comprador o de evaluador externo. En la siguiente imagen mostramos la familia ISO 25000. De click en cada icono para ampliar la información .
Fuentes:
Comments