Criterios de evaluación y métricas de evaluación.
ISO 25000.
Las 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. Esta familia de normas ISO/IEC 25000 se encuentra compuesta por cinco divisiones.
Existen dos tipos de métricas:
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. Esta familia de normas ISO/IEC 25000 se encuentra compuesta por cinco divisiones.
CRITERIOS DE EVALUACIÓN.
ISO/IEC 25040 define el proceso para llevar a cabo la evaluación del producto software. Dichos criterio de evaluación consta de un total de cinco actividades.
Establecer los requisitos de la evaluación.
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.).
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.
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.
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.
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.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.
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.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.Diseñar la evaluación.
En esta actividad se define el plan con las actividades de evaluación que se deben realizar.
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.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.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.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.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.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.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.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.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.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.
Métricas.
- Las métricas orientadas al
tamaño y
- Las métricas orientadas a la función.
- Las métricas orientadas a la función.
- Las métricas orientadas al tamaño su objetivo es medir el tamaño (LCD) y las orientadas a la función (PF). Puntos de función, cuyo objetivo es medir la funcionalidad del software.
- Las métrica de lineas de códigos consiste en medir cuantas líneas de códigos posee nuestro sistema software, esta medida es directa y se puede realizar utilizando cualquier tipo de herramienta que posee en forma nativa los freeware de desarrollo del software para realizar la medición, el objetivo es que conforme vamos participando en proyectos y vamos completándolo deberíamos generar un histórico en información asociado a cada proyecto, en la tabla de podemos ver dos tipos de proyectos, el cual nos indica las líneas de código, el esfuerzo (horas mes), el coste económico, número de páginas (doc), numero de errores detectados, defectos detectados y número de personas.
Una vez tengamos este histórico podemos medir métricas que son de gran utilidad, ejemplo, número de errores por línea
código, numero de defectos detectados por el cliente por línea de código o el coste
económico de cada línea de código, esto sirve para realizar una comparación de
los distintos tipos de proyectos y valorar la rentabilidad o la productividad adquirida en cada proyecto de software.
Pero a pesar que que este tipo de métrica
es muy sencilla posee dos desventajas, depende del lenguaje de
programación, ya que existen algunos lenguajes que son más expresivos que otros
y algunos nos permiten implementar cierta funcionalidad, unos lenguaje permite
implementarse con una menor línea de códigos que con respecto a otro, esta
diferencia es penalizada y es tenida en cuenta por las líneas de código y afecta al cálculo.
Por otro lado, la línea de código
no es justa con aquellos programadores que son eficientes a la hora de programar,
ya que algunos pueden hacerlo con una menor línea de códigos que otros.
Para intentar superar estos
inconvenientes existe una segunda alternativa que son las métricas orientadas a
función, estas métricas lo que pretenden es medir funcionalidad del software lo
cual es independiente a la tecnología que se haya utilizado para desarrollar el
proyecto, un ejemplo de este tipo de métrica consiste en los puntos de función,
los puntos de función es una medida directa donde vamos a poder medir
directamente sobre el código, y se centra en medir la funcionalidad de nuestra
aplicación software.
El cálculo de los puntos de función viene determinado por la anterior fórmula.
En esta fórmula existen dos
componentes, cuenta total y códigos de ajustes, la cuenta total se ajuste mediante la siguiente fórmula:
En esta fórmula existen dos distintos componentes cuenta total y factores de ajustes. El cálculo de cuenta total consiste en analizar nuestra aplicación software e identificar cinco tipos de valores de dominio estos tipos de valores son entradas de usuario, salidas de usuarios, peticiones del usuario, archivos e interfaces externas.
las entradas representan las entradas de información que el usuario proporciona a la aplicación, las salidas de usuarios representan aquellas peticiones y salidas interacción que ha tenido el usuario con la aplicación los archivos hacen referencia a aquellas bases de datos o a aquellos recursos de información que necesita nuestra aplicación para funcionar y ejecutarse correctamente y el quinto valor que son las interfaces externas que representa aquellas interfaces de comunicación que nuestra aplicación mantiene con otras aplicaciones o con otro módulos externos el objetivo es que debemos para cada uno de estos valores de dominio identificar cuanto resiste en números y para cada uno de estos se les ponderará por un factor de ponderación existen tres tipos de factores de ponderación según el grado de complejidad: un grado simple, otro medio y el complejo, si asumimos que nuestra aplicación tiene una complejidad media por ejemplo entradas de usuarios el valor sería multiplicado por cuatro, salidas por cinco, peticiones de usuario por cuatro y así consecutivamente, el objetivo es que cada uno de estos valores sea multiplicado por valor de ponderación, se obtiene un valor por cada valor de dominio y se suma
y se obtiene un valor de conteo total, con esto tendríamos el primer componente de la fórmula.
En esta fórmula existen dos distintos componentes cuenta total y factores de ajustes. El cálculo de cuenta total consiste en analizar nuestra aplicación software e identificar cinco tipos de valores de dominio estos tipos de valores son entradas de usuario, salidas de usuarios, peticiones del usuario, archivos e interfaces externas.
las entradas representan las entradas de información que el usuario proporciona a la aplicación, las salidas de usuarios representan aquellas peticiones y salidas interacción que ha tenido el usuario con la aplicación los archivos hacen referencia a aquellas bases de datos o a aquellos recursos de información que necesita nuestra aplicación para funcionar y ejecutarse correctamente y el quinto valor que son las interfaces externas que representa aquellas interfaces de comunicación que nuestra aplicación mantiene con otras aplicaciones o con otro módulos externos el objetivo es que debemos para cada uno de estos valores de dominio identificar cuanto resiste en números y para cada uno de estos se les ponderará por un factor de ponderación existen tres tipos de factores de ponderación según el grado de complejidad: un grado simple, otro medio y el complejo, si asumimos que nuestra aplicación tiene una complejidad media por ejemplo entradas de usuarios el valor sería multiplicado por cuatro, salidas por cinco, peticiones de usuario por cuatro y así consecutivamente, el objetivo es que cada uno de estos valores sea multiplicado por valor de ponderación, se obtiene un valor por cada valor de dominio y se suma
y se obtiene un valor de conteo total, con esto tendríamos el primer componente de la fórmula.
El cálculo de factores de ajuste
consiste en evaluar quince distintos tipos de valores, los cuales valoran la
complejidad y otros aspectos del sistema software, el objetivo es evaluar cada
uno de estos valores y asignarle un valor entre cero y cinco, siendo cero la de menor valor (poca
influencia) y cinco la de mayor valor (valor esencial).
A continuación tenemos el ejemplo de una aplicación software de la seguridad de una vivienda.
Para más detalles podemos apoyarnos en el vídeo de que fue extraída esta información.
Web-grafía.
No hay comentarios:
Publicar un comentario