</> CodeBooks
    ← Volver a Arquitectura de software (página 1)
    Portada de Balancing Coupling in Software Design

    Balancing Coupling in Software Design

    Vlad Khononov

    Editorial
    Addison Wesley
    Año
    2024
    Páginas
    ~562
    Nivel
    Intermedio

    De qué trata

    Tratado analítico y formal de arquitectura de software escrito por Vlad Khononov (autor de *Learning Domain-Driven Design*) y publicado por Addison-Wesley Professional en 2024, dedicado a estudiar en profundidad el acoplamiento y la modularidad en los sistemas de información. Cuestiona la creencia común de que el acoplamiento debe eliminarse a toda costa, argumentando que se trata de una propiedad natural e imprescindible para que los componentes interactúen, y que el objetivo del arquitecto debe ser equilibrarlo adecuadamente. Está dirigido a ingenieros de software intermedios y avanzados, diseñadores de sistemas y arquitectos que ya dominan paradigmas de programación estructurada u orientada a objetos y desean fundamentos sólidos para tomar decisiones de modularización.

    El libro expone un modelo tridimensional para evaluar el acoplamiento: la fuerza de integración (el nivel de conocimiento compartido entre componentes, desde acoplamientos intrusivos hasta interfaces por contratos), la distancia (la separación física o conceptual entre módulos, desde clases en memoria hasta llamadas de red entre microservicios) y la volatilidad (la frecuencia y probabilidad con la que un componente cambia en el tiempo). Apoyándose en el marco Cynefin para categorizar la complejidad esencial frente a la accidental, el autor revisa y actualiza los principios del diseño estructurado clásico (niveles de acoplamiento de contenido, común, externo, de control, de marca y de datos) y la teoría de la concrescencia (*connascence* estática y dinámica), aplicándolos a microservicios, monolitos modulares y sistemas basados en eventos.

    La última parte del libro examina estudios de casos de arquitectura del mundo real para aplicar el modelo de equilibrio de acoplamiento ante dilemas como la división de servicios, la evolución de contratos en APIs y la reestructuración de dependencias. Su mayor virtud es proporcionar un lenguaje riguroso, cuantitativo y universal para justificar el diseño de límites modulares sin caer en modas tecnológicas ni dogmas superficiales. No incluye ejercicios guiados de código ni tutoriales paso a paso de desarrollo, por lo que su lectura es predominantemente conceptual y analítica, convirtiéndose en un texto fundamental para elevar el criterio de diseño arquitectónico.

    • Acoplamiento de software
    • Modularidad
    • Diseño de sistemas
    • Connascence (Concrescencia)
    • Marco Cynefin
    • Microservicios vs Monolitos
    • Fuerza de integración
    • Volatilidad de componentes
    • Diseño Estructurado
    • Arquitectura de software

    ¿Cómo enseña?

    TeóricoPráctico

    Teórico

    • ✗ Sin ejercicios
    • ✗ Sin proyectos

    Más de Arquitectura de software con nivel Intermedio