Lean Architecture

Adopting our tools to fit new requirements, as we go.

Nico Rehwaldt 2021

It starts with Refactoring.

2

Refactoring

Refactoring consists of improving the internal structure of an existing program’s source code, while preserving its external behavior. [...]

➡️ Agile Aliance

3

But thinks Big.

4

Architecture

  • Structure to support capabilities in a reusable, recognizable, and safe manner
  • ➡️ Good practices baked into the core of your application
5

6

Lean Architecture

  • Evolve high level structure of your app, as you go
  • Support new, emerging capabilities
  • Do what's necessary when it fits
  • 💡 Get a sense of what's necessary (and when)
7

Case Study: Sections

  • Identify we are miss-using existing Overlay component
  • Find a common denominator: A Section component that easily combines with Overlay
  • Fix what is necessary 🔧
  • Consider the future: Unbuild legacy Overlay structure
8

The Rules of Refactoring Apply

0️⃣ Know what you want to do and why

1️⃣ Separate refactoring from feature development

2️⃣ Get buy in and improve substantially

3️⃣ Clean up after you

9

How to Identify when to Refactor / Re-Architect?

10

Thanks

❤️

11