sveska

Move fast with Architecture

Move fast with Architecture

by Simon Lasselberger

Software Architecture is the mindset that helps you to move fast, break fewer things, and isolate the consequences of
decisions. In most successful software projects, the expert developers working on that project have a shared understanding of
the system design. Architecture is the decisions that you wish you could get right early in a project and hard to change
later.

Suggested that Software Architects compare better to Town Planners with information from many perspectives , optimization of
layout, respect current and future requirements. It should allow an application to equally be driven by users, programs,
automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and
databases.

About tecnical debt:It feels like a messy kitchen that rarely gets cleaned. There are many reasons for technical dept. It is called dept because you have to “pay interest” with every change you make.

Notes

Move fast and break things - Cukenberg Break strategically things, specify things. Architecture is about important stuff. Shared understanding is called architecture. The decisions you want get right earlier in the project Decision are hard to change later.

Whatever that is:

  • High level patterns
  • Persistance
  • communication
  • Application Platform
  • Deployment
  • Engineering process

Conways law More like town planner - optimize layers and buildings in town

Architecture:

  • decisions that are hard to change
  • shared understanding
  • builds bridges between teams

People and technical skills.

Technical Debt

  • messy kitchen
  • pays interest rate
  • tetris

Aiming: pinpoint and clearly structured Isolate Different products Extending the logic Invest in architecture Isolated logic to exception affect smaller chunks.

Design stamina hypothesis.

Allow the app to be driven by the users, programs, automated tests, so its isolated from its eventual devices and databases.