How is architectural design done in an agile environment?
- by B?????
I have read Principles for the Agile Architect, where they defined next principles :
Principle #1 The teams that code the system design the system.
Principle #2 Build the simplest architecture that can possibly work.
Principle #3 When in doubt, code it out.
Principle #4 They build it, they test it.
Principle #5 The bigger the system, the longer the runway.
Principle #6 System architecture is a role collaboration.
Principle #7 There is no monopoly on innovation.
The paper says that most of the architecture design is done during the coding phase, and only system design before that. That is fine.
So, how is the system design done? Using UML? Or a document that defines interfaces and major blocks? Maybe something else?