Ni los microservicios, ni los patrones, ni la inteligencia artificial garantizan la mantenibilidad de un sistema. La calidad arquitectónica de un sistema depende, sobre todo, de miles de pequeñas decisiones de diseño. Cada clase, cada interfaz, cada responsabilidad asignada y cada dependencia introducida contribuyen silenciosamente a fortalecer o degradar la calidad del software.
En una época marcada por la generación automática de código y las soluciones arquitectónicas superficiales, esta obra aborda el análisis, el diseño y la arquitectura del software como partes inseparables de una misma actividad: la construcción consciente de sistemas robustos, legibles, mantenibles y ampliables.
Con un enfoque riguroso y práctico, el lector aprenderá a definir requisitos, trabajar con casos de uso y modelos del dominio, asignar responsabilidades correctamente y aplicar principios esenciales como la alta cohesión, el bajo acoplamiento, la encapsulación, la delegación, el diseño por contrato y los patrones de diseño y arquitectónicos.
La obra enseña que la arquitectura no sustituye al diseño: es una consecuencia de él. Porque un sistema no se degrada de golpe, sino a través de innumerables decisiones aparentemente pequeñas que, acumuladas, terminan determinando su calidad real.
A lo largo del libro se integran fundamentos teóricos con más de nueve mil líneas de código disponibles en un repositorio público, mostrando cómo las decisiones de análisis, diseño y arquitectura se traducen en implementaciones reales.
Una obra dirigida a estudiantes de ingeniería y profesionales del software que deseen comprender cómo se construyen sistemas de calidad más allá de las modas tecnológicas y las soluciones superficiales.