SlideShare una empresa de Scribd logo
ALTA COHESION
MODULARIDAD
• La modularidad es una propiedad fundamental en el diseño de software
que permite subdividir una aplicación compleja en módulos que son
partes más pequeñas y manejables.
• Los módulos se encargan de una función específica dentro del sistema,
se desarrollan, prueban y mantienen de forma independiente,
facilitando la comprensión y evolución del software.
• Cada uno debe funcionar por sí mismo y no depender demasiado del
resto. Permitiendo su mantenimiento y actualización de forma sencilla y
sin afectar a los demás.
• Aunque puedan realizar conexiones con otros módulos, deben tener
pocas dependencias entre sí. Para que los cambios que se realicen en
un módulo no requieran cambios en otro.
• La modularidad debe seguir los conceptos de acoplamiento y cohesión.
MODULARIDAD
Para la realización de un diseño modular se debe descomponer
el sistema en módulos (clases), y se lo debe valorar en cuanto
al grado de relación entre los elementos de cada módulo
(Cohesion) y al grado de interrelación entre los distintos
módulos (Acoplamiento).
ALTA COHESION
La Alta cohesion es una característica que debe tener una clase,
y se refiere a hacer una sola cosa bien, busca especializar la
clase.
En POO, una clase tendrá alta cohesión si
sus métodos están relacionados entre sí,
tienen un contenido claro, temática común,
trabajan con tipos similares, etc.
Todo bien encerrado dentro de la clase, y
perfectamente delimitado.
ALTA COHESION
• Cada clase del sistema se refiere a una
única entidad - puede describirse con
un único nombre
• Cada método realiza una única tarea -
lo que hace puede describirse con una
única frase
ALTA COHESION
Un módulo con alta cohesión tiene funciones que están fuertemente
relacionadas y enfocadas en una responsabilidad específica.
Sus beneficios incluyen:
• Mayor claridad y fácililidad de entender el codigo, ya que todas sus
partes están relacionadas con un objetivo común.
• Mantenibilidad, es más fácil mantener un módulo con alta cohesión
porque cualquier cambio se relacionará con una única
responsabilidad del módulo.
• Reutilización, los módulos con alta cohesión suelen ser más fáciles
de reutilizar, ya que realizan una tarea específica de manera clara y
enfocada.
• Previene errores en el codigo, los módulos tienden a ser más
robustos porque sus partes están diseñadas para trabajar juntas, lo
que reduce la probabilidad de errores.
Gracias

Más contenido relacionado

PDF
Programación orientada a objetos (POO) [JAVA]
PPTX
Factores internos
PPTX
Nixon torrealbav
PPTX
adqisicion de datos aplicada a laprogramacion visual
PPTX
PPTX
PPTX
Diseño Estructurado
PPTX
conseptos basicos de la poo
Programación orientada a objetos (POO) [JAVA]
Factores internos
Nixon torrealbav
adqisicion de datos aplicada a laprogramacion visual
Diseño Estructurado
conseptos basicos de la poo

Más de Fernando Solis (20)

PDF
fundamentos de programación el arte de programar
PDF
2.5 PROYECTOS DE POO
PDF
24.3.3. Strategy
PDF
TEMPLAT E
PDF
Patrón Singleton
PDF
Tipos de Patrones
PDF
Importancia de los patrones de diseño
PDF
Introduccion-a-los-Patrones-de-Comportamiento.pdf
PDF
Bajo acoplamiento.pdf
PDF
Localización de decisiones de diseño
PDF
Código entendible, flexible y mantenible
PDF
22.5 Dependency Inversion
PDF
Segregación de Interfaces
PDF
Sustitución de Liskov
PDF
Principio Open-Closed Mantilla
PDF
Principio-de-Responsabilidad-Unica-en-Java
PDF
21.7 Integración de componentes gráficos y clases
PDF
21.6 Gestion de Eventos - Componentes y Objetos Gráficos Java
PDF
21.5 Tablas - Componentes y Objetos Gráficos Java
PDF
21.4 Menus en Java
fundamentos de programación el arte de programar
2.5 PROYECTOS DE POO
24.3.3. Strategy
TEMPLAT E
Patrón Singleton
Tipos de Patrones
Importancia de los patrones de diseño
Introduccion-a-los-Patrones-de-Comportamiento.pdf
Bajo acoplamiento.pdf
Localización de decisiones de diseño
Código entendible, flexible y mantenible
22.5 Dependency Inversion
Segregación de Interfaces
Sustitución de Liskov
Principio Open-Closed Mantilla
Principio-de-Responsabilidad-Unica-en-Java
21.7 Integración de componentes gráficos y clases
21.6 Gestion de Eventos - Componentes y Objetos Gráficos Java
21.5 Tablas - Componentes y Objetos Gráficos Java
21.4 Menus en Java
Publicidad

Último (20)

PDF
Esc. Sab. Lección 7. El pan y el agua de vida.pdf
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PDF
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
PDF
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
PPTX
Doctrina 1 Soteriologuia y sus diferente
PDF
TOMO II - LITERATURA.pd plusenmas ultras
PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PPTX
Presentación de la Cetoacidosis diabetica.pptx
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
Aqui No Hay Reglas Hastings-Meyer Ccesa007.pdf
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PDF
Atencion prenatal. Ginecologia y obsetricia
DOCX
PLANES DE área ciencias naturales y aplicadas
PDF
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
PDF
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Ernst Cassirer - Antropologia Filosofica.pdf
DOCX
V UNIDAD - SEGUNDO GRADO. del mes de agosto
PDF
EL aprendizaje adaptativo bajo STEM+H.pdf
Esc. Sab. Lección 7. El pan y el agua de vida.pdf
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
V UNIDAD - PRIMER GRADO. del mes de agosto
Doctrina 1 Soteriologuia y sus diferente
TOMO II - LITERATURA.pd plusenmas ultras
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
Presentación de la Cetoacidosis diabetica.pptx
Escuelas Desarmando una mirada subjetiva a la educación
Aqui No Hay Reglas Hastings-Meyer Ccesa007.pdf
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
Atencion prenatal. Ginecologia y obsetricia
PLANES DE área ciencias naturales y aplicadas
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Ernst Cassirer - Antropologia Filosofica.pdf
V UNIDAD - SEGUNDO GRADO. del mes de agosto
EL aprendizaje adaptativo bajo STEM+H.pdf
Publicidad

MODULARIDAD _AltaCohesion

  • 2. • La modularidad es una propiedad fundamental en el diseño de software que permite subdividir una aplicación compleja en módulos que son partes más pequeñas y manejables. • Los módulos se encargan de una función específica dentro del sistema, se desarrollan, prueban y mantienen de forma independiente, facilitando la comprensión y evolución del software. • Cada uno debe funcionar por sí mismo y no depender demasiado del resto. Permitiendo su mantenimiento y actualización de forma sencilla y sin afectar a los demás. • Aunque puedan realizar conexiones con otros módulos, deben tener pocas dependencias entre sí. Para que los cambios que se realicen en un módulo no requieran cambios en otro. • La modularidad debe seguir los conceptos de acoplamiento y cohesión. MODULARIDAD
  • 3. Para la realización de un diseño modular se debe descomponer el sistema en módulos (clases), y se lo debe valorar en cuanto al grado de relación entre los elementos de cada módulo (Cohesion) y al grado de interrelación entre los distintos módulos (Acoplamiento). ALTA COHESION La Alta cohesion es una característica que debe tener una clase, y se refiere a hacer una sola cosa bien, busca especializar la clase.
  • 4. En POO, una clase tendrá alta cohesión si sus métodos están relacionados entre sí, tienen un contenido claro, temática común, trabajan con tipos similares, etc. Todo bien encerrado dentro de la clase, y perfectamente delimitado. ALTA COHESION • Cada clase del sistema se refiere a una única entidad - puede describirse con un único nombre • Cada método realiza una única tarea - lo que hace puede describirse con una única frase
  • 5. ALTA COHESION Un módulo con alta cohesión tiene funciones que están fuertemente relacionadas y enfocadas en una responsabilidad específica. Sus beneficios incluyen: • Mayor claridad y fácililidad de entender el codigo, ya que todas sus partes están relacionadas con un objetivo común. • Mantenibilidad, es más fácil mantener un módulo con alta cohesión porque cualquier cambio se relacionará con una única responsabilidad del módulo. • Reutilización, los módulos con alta cohesión suelen ser más fáciles de reutilizar, ya que realizan una tarea específica de manera clara y enfocada. • Previene errores en el codigo, los módulos tienden a ser más robustos porque sus partes están diseñadas para trabajar juntas, lo que reduce la probabilidad de errores.