5 minute read

Métricas para la selección de

Meticas para la selección de la arquitectura y su verificación

En el desarrollo de software, la detección temprana de problemas de arquitectura de software es clave. Ayuda a mitigar el riesgo de un mal rendimiento, y reduce el coste de reparación de éstos problemas. Así que, se mencionaran las métricas de la arquitectura de software para construir proyectos escalables.

Advertisement

Las cuatro métricas clave de Nicole Forsgren, Las cuatro métricas clave de Nicole Forsgren, descritas en el libro descritas en el libro Accelerate Accelerate , y denominadas , y denominadas “Adopt” en el Thoughtworks Radar, diferencian “Adopt” en el Thoughtworks Radar, diferencian entre organizaciones de tecnología de bajo, medio entre organizaciones de tecnología de bajo, medio y alto rendimiento: plazo de entrega, frecuencia de y alto rendimiento: plazo de entrega, frecuencia de despliegue, tiempo medio de restablecimiento despliegue, tiempo medio de restablecimiento (MTTR) y porcentaje de fallo de cambio. De hecho, (MTTR) y porcentaje de fallo de cambio. De hecho, se ha descubierto que estas cuatro métricas clave se ha descubierto que estas cuatro métricas clave son una herramienta sencilla y a la vez poderosa son una herramienta sencilla y a la vez poderosa para ayudar tanto a los líderes como a los equipos para ayudar tanto a los líderes como a los equipos a centrarse en la medición y la mejora de lo que a centrarse en la medición y la mejora de lo que importa. También se utilizan algunas métricas importa. También se utilizan algunas métricas específicas del proyecto relacionadas con el específicas del proyecto relacionadas con el rendimiento. Acoplamiento y Cohesión a través de rendimiento. Acoplamiento y Cohesión a través de los módulos. los módulos.

Métricas desde un punto de vista estructural

– Tamaño del componente (número de declaraciones)

– Acoplamiento de componentes – Cohesión de los componentes

– Complejidad de los componentes (WMC o complejidad media)

o t

n l d e s d e u n p u t a e s t r u c t u r a é t r i c a s d e v i s M

e t n e n o p m o C

Se mide el rendimiento y la clases del componente) y el escalabilidad mediante el uso porcentaje de código que el de funciones automatizadas componente representa en de acondicionamiento físico toda la base de código. continuo que funcionan en la producción. Los que impactan la modularidad y la cohesión También se hace un del sistema. La complejidad seguimiento del acoplamiento del componente de los componentes (entrante, (complejidad ciclomática) es saliente y total), el tamaño del una buena métrica que componente (número de apunta a la sostenibilidad declaraciones en todas las general del código.

Un componente es un objeto de software específicamente diseñado para cumplir con cierto propósito. (Ejemplo, espacio de nombres o un paquete Java.)

Es importante tener una alta cohesión en los módulos, y un bajo acoplamiento en toda la arquitectura. El bajo acoplamiento es muy importante porque disminuye el riesgo de efecto dominó al hacer cambios en el programa. Por lo tanto, el bajo acoplamiento es muy importante para mantener la arquitectura sostenible. La mantenibilidad es la cualidad más importante que muestra un bajo acoplamiento.

Métricas Métricas

Desacoplamiento Desacoplamiento

Otro enfoque muy interesante es, en lugar de medir el acoplamiento, medir el desacoplamiento, es decir, la modularidad de la arquitectura. Una buena modularidad significa fácil mantenimiento y reutilización.

Complejidad Complejidad

Otra métrica muy importante es la complejidad. Afecta a la comprensibilidad de la arquitectura y posiblemente al rendimiento. Puede expresarse por el número de clases en la arquitectura, o el número de enlaces entre clases en la arquitectura.

Métricas Métricas

Propagación del Cambio Propagación del Cambio

La matriz de probabilidades de propagación del cambio entre componentes, para que el arquitecto pueda, de un vistazo, evaluar la dificultad y analizar el costo de las operaciones de mantenimiento. La Propagación del Cambio evalúa la mantenibilidad de una arquitectura basada en la probabilidad de que un cambio en una clase tenga un impacto en

Matriz de probabilidades Matriz de probabilidades

otras clases.

La densidad del patrón de diseño mide el porcentaje de clases en la arquitectura que forman parte de un patrón de diseño. Ayuda al diseñador a evaluar la madurez de una arquitectura. Cuanto más madura es una arquitectura, más patrones de diseño se ponen en ella, y más alta es la densidad del patrón de diseño. Es muy bueno cuando se aplica en marcos, que deben ser muy densos en patrones de diseño. Un marco con alta densidad de patrones es más comprensible y probablemente más eficaz. Esta métrica parece ser bastante difícil de usar ya que no expresa en una escala fija la madurez del diseño, sino más bien en una escala que depende del problema con el que el software trata.

Garantía de Calidad del Software arquitectónico

Otra cosa interesante que hay que mencionar es la técnica de Garantía de Calidad del Software arquitectónico (SQA) para proporcionar una técnica ligera, cuyo objetivo es evaluar la calidad de la arquitectura del software así como priorizar las cosas en las que trabajar. También permite equilibrar los atributos de calidad de la arquitectura. Además, esta técnica necesita tener una arquitectura basada en componentes o en servicios para ser fácil de usar. El siguiente paso es definir un mapeo de las mediciones de calidad a niveles SQA. Dado que la técnica SQA pone énfasis en el equilibrio y la priorización entre las cualidades, es necesario utilizar la misma escala para todas las métricas.

Métricas de SO

Además, hay cuatro métricas específicas de SO para satisfacer las necesidades específicas de un diseño. Cada métrica evalúa respectivamente: Granularidad del servicio, Acoplamiento del servicio, Cohesión del servicio y Convergencia de la entidad comercial.

El modelo propuesto se lleva a cabo en tres pasos:

1) Modelado, identificar los servicios en el proceso de negocio y modelar la estructura de la cartera identificada.

2) Medición, utilizar el modelo para medir las características de calidad de los servicios en la cartera con la ayuda de las correspondientes métricas de diseño.

3) Evaluación: evaluación general de los servicios establecidos mediante la normalización de las métricas y la adición de algunos pesos, que cualquier diseñador puede personalizar para adaptar el modelo a sus necesidades.

This article is from: