- Acoplamiento informático
-
El acoplamiento, junto con la modularidad, la cohesión y otros factores, permiten mejorar la programación y el diseño de sistemas informáticos y aplicaciones, y son muy importantes en el incremento de la reutilización de los códigos.
Definición
El acoplamiento informático indica el nivel de dependencia entre las unidades de software de un sistema informático, es decir, el grado en que una unidad puede funcionar sin recurrir a otras; dos funciones son absolutamente independientes entre sí (el nivel más bajo de acoplamiento) cuando una puede hacer su trabajo completamente sin recurrir a la otra. En este caso se dice que ambas están desacopladas.
Un ejemplo simple de acoplamiento es cuando un componente accede directamente a un dato que pertenece a otro componente. En ese caso, el resultado del comportamiento del componente A dependerá del valor del componente B, por lo tanto, están acoplados.
Bajo acoplamiento
El bajo acoplamiento entre las unidades de software es el estado ideal que siempre se intenta obtener para lograr una buena programación o un buen diseño. Cuanto menos dependiente sean las partes que constituyen un sistema informático, mejor será el resultado. Sin embargo, es imposible un desacoplamiento total de las unidades.
Por ello, el objetivo final del diseño de software es reducir al máximo el acoplamiento entre componentes. Para ello, lo más importante es saber eliminar el acoplamiento que no sea funcional o arquitectónico.
El caso del acoplamiento funcional, puede ser por ejemplo que un componente de cálculo de probabilidades dependa de un componente de cálculo matemático básico, ya que para calcular probabilidades será necesario aplicar fórmulas matemáticas.
El bajo acoplamiento permite:
- Mejorar la mantenibilidad de las unidades de software.
- Aumentar la reutilización de las unidades de software.
- Evitar el efecto onda, ya que un defecto en una unidad puede propagarse a otras, haciendo incluso más difícil de detectar dónde está el problema.
- Minimiza el riesgo de tener que cambiar múltiples unidades de software cuando se debe alterar una.
Tipos de acoplamiento
- Acoplamiento normal: una unidad de software llama a otra de un nivel inferior y tan solo intercambian datos (por ejemplo: parámetros de entrada / salida). Dentro de este tipo de acoplamiento podemos encontrarnos 3 subtipos, dependiendo de los datos que intercambien las unidades de software. Para más información ver Acoplamiento normal.
- Acoplamiento externo: las unidades de software están ligadas a componentes externos, como por ejemplo dispositivos de entrada / salida, protocolos de comunicaciones, etc.
- Acoplamiento común: dos unidades de software acceden a un mismo recurso común, generalmente memoria compartida, una variable global o un fichero.
- Acoplamiento de contenido: ocurre cuando una unidad de software necesita acceder a una parte de otra unidad de software.
Wikimedia foundation. 2010.