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

emergent architecture

emergent architecture

DJ Daugherty

June 11, 2015
Tweet

More Decks by DJ Daugherty

Other Decks in Programming

Transcript

  1. grow /ɡrō/ verb undergo natural development by increasing in size

    and changing physically; progress to maturity.
  2. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  3. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework WHOA
  4. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  5. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  6. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  7. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  8. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  9. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  10. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  11. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  12. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  13. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  14. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  15. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  16. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework
  17. Architectural design more often than not, struggles to find a

    place within an agile environment. Unfortunately, big up-front design is second-nature and the designing, building, and maintaining of an architecture does not come for free. Within this talk we will... - explore why technical practices are key to technical excellence - discuss the concepts of intentional yet emergent - discuss how to master incremental planning - discuss how to embrace uncertainty - and understand cost/benefit of constant rework this is agile…!
  18. “agile evangelists claim we (almost) do not need conventional architectural

    design at all. this emergent approach leads to the simplest and therefore the most optimal architecture possible.”
  19. - cost and benefit of incremental design - must embrace

    the uncertainty - incremental planning must master:
  20. test driven ‘doing’ refactoring collective code ownership technical practices are

    key: paired ‘collaboration’ continuous ‘feedback’
  21. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  22. - think big, act small, fail fast, learn rapidly (Poppendiecks'

    book Lean Software Development: An Agile Toolkit)
  23. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  24. "the moment at which failing to make a decision eliminates

    an important alternative." (Poppendiecks' book Lean Software Development: An Agile Toolkit) - last responsible moment
  25. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  26. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  27. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  28. - think big, act small, fail fast, learn rapidly -

    last responsible moment - simplest thing that works - sprint zero - backlog - working software how do we get there?
  29. 1. design evolves. Architecture is a collaboration. 2. big system.

    big backlog. 3. build the simplest architecture that can possibly work
  30. 1. design evolves. Architecture is a collaboration. 2. big system.

    big backlog. 3. build the simplest architecture that can possibly work 4. code / model it.
  31. 1. design evolves. Architecture is a collaboration. 2. big system.

    big backlog. 3. build the simplest architecture that can possibly work 5. there is no monopoly on innovation 4. code / model it.
  32. just start! it will stink at first. have a ritual.

    it is ok to fail. caffeine helps! that’s ok.
  33. just start! it will stink at first. have a ritual.

    it is ok to fail. caffeine helps! eventually it will stink less. that’s ok.