miércoles, 8 de abril de 2020

NORMAS ISO 25000


NORMAS ISO 25000
·         DEFINICION
La Organización Internacional de Normalización, también llamada Organización Internacional de Estandarización (originalmente en inglés: International Organization for Standardization, conocida por la abreviación ISO)

La Organización Internacional de Normalización (ISO) es una organización independiente y no-gubernamental formada por las organizaciones de normalización de sus 164 países miembros. Es el mayor desarrollador mundial de estándares internacionales voluntarios y facilita el comercio mundial al proporcionar estándares comunes entre países. Se han establecido cerca de veinte mil estándares cubriendo desde productos manufacturados y tecnología a seguridad alimenticia, agricultura y sanidad.
Normalización /Estandarización) es el proceso de elaborar, aplicar y mejorar las normas que se emplean en distintas actividades científicas, industriales o económicas, con el fin de ordenarlas y mejorarlas.

Según la ISO (International Organization for Standardization), la normalización es la actividad que tiene por objeto establecer, ante problemas reales o potenciales, disposiciones destinadas a usos comunes y repetidos, con el fin de obtener un nivel de ordenamiento óptimo en un contexto dado, que puede ser tecnológico, político o económico.

·         GENERALIDADES
El objetivo general de la creación del estándar ISO/IEC 25000 SQuaRE (System and Software Quality Requirements and Evaluation) 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.

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.
La familia ISO/IEC 25000 es el resultado de la evolución de otras normas anteriores, especialmente de las normas ISO/IEC 9126, que describe las particularidades de un modelo de calidad del producto software, e ISO/IEC 14598, que abordaba el proceso de evaluación de productos software.

Las características de calidad y sus mediciones asociadas pueden ser útiles no solamente para evaluar el producto software sino también para definir los requerimientos de calidad.La serie ISO/IEC 25000:2005 reemplaza a dos estándares relacionados: ISO/IEC 9126 (Software Product Quality) e ISO/IEC 14598 (Software Product Evaluation).

·         CARACTERISITCAS
ISO/IEC 25000. Proporciona una guía para el uso de las nuevas series de estándares internacionales llamados Requisitos y Evaluación de Calidad de Productos Software (SQuaRE).

 La norma ISO/IEC 25000 establece criterios para la especificación de requisitos de calidad de productos software, sus métricas y su evaluación, e incluye un modelo de calidad para unificar las definiciones de calidad de los clientes con los atributos en el proceso de desarrollo.

FUNCIONALIDAD: Representa la capacidad del producto software para proporcionar funciones que satisfacen las necesidades declaradas e implícitas, cuando el producto se usa en las condiciones especificadas.
FIABILIDAD: Capacidad de un sistema o componente para desempeñar las funciones especificadas, cuando se usa bajo unas condiciones y periodo de tiempo determinados.
USABILIDAD: Capacidad del producto software para ser entendido, aprendido, usado y resultar atractivo para el usuario, cuando se usa bajo determinadas condiciones.
EFICIENCIA: Esta característica representa el desempeño relativo a la cantidad de recursos utilizados bajo determinadas condiciones.
MANTENIBILIDAD: Esta característica representa la capacidad del producto software para ser modificado efectiva y eficientemente, debido a necesidades evolutivas, correctivas o perfectivas.
PORTABILIDAD: Capacidad del producto o componente de ser transferido de forma efectiva y eficiente de un entorno hardware, software, operacional o de utilización a otro.
 




 ·         CRITERIOS DE EVALUACIÓN
Dentro de la ISO 25000 está la ISO/IEC 25040 define el proceso para llevar a cabo la evaluación del producto software. Dicho proceso de evaluación consta de un total de cinco actividades.
1.     Establecer requisitos de evaluación: En esta tarea se documenta el propósito por el que la organización quiere evaluar la calidad de su producto software y se identifican las partes interesadas en el producto.
2.    Especificar evaluación: Se especifican los módulos de evaluación (compuestos por las métricas, herramientas y técnicas de medición) y los criterios de decisión que se aplicarán en la evaluación.
3.    Diseñar evaluación: Se deben planificar las actividades de la evaluación teniendo en cuenta la disponibilidad de los recursos, tanto humanos como materiales, que puedan ser necesarios. En la planificación se debe tener en cuenta el presupuesto, los métodos de evaluación y estándares adaptados, las herramientas de evaluación, etc.
4.    Ejecutar evaluación: Se deben realizar las mediciones sobre el producto software y sus componentes para obtener los valores de las métricas seleccionadas e indicadas en el plan de evaluación. Todos los resultados obtenidos deberán ser debidamente registrados.
5.    Concluir evaluación: En esta actividad se concluye la evaluación de la calidad del producto software, realizando el informe de resultados que se entregará al cliente y revisando con éste los resultados obtenidos.
Al igual que la norma ISO/IEC 9126, este estándar define tres vistas diferenciadas en el estudio de la calidad de un producto:

Vista interna: esta vista se ocupa de las propiedades del software como: el tamaño, la complejidad o la conformidad con las normas de orientación a objetos.

Vista externa: vista que analiza el comportamiento del software en producción y estudia sus atributos, por ejemplo: el rendimiento de un software en una máquina determinada, el uso de memoria de un programa o el tiempo de funcionamiento entre fallos.

Vista en uso: mide la productividad y efectividad del usuario final al utilizar el software.

·         PROCESO DE EVALUACIÓN / MÉTRICAS ISO/IEC 25040
ISO/IEC 25040 define el proceso para llevar a cabo la evaluación del producto software. Dicho proceso de evaluación consta de un total de cinco actividades.


Actividad 1: Establecer los requisitos de la evaluación
El primer paso del proceso de evaluación consiste en establecer los requisitos de la evaluación.
Tarea 1.1: Establecer el propósito de la evaluación
En esta tarea se documenta el propósito por el que la organización quiere evaluar la calidad de su producto software (asegurar la calidad del producto, decidir si se acepta un producto, determinar la viabilidad del proyecto en desarrollo, comparar la calidad del producto con productos de la competencia, etc.).
Tarea 1.2: Obtener los requisitos de calidad del producto
En esta tarea se identifican las partes interesadas en el producto software (desarrolladores, posibles adquirientes, usuarios, proveedores, etc.) y se especifican los requisitos de calidad del producto utilizando un determinado modelo de calidad.
Tarea 1.3: Identificar las partes del producto que se deben evaluar
Se deben identificar y documentar las partes del producto software incluidas en la evaluación. El tipo de producto a evaluar (especificación de requisitos, diagramas de diseño, documentación de las pruebas, etc.) depende de la fase en el ciclo de vida en que se realiza la evaluación y del propósito de ésta.
Tarea 1.4: Definir el rigor de la evaluación
Se debe definir el rigor de la evaluación en función del propósito y el uso previsto del producto software, basándose, por ejemplo, en aspectos como el riesgo para la seguridad, el riesgo económico o el riesgo ambiental. En función del rigor se podrá establecer qué técnicas se aplican y qué resultados se esperan de la evaluación.
Actividad 2: Especificar la evaluación
En esta actividad se especifican los módulos de evaluación (compuestos por las métricas, herramientas y técnicas de medición) y los criterios de decisión que se aplicarán en la evaluación.
Tarea 2.1: Seleccionar los módulos de evaluación
En esta tarea el evaluador selecciona las métricas de calidad, técnicas y herramientas (módulos de evaluación) que cubran todos los requisitos de la evaluación. Dichas métricas deben permitir que, en función de su valor, se puedan realizar comparaciones fiables con criterios que permitan tomar decisiones. Para ello se puede tener en cuenta la Norma ISO/IEC 25020.
Tarea 2.2: Definir los criterios de decisión para las métricas
Se deben definir los criterios de decisión para las métricas seleccionadas. Dichos criterios son umbrales numéricos que se pueden relacionar con los requisitos de calidad y posteriormente con los criterios de evaluación para decidir la calidad del producto. Estos umbrales se pueden establecer a partir de benchmarks, límites de control estadísticos, datos históricos, requisitos del cliente, etc.
Tarea 2.3: Definir los criterios de decisión de la evaluación
Se deben definir criterios para las diferentes características evaluadas a partir de las subcaracterísticas y métricas de calidad. Estos resultados a mayor nivel de abstracción permiten realizar la valoración de la calidad del producto software de forma general.

Actividad 3: Diseñar la evaluación
En esta actividad se define el plan con las actividades de evaluación que se deben realizar.
Tarea 3.1: Planificar las actividades de la evaluación
Se deben planificar las actividades de la evaluación teniendo en cuenta la disponibilidad de los recursos, tanto humanos como materiales, que puedan ser necesarios. En la planificación se debe tener en cuenta el presupuesto, los métodos de evaluación y estándares adaptados, las herramientas de evaluación, etc.
El plan de evaluación se revisará y actualizará proporcionando información adicional según sea necesario durante el proceso de evaluación.

Actividad 4: Ejecutar la evaluación
En esta actividad se ejecutan las actividades de evaluación obteniendo las métricas de calidad y aplicando los criterios de evaluación.
Tarea 4.1: Realizar las mediciones
Se deben realizar las mediciones sobre el producto software y sus componentes para obtener los valores de las métricas seleccionadas e indicadas en el plan de evaluación. Todos los resultados obtenidos deberán ser debidamente registrados.
Tarea 4.2: Aplicar los criterios de decisión para las métricas
Se aplican los criterios de decisión para las métricas seleccionadas sobre los valores obtenidos en la medición del producto.
Tarea 4.3: Aplicar los criterios de decisión de la evaluación
En esta última tarea se deben aplicar los criterios de decisión a nivel de características y subcaracterísticas de calidad, produciendo como resultado la valoración del grado en que el producto software cumple los requisitos de calidad establecidos.

Actividad 5: Concluir la evaluación
En esta actividad se concluye la evaluación de la calidad del producto software, realizando el informe de resultados que se entregará al cliente y revisando con éste los resultados obtenidos.
Tarea 5.1: Revisar los resultados de la evaluación
Mediante esta tarea, el evaluador y el cliente de la evaluación (en caso de existir) realizan una revisión conjunta de los resultados obtenidos, con el objetivo de realizar una mejor interpretación de la evaluación y una mejor detección de errores.
Tarea 5.2: Crear el informe de evaluación
Una vez revisados los resultados, se elabora el informe de evaluación, con los requisitos de la evaluación, los resultados, las limitaciones y restricciones, el personal evaluador, etc.
Tarea 5.3: Revisar la calidad de la evaluación y obtener feedback
El evaluador revisará los resultados de la evaluación y la validez del proceso de evaluación, de los indicadores y de las métricas aplicadas. El feedback de la revisión debe servir para mejorar el proceso de evaluación de la organización y las técnicas de evaluación utilizadas.
Tarea 5.4: Tratar los datos de la evaluación
Una vez finalizada la evaluación, el evaluador debe realizar el adecuado tratamiento con los datos y los objetos de la evaluación según lo acordado con el cliente (en caso de ser una tercera parte), devolviéndolos, archivándolos o eliminándolos según corresponda.

VENTAJAS
Para la organización:
        Alinea los objetivos del software con las necesidades reales que se le demandan.
        Evitando ineficiencias y maximizando la rentabilidad y calidad del producto de software. Por otro lado, certificar el software aumenta la satisfacción del cliente y mejora la imagen de la empresa.
        Cumplir los requisitos contractuales y demostrar a los clientes que la calidad del software es primordial.
        El proceso de evaluaciones periódicas ayuda a supervisar continuamente el rendimiento y la mejora.
Para los clientes:
        Al demostrar el compromiso de la organización con la calidad del software.
Sectores de aplicación
        Va dirigido a las empresas de software, independiente de su tamaño o volumen. Del mismo modo que a las empresas que de forma interna crean sus propias herramientas de software para desarrollar su negocio.

DESVENTAJAS
El soporte prestado a las empresas no concuerda con el modelo de evaluación de la ISO/IEC 25000
·         Requiere de un cambio en toda la organización
·         Inversión en recursos humanos y equipamiento
·         Altera la línea de crecimiento y aprendizaje de una organización nueva
DIVISIÓN DE CALIDAD




SQuaRE está formada por las divisiones siguientes:
ISO/IEC 2500n. División de gestión de calidad. Los estándares que forman esta división definen todos los modelos comunes, términos y referencias a los que se alude en las demás divisiones de SQuaRE.

ISO/IEC 2501n. División del modelo de calidad. El estándar que conforma esta división presenta un modelo de calidad detallado, incluyendo características para la calidad interna, externa y en uso.

ISO/IEC 2502n. División de mediciones de calidad. Los estándares pertenecientes a esta división incluyen un modelo de referencia de calidad del producto software, definiciones matemáticas de las métricas de calidad y una guía práctica para su aplicación. Presenta aplicaciones de métricas para la calidad de software interna, externa y en uso.

ISO/IEC 2503n. División de requisitos de calidad. Los estándares que forman parte de esta división ayudan a especificar los requisitos de calidad. Estos requisitos pueden ser usados en el proceso de especificación de requisitos de calidad para un producto software que va a ser desarrollado ó como entrada para un proceso de evaluación. El proceso de definición de requisitos se guía por el establecido en la norma ISO/IEC 15288 (ISO, 2003). 

ISO/IEC 2504n. División de evaluación de la calidad. Estos estándares proporcionan requisitos, recomendaciones y guías para la evaluación de un producto software, tanto si la llevan a cabo evaluadores, como clientes o desarrolladores.

ISO/IEC 25050–25099. Estándares de extensión SQuaRE. Incluyen requisitos para la calidad de productos de software “Off-The-Self” y para el formato común de la industria (CIF) para informes de usabilidad.


Si desean profundizar un poco mas sobre la Norma ISO 25000 y otros modelos para evaluar la calidad del software, les compartimos el siguiente video:


WEBGRAFIA:


ISO25000 Calidad de software y datos:

Características de la familia ISO/IEC 25000:

Criterios de evaluación de productos:

ISO 25000: La calidad del producto software:

EcuRed ISO/IEC 25000:

ISO 25000 IS3:

Norma ISO 25000 & Modelos para evaluar la calidad del software