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

Essential architectural thinking (revised edition)

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

Essential architectural thinking (revised edition)

This slide deck is a revised edition of an older presentation. As it mainly covers fundamentals, many aspects of the original presentation still remained relevant. However, as time did not stand still and I gained some additional insights over time, I decided to create an updated version of the presentation. I also thought that this would be a good time for it because it feels as if the domain has mostly forgotten about everything we learned the hard way in the last decades due to the AI rush.

The slide deck is split in four parts. The first three parts discuss the "Why", the "What", and the "When" and "How much" of architectural work, diving into the usually neglected foundations of architectural work. The fourth part asks the (currently inevitable) question which effects AI-based software engineering has on the foundations (spoiler alert: The foundations remain unchanged; AI changes the way "How" we do architectural work).

As so often, the voice track is missing. But I hope, the slide deck stills offers some usueful insights for you.

Avatar for Uwe Friedrichsen

Uwe Friedrichsen

October 04, 2026

More Decks by Uwe Friedrichsen

Other Decks in Technology

Transcript

  1. Essential architectural thinking (revised edition) Why, what, how, when and

    how much? Uwe Friedrichsen – codecentric AG – 2006-2026
  2. We need to ask why to focus our work Without

    asking why the value of our work will be accidental
  3. The economical perspective • With architecture we attempt • to

    minimize the cumulative costs of a system over its lifetime • while ensuring the correctness of behavior at runtime
  4. The cognitive perspective • With architecture we attempt to •

    condense and structure needs and demands • and provide guidance and orientation • to reduce cognitive load
  5. The humane perspective • With architecture we attempt to •

    improve the lives of the people affected
  6. Why do we need architecture? • We need architecture to

    • to minimize the cumulative costs of a system over its lifetime • while ensuring the correctness of behavior at runtime • condense and structure needs and demands • and provide guidance and orientation • to reduce cognitive load • improve the lives of the people affected
  7. 1ST LAW OF ARCHITECTURAL WORK EVERY DECISION HAS ITS PRICE

    NO DECISION IS FOR FREE (NO DECISION ONLY HAS UPSIDES. EVERY DECISION ALSO HAS DOWNSIDES)
  8. 2ND LAW OF ARCHITECTURAL WORK A DECISION CAN ONLY BE

    EVALUATED WITH RESPECT TO ITS CONTEXT (DECISIONS ARE NOT INVARIABLY “GOOD” OR “BAD”, BUT ONLY IN A GIVEN CONTEXT)
  9. Explore • About designing solution options • Designing structures and

    behavior • Combining frameworks, tools, technologies, … • Important activity • Always done, either explicitly or implicitly • Architectural work often reduced to Explore activities • Unclear if and how solution delivers to the Why
  10. Execute • About making decisions • Often not made by

    architects, but by other stakeholders • Communication, collaboration, convincing, … • Very important activity • Need to collaborate with all stakeholder groups • Learn their needs, points of view, language, … • Do not forget dev’s and ops as important stakeholder groups
  11. Evaluate • About trade-offs • Comparing solution options • How

    well the needs and demands are satisfied • Essential activity • Delivers to Why and 1st law of architectural work • Needed for Execute • Keep different perspectives in mind
  12. Examine • About understanding the problem and context • Examine

    problem space holistically • Functionality, quality goals, time, costs, risks, constraints, … • The basis of all other activities • Provides focus and context • Delivers to Why and 2nd law of architectural work • Needed for Explore and Evaluate
  13. What is architectural work? • Architectural work consists of •

    understanding the problem holistically (Examine) • identifying suitable solution options (Explore) • assessing their trade-offs (Evaluate) • supporting stakeholders with making the best decisions possible in their respective contexts (Execute)
  14. Uncertainty drivers in IT • Geo-economic and geopolitical developments •

    Post-industrial (& startup) markets • Digital transformation (a.k.a. digitization, digitalization) • Disruptive technologies • Complexity of context and tasks • …
  15. Under uncertainty you do not maximize value by optimizing efficiency,

    i.e., minimizing production cost, but by maximizing effectiveness, especially detecting and cutting idle and value-reducing performances early
  16. Acting under uncertainty 1. Create a hypothesis regarding the effect

    of an effort 2. Do smallest action suitable to measure an effect 3. Measure effect and evaluate hypothesis a. Further develop hypothesis if expectations met b. Drop hypothesis otherwise (optionally pivot) 4. Repeat
  17. Value maximization approaches • • • • • • Certainty

    Hypotheses validation Small steps Quick feedback cycles Extensive effort planning Maximize efficiency Detailed controlling Uncertainty
  18. Certainty (No software development) Focus on innovation (Developer anarchy, …)

    Focus on feedback (DevOps, Lean, …) Focus on flow (SCRUM, LeSS, …) Enterprise “Agile” (Waterfall, V-model, SAFe, …) Focus on cost Software development approaches Uncertainty
  19. Software development approaches Cost “Agile” Flow Feedback Innovation BDUF Decent

    DUF & occasional updates Just enough DUF & continuous evolution „Whatever works“ (Minimal agreement) “Too early for IT” Big Design UpFront All 4 activities completely upfront Rare reassessments Certainty All 4 activities largely upfront, missing details added along the way Rare reassessments Quick pass through all 4 activities upfront Then discuss, complement and re-evaluate continuously along the way --- Just enough agreement to get things done fast (90%+ of all written code will be deleted anyway) Note: Approach not suitable for systems in maintenance Uncertainty
  20. Additional influencing factors • Time and budget constraints • Availability

    of people (who and when) • Available skills and knowledge • Risk of resulting system (e.g., can harm human lives) • …
  21. Why do we need architecture? • We need architecture to

    • to minimize the cumulative costs of a system over its lifetime • while ensuring the correctness of behavior at runtime • condense and structure needs and demands • and provide guidance and orientation • to reduce cognitive load • improve the lives of the people affected
  22. What is architectural work? • Architectural work consists of •

    understanding the problem holistically (Examine) • identifying suitable solution options (Explore) • assessing their trade-offs (Evaluate) • supporting stakeholders with making the best decisions possible in their respective contexts (Execute)
  23. Using AI as an amplifier • AI can support architectural

    work significantly • AI can support understanding a system as an analyst • AI can support creating solution options • AI can quickly create prototypes to assess your ideas • AI can serve as a critic while assessing options • AI can support communication by creating documentation • ... • AI changes how you do architectural work
  24. The limits of AI • AI lacks a few essential

    properties • AI lacks purpose • AI lacks creativity • AI lacks empathy • AI lacks responsibility • You still need to do the essential parts of architectural work
  25. The reinventing the wheel trap • Most of the time,

    companies re-solve solved problems • E-Commerce, ERP, SCM, CRM, ... • Known solutions with a few custom bells and whistles • LLMs have many such solutions in their corpus • Can easily take over big chunks of the existing architectures • Creates an “architectural work is solved” fallacy • Re-solving solved problems is not architectural work • This is a librarian’s work, i.e., find the right blueprint • LLMs are extremely good librarians
  26. Wrap-up • Why architectural work • To minimize cumulative costs

    without violating correctness • How to do architectural work • 4E model: Examine, Explore, Evaluate, Execute • When to do architectural work and how much • Align your activities with uncertainty • AI does not change the fundamentals • But it changes the way how you do your work