architectural layers and technical responsibilities. Presentation Presentation Application Business Logic Domain Data Access Database 5 Persistence Infrastructure Database OS 26.08.2026 WE KNOW HOW. 5 Controller Controller Controller Presentation Controller Controller Controller Service Service Service Business Logic Service Service Service Repository Repository DBContext Data Access DBContext Repository Repository Database 6 26.08.2026 WE KNOW HOW. 6 3
Service Business Logic Service Service Service Repository Repository DBContext Data Access DBContext Repository Repository Database 7 26.08.2026 WE KNOW HOW. 7 Challenges with Layered Architectures • Features are scattered across layers • High impact of change • Complexity accumulates across layers → Harder to understand → Harder to change → Harder to maintain 8 26.08.2026 WE KNOW HOW. 8 4
WE KNOW HOW. 9 Vertical Slice Architecture “Instead of coupling across a layer, we couple vertically along a slice. Minimize coupling between slices, and maximize coupling in a slice.” 10 26.08.2026 WE KNOW HOW. 10 5
case (or feature) implemented end-to-end Endpoint • Own input and output • Implementation organized around the use case • Minimal coupling to other slices 11 Handler Data Access 26.08.2026 WE KNOW HOW. 11 Create Activity' Implementation as a Vertical Slice in a Single File 12 26.08.2026 WE KNOW HOW. 12 6
Avoid premature sharing. Start locally and extract common code when reuse actually emerges. • Keep related code together → Preserve the cohesion of the vertical slice • Preserve vertical boundaries → Don't unnecessarily couple independent features 21 26.08.2026 WE KNOW HOW. 21 Feature-Specific Sharing F1 22 F2 F3 F4 F5 26.08.2026 WE KNOW HOW. 22 11
layered architectures • Managing duplication & sharing Finding the right balance between independence and reuse • Maintaining consistency Balancing slice-specific solutions with team-wide conventions 41 26.08.2026 WE KNOW HOW. 41 Key Takeaways • Organize by feature, not by layer • Prefer independence over premature sharing • Use appropriate code-sharing strategies 42 26.08.2026 WE KNOW HOW. 42 21