Get a practical overview of Spring Modulith. This is a modern approach to structuring applications in a modular way without having to deal with the complexity of distributed architecture approaches.
Microservices are often considered the ideal solution for modularization – but they come with significant technical and organizational challenges. Moduliths offer a pragmatic alternative: a modular monolith that clearly structures technical aspects and remains maintainable in the long term.
We apply the concepts in practice using an example application. We discuss how dependencies can be controlled, architecture rules can be checked automatically, documentation can be generated, and existing systems can be modernized step by step.
Agenda
Basics
- Motivation & Classification
- Modularity Comparison: Modulith vs. Microservices
- Evolutionary Architecture
- Project Setup & Module Definition
- Package Structures & Module Detection
- Simple, Advanced, Nested, Open Modules
- Named Interfaces
- Custom Module Detection
Non-Runtime Support
- Architecture Checking
- Dependency Rules & Architecture Tests
- ArchUnit Integration
- Customizing Verification Options
- Fundamentals of Module Testing
- Application Module Testing Support
- Handling dependencies
- Bootstrap modes
- Change-aware test execution
- Documentation
- Modulith diagrams (C4, UML)
- Application module canvas
Runtime support
- Communication between modules
- Domain events – synchronous & asynchronous
- Event publication registry (persistence, repetition, completion modes)
- Staleness checks
- Impact on integration tests
- Scenario API for event-driven integration tests
- PublishedEvents & AssertablePublishedEvents
- Passage of Time Events with Moments API
- Integration into the development process
- CI/CD & Fitness Functions
- Runtime Support: ApplicationModuleInitializer
- Production-Ready Features:
- Modulith Actuator Endpoint /actuator/modulith - Observability (Micrometer, tracing with OpenTelemetry, Zipkin, etc.)
- Module-specific Flyway migrations
- Configurable Modulith properties (e.g., staleness checks)
Misc
- jMolecules – Making DDD concepts explicit (optional)
- Aggregates, entities, value objects
- Domain events & event handlers
- Repositories
- Module annotation
- Use in Modulith documentation & canvas
- ArchUnit integration for DDD and architecture rules
- Outlook & discussion
- Migration of legacy applications to Modulith
- Hybrid architectures (Modulith + microservices)
- Event externalization (Kafka, AMQP, JMS, Spring Messaging)
- Best practices for DDD with jMolecules
- Experiences & lessons learned
Your Benefits
Concrete methods and best practices for designing Spring applications that are modular, maintainable, and free of unnecessary overhead.
Transparency and control through automated architecture testing and generated diagrams.
Practical application of DDD and architecture concepts, visualized with jMolecules and Modulith tools.
Develop future-proof systems that are easier to adapt, extend, and scale.
Audience
- Software developers who work with Spring Boot and want to structure their applications in a clearly modular way.
- Software architects who want to critically examine microservices or design hybrid architectures.
- Teams that want to modernize existing monoliths and gradually convert them into modular systems.
Training Objectives
You can classify the idea behind moduliths and how they differ from microservices.
You will define and structure modules with Spring Modulith.
Implement suitable communication patterns between modules (synchronous, asynchronous, events).
You can automatically check architecture rules and integrate them into CI/CD pipelines.
You can independently design and extend a modular sample application.
Your Trainers
Falk Sippach
embarc
Architecture reviews, Java expert
- Agile Software Architecture
- Application Programming Interfaces
- CPSA Foundation Level
- Documentation-as-Code
- Evolution and Improvement of software architectures
- Fantastic diagrams
- Flexible architectures
- Spring Modulith
As a trainer, consultant and architect, Falk is always on the lookout for the spark of passion that he can ignite in his participants, customers and colleagues. He has been supporting mostly agile software development projects in the Java environment for over 15 years, initially as a developer and later as a project manager, architect and coach. Falk is convinced that lifelong learning is the prerequisite for professional self-development and lasting enjoyment in what you do. Despite his enthusiasm for new things, he always keeps an eye on people and established structures in order to develop balanced solutions. As an active member of the community, he likes to share his knowledge in articles, blog posts and presentations at conferences or user group meetings and supports the organization of various specialist events. Video: What is Documentation as Code? Falk explains it to you in the stream with Lisa Moritz.
Patrick Baumgartner
42talents
Java, Spring, Cloud
- Spring Boot Essentials
- Spring Modulith
- Spring Security in practice
Patrick Baumgartner is a Java Champion, passionate software crafter, and technical agile coach at 42talents. He supports teams in building elegant, robust solutions and specializes in cloud software with Java, the Spring ecosystem, and other open-source technologies.
As an active member of the Swiss communities for software craft, Java, and Agile, he regularly shares his knowledge. He values practical collaboration, experimentation, and continuous improvement—and prefers to learn together with others.
Read in & go deeper
-
Cheat Sheet: Modular Monoliths
All information on modular monoliths is summarized in this cheat sheet.
In-House Training
You can also book this training as an in-house training course exclusively for your team. Please use the enquiry form for more details.
Enquire nowRelevant Other Training Courses
Spring Boot Essentials
Gain a solid understanding of Spring Boot in four days—with practical examples for robust and modern applications.
from 2,160 €
Learn the basics of Spring Boot and use it efficiently in your projects.
Spring Data JPA Masterclass
Everything you need to know about Spring Data JPA
by Request
Learn how to use Spring Data JPA efficiently and effectively.
Spring Security in practice
From authentication to OAuth 2.0 – step by step to robust and future-proof Spring applications.
from 1,280 €
Delve deeper into the topic of security in the Spring context.