Acoplamiento, cohesión y modularidad

El acoplamiento es nivel de interdependencia que existe entre los elementos. Pressman lo define como “…una medida de interconexión entre módulos dentro de una estructura de software. El acoplamiento depende de la complejidad de interconexión entre los módulos, el punto donde se realiza una entrada o referencia a un módulo, y los datos que pasan a través de una interfaz.”

La cohesión es la especificidad de la función que realiza un elemento. Pressman lo define como […]   una extensión natural del concepto de ocultación de información […] Un módulo cohesivo lleva a cabo una sola tarea dentro de un procedimiento de software, lo cual requiere poca interacción con los procedimientos que se llevan a cabo en otras partes de un programa. Dicho de otra manera sencilla, un módulo cohesivo deberá (idealmente) hacer una sola cosa.

Los conceptos de cohesión y acoplamiento forman parte de otro concepto llamado modularidad, el cual tiene como objetivo descomponer el sistema en “módulos” a fin de reutilizarlos en ese sistema u otro.

Fuente: Apuntes de Informática IV de la FCA de la UNAM