Medidas para el Diseño :
La cohesión y el acoplamiento son dos medidas que permiten evaluar la calidad de la partición de los módulos y , por lo tanto , ayudan a refinar el diseño .
Un buen diseño se caracteriza por un acoplamiento bajo , es decir , poca interdependencia entre módulos , y una cohesión alta , significando que los elementos que componen un módulo están muy relacionados .
Estas cualidades permiten reducir los errores y mejorar la comprensión del diseño , facilitando , por lo tanto , la tarea de mantener el software .
Mejorar la cohesión : Para asegurar que las funciones del software reflejen las originales y así facilitar la comprensión .
� Partir módulos que realicen actividades poco relacionadas entre sí . � Asignar a los módulos tareas de control o de trabajo .
Mejorar el acoplamiento : Para reducir la posibilidad de transmisión de errores ( efecto ripple ) entre módulos .
� Eliminar relaciones innecesarias . � Reducir el número de relaciones . � Facilitar la claridad de las relaciones .
Heurísticas para el Diseño :
� Factorizar : Separar la funcionalidad de un módulo en varios módulos . o Reducir el tamaño de los módulos . o Minimizar la duplicidad de código . o Proporcionar módulos de uso general . o Mejorar la cohesión .
� Formar estructuras reconocibles : Tender hacia estructuras con formas básicas ( p . e ., entrada , transformación y salida ) o estructuras inspiradas en las propias estructuras de datos .
�
�
�
Inicialización y terminación : Iniciar y terminar cada función en el momento preciso ( evitar funciones de inicializar y terminar todo ). Compromiso entre restrictividad y generalidad : Los módulos muy restrictivos son difíciles de reusar . Los módulos muy generales son muy complejos y poco eficientes . Reducir el número de subordinados : Un módulo que posea más de siete módulos subordinados dificulta su comprensión .