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

The important of architecture

Martin Cronjé
April 04, 2018
32

The important of architecture

Martin Cronjé

April 04, 2018
Tweet

Transcript

  1. The importance of
    architecture

    View full-size slide

  2. The shed is about this big:

    View full-size slide

  3. Software is hard!

    View full-size slide

  4. Essential Complexity
    Complexity, Conformity, Changeability, and Invisibility

    View full-size slide

  5. Accidental Complexity
    Programming, hardware limitations, deployment, debugging

    View full-size slide

  6. Simplifying the accidents

    View full-size slide

  7. Simplifying the essence

    View full-size slide

  8. Why is architecture
    important?

    View full-size slide

  9. Anti-patterns emerge

    View full-size slide

  10. Quality neglected
    not fit-for-purpose

    View full-size slide

  11. Quality is neglected
    entropy is not managed

    View full-size slide

  12. What is software
    architecture?

    View full-size slide

  13. Systems Thinking
    purpose, components, boundaries and interactions

    View full-size slide

  14. Architecture is…
    “The fundamental organization of a system, embodied in
    its components, their relationships to each other and the
    environment, and the principles governing its design and
    evolution.”

    View full-size slide

  15. Architecture embodies the critical
    design decisions of a system

    View full-size slide

  16. Why should we apply
    rigour?

    View full-size slide

  17. An architecture considers
    … key processing scenarios
    ... constraints under which the solution was designs
    … quality of service requirements
    … mechanisms that make up the solutions
    … key assumptions and design decisions
    ... models to help explain parts of the system

    View full-size slide

  18. It helps us…
    … manage complexity from different perspectives
    ... remember why we did things
    … navigate what we’ve built
    … structure our thinking
    … communicate to others about what we’ve built

    View full-size slide

  19. The Architect
    Foreman?
    Master Craftsman?
    Surgeon?
    Lead Engineer/Dev?

    View full-size slide

  20. Great designers
    create great
    systems

    View full-size slide