T.C. & A.M
T.C. & A.M
T.C. & A.M
COHESION (T.C.)
La cohesin tiene que ver con la forma en la que agrupamos unidades de software en
una unidad mayor. Por ejemplo, la forma en la que agrupamos funciones en una
librera, o la forma en la que agrupamos mtodos en una clase, o la forma en la que
agrupamos clases en una librera, etc. Se suele decir que cuanto ms cohesionados
estn los elementos agrupados, mejor.
La cohesin no tiene tanto impacto sobre la modularidad como el acoplamiento. Es
decir, un gran acoplamiento puede ser muy malo a la hora de corregir errores,
integrar partes, hacer mantenimientos... Sin embargo, una cohesin baja puede ser
incmoda, pero no suele plantear grandes problemas. Aunque esto, no es motivo
para descuidarla. Un componente es cohesivo si todos sus elementos estn
orientados a la realizacin de una nica tarea y son esenciales para llevarla a cabo
TIPOS DE COHESIN:
Cohesin Coinciden tal:
Ocurre cuando las partes de un componente no tienen relacin alguna entre s.
(Cohesin baja). Por Ejemplo las partes de este bloque no tienen relacin entre s.
A
B
C
D
Cohesin Lgica
Algunas funciones o elementos de datos relacionados lgicamente estn puestos en
el mismo componente. Ej: Componente que lee todo tipo de entradas (cinta, disco,
puertos, etc.) existe una relacin lgica, pero no todas las formas son iguales.
A
A
A
Cohesin Temporal:
A veces un componente se utiliza para inicializar un sistema o un conjunto de
variables. Este componente realiza varias funciones en secuencia, pero las funciones
en si solo se realizan en el momento que ocurren.
Tiempo V1
Tiempo V1 x 2x
Tiempo V1 x 5x
Cohesin Procedimental:
Es cuando las funciones se agrupan en un mismo componente para asegurar un
orden previsto.
Por Ejemplo: los datos deben ser ingresados antes de chequearlos o de manipularlos,
tres funciones en una secuencia especfica.
Ejecucin N1
Ejecucin N2
Ejecucin N3
Cohesin Comunicacional:
Es cuando en un componente se asocia funciones que acceden a un mismo conjunto
de datos.
DATOS
A
B
C
Cohesin Secuencial:
Se produce cuando la salida por una parte del componente acta como entrada para
la parte que le sigue.
A
B
C
Cohesin funcional (deseable):
Es la ideal, donde cada elemento de proceso es esencial para la realizacin de una
nica funcin y todos los elementos esenciales estn contenidos en un nico
componente.
1era Parte Funcin
A1
2da Parte Funcin A1
3era Parte Funcin
A1
TIPOS DE ACOPLAMIENTO:
Acoplamiento de contenido:
Es cuando un componente modifica a otro. Entonces el componente modificado es
completamente dependiente del que lo modifica.
Situaciones en las que se da:
Un mdulo modifica algn elemento de otro modulo.
Un mdulo modifica una variable local a otro.
Desde un mdulo se pasa a otro por puntos distintos de los de la entrada (Ej.:
GOTO).
Acoplamiento comn:
Los datos son accesibles desde un almacenamiento comn de datos.
La dependencia todava existe, dado que hacer un cambio a los datos comunes
significa rastrear en todos los componentes que tienen acceso a estos datos, a fin de
evaluar el efecto del cambio.
Acoplamiento de Control:
Se produce cuando un componente pasa parmetros para controlar la actividad del
otro.
Para el componente controlado es imposible funcionar sin la direccin del que lo
controla.
Acoplamiento por estampado:
Se produce cuando se usa una estructura de datos para pasar informacin de un
componente a otro, y es la estructura misma la que se pasa.
Acoplamiento por Datos (deseable):
Es el ms simple, es solo el paso de datos a otro componente.
Lo aceptable para un buen diseo es poseer un acoplamiento dbil (lo ideal es bajo).