Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Enforcing Architecture in Legacy Systems

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

Enforcing Architecture in Legacy Systems

Avatar for Roland Weisleder

Roland Weisleder

June 18, 2026

More Decks by Roland Weisleder

Other Decks in Programming

Transcript

  1. Whoever wishes to build high towers must spend much time

    near the foundation. Anton Bruckner
  2. Compatibility Portability Maintainability Security Performance effiency Reliability Usability Functional suitability

    Evolution Value Chain Genesis Custom Built Product Commodity visible invisible Based on: https://www.innoq.com/en/blog/quality-value-chain-evolution/
  3. Architecture Tests as Guardrails • Make architecture explicit • Prevent

    architectural erosion • Guide continuous change
  4. Enforcing Architecture Stepwise Technical Architecture • Naming conventions • Layered

    architecture • Framework boundaries • Dependency rules Domain Architecture • Module boundaries • Dependency directions • Cycle prevention • Public APIs Cross-Cutting Concerns Security Transaction Auditing Observability
  5. Best Practices in Legacy Systems • Start with the thing

    that causes the most issues • Use freezing if you can’t fix it immediately • Resolve violations stepwise
  6. With ArchUnit, the Leaning Tower of Pisa would not have

    happened. Some AI trying to summarize this talk
  7. Enforcing Architecture in Legacy Systems Code github.com/rweisleder/archunit-spring github.com/rweisleder/archunit-talk-examples github.com/TNG/ArchUnit-Examples Docs

    archunit.org archunitnet.readthedocs.io ts-arch.github.io/ts-arch/ pypi.org/project/PyTestArch/ Slides speakerdeck.com/rweisleder Need help with your Legacy Code? Contact me! [email protected] in/roland-weisleder @rweisleder.de