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

Beauty of Simplicity (ADC)

Felix Riess
May 09, 2024
21

Beauty of Simplicity (ADC)

Slides to my talk "Beauty of Simplicity" at the Advanced Developers Conference 2024 in Regensburg

Felix Riess

May 09, 2024
Tweet

Transcript

  1. 3 CONSULTING Software System Architectures Strategic Consulting Enterprise Architectures Master

    Data Strategies SOFTWARE SYSTEMS Development & DevOps Quality Assurance Cloud Solutions Java Ecosystem MACHINE LEARNING & DATA SCIENCE Artificial Intelligence Forecasting Solutions Natural Language Processing Big Data Solutions SOFTWARE ENGINEERING CONSULTING WHAT DO WE ACTUALLY DO EXCEPTIONAL SOFTWARE SOLUTIONS
  2. Strategic Domain Driven Design: Subdomains Advanced Developers Conference 10 |

    Bounded Context A Bounded Context B Bounded Context C Supporting Generic Core
  3. Strategic Domain Driven Design: Context Mapping Advanced Developers Conference 11

    | Bounded Context A Bounded Context B Bounded Context C
  4. Advanced Developers Conference 13 | Quality Attributes (ISO 25010) Performance

    Efficiency Functional Suitability Compatibility Interaction Capability Flexibility Maintainability Security Reliability Safety
  5. Architecture Vision Advanced Developers Conference 18 | How? Big picture

    Concepts, patterns, principles Base technologies Hypotheses
  6. Big design up front is dumb. Doing no design up

    front is even dumber. DAVE THOMAS Advanced Developers Conference 19 |
  7. Components & Interfaces • Exports interfaces • Imports interfaces of

    other components • Implementation is exchangeable (Principle of secrecy & information hiding) • Suitable as unit of reuse • Can contain other components (Composition) Advanced Developers Conference 22 | In addition to interfaces, the component is the essential unit of design, implementation and therefore planning
  8. Software Blood Groups • 0: available everywhere, carefully tested &

    contains eternal truths of computer science • A: application or domain related • T: technology-oriented, independent of application • R: representation changes Advanced Developers Conference 23 | Avoid AT-Software!
  9. Wrap-up • Domain Driven Design • Technology is not an

    end in itself • Appropriateness: Boring is the new cool • Components & blood groups • Empirical Advanced Developers Conference 26 |
  10. It seems that perfection is attained not when there is

    nothing more to add, but when there is nothing more to remove. ANTOINE DE SAINT-EXUPÉRY Advanced Developers Conference 27 |