Tecnología

Inicio

Importancia de la cohesión y acoplamiento en Diseño de Software

Cohesión y acoplamiento tanto medir la relación entre los elementos de software de ordenador. medidas de cohesión cómo los componentes de un módulo de software o una clase de objetos de software se relacionan entre sí. medidas de acoplamiento de la relación entre las clases y módulos separados. Una buena programación aumenta la cohesión y disminuye la cantidad de acoplamiento.

Cohesión

Una clase o módulo tiene alta cohesión si todas las responsabilidades, los datos y los métodos que incluye están estrechamente relacionados. Si un módulo de proyecto-programación incluye únicamente los procedimientos o funciones relacionadas con la programación, es altamente cohesivo; si también incluye organigramas y una base de datos de clientes, es menos cohesivo. Para medir la cohesión, calcular el número de campos compartidos que los métodos de subrutinas - - en una clase tienen que acceder y compararlo con el número de campos no relacionados que utilizan. Cuanto mayor es el número de campos comunes, mayor es la cohesión.

Significado

Si un módulo tiene que manejar múltiples operaciones - la seguridad, la infraestructura, las reglas de red - se hace más difícil de trabajar que si todo en el módulo se centra en un solo propósito. Con un modelo de baja cohesión, es posible que tenga que hacer varios cambios que no tienen porque cada parte necesita una solución o parche diferente. Por el contrario, si las funciones relacionadas se dividen en varios archivos en lugar de un solo archivos cohesivos, es posible que tenga que hacer repetidos cambios idénticos en cada archivo en lugar de una única solución en un solo archivo.

Acoplamiento

Cuando el diseño de su software utiliza acoplamiento fuerte entre las clases o subsistemas, que significa que están interconectados: Un sistema no puede llevar a cabo su trabajo sin conocer detalles sobre lo que está haciendo el sistema B, y un cambio a B significa A tiene que cambiar también . Con el acoplamiento débil, se puede cambiar el sistema A con mayor facilidad. También es más difícil de estudiar el código de A si no se puede entender sin analizar el código para B y su relación.

Eficiencia

acoplamiento de baja hace que la codificación más eficiente porque se puede reutilizar más código: Si Sistema A y Sistema B no son interdependientes, puede copiar el código de uno de ellos en otro programa sin dificultad. El software que incluye codificación duplicada para funciones duplicadas es otro signo de ineficiencia. Usted es a menudo mejor si vuelve a escribir el programa para eliminar funciones duplicadas, a continuación, asignar la función a su propio módulo de cohesión. Cuanto menor sea el nivel de acoplamiento, los dichos cambios radicales más fácil convertirse.