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

The important of architecture

Martin Cronjé
April 04, 2018
6

The important of architecture

Martin Cronjé

April 04, 2018
Tweet

Transcript

  1. The importance of
    architecture

    View Slide

  2. Today…

    View Slide

  3. View Slide

  4. View Slide

  5. The shed is about this big:

    View Slide

  6. Software is hard!

    View Slide

  7. View Slide

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

    View Slide

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

    View Slide

  10. Simplifying the accidents

    View Slide

  11. Simplifying the essence

    View Slide

  12. Why is architecture
    important?

    View Slide

  13. Anti-patterns emerge

    View Slide

  14. Quality neglected
    not fit-for-purpose

    View Slide

  15. Quality is neglected
    entropy is not managed

    View Slide

  16. What is software
    architecture?

    View Slide

  17. Systems Thinking
    purpose, components, boundaries and interactions

    View Slide

  18. 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 Slide

  19. Architecture embodies the critical
    design decisions of a system

    View Slide

  20. Why should we apply
    rigour?

    View Slide

  21. View Slide

  22. View Slide

  23. 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 Slide

  24. 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 Slide

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

    View Slide

  26. View Slide

  27. View Slide

  28. Summary…

    View Slide

  29. Great designers
    create great
    systems

    View Slide