The word architecture only makes a single appearance in the 12 Principles behind the Agile Manifesto and does not appear in the Agile Manifesto itself. It is, therefore, unsurprising that agile methodologies like Scrum and Kanban do not focus on technical practices. Even Extreme Programming, probably the most well-known agile methodology focused on technical practices, does not explicitly address the topic of architecture.
Without an explicit reminder about architecture, many agile teams fail to address important architectural concerns. Many agile teams struggle to evolve a codebase that was quickly built up over many short iterations and increments without an explicit focus on architectural concerns.
In this tutorial, we will explore important "architectural practices" that align with the agile values - collaboration, fast feedback and value all in the context of exploring architectural concerns.
Participants are expected to have a technical background designing and developing software, although no code will be written during this session. Instead, participants will work in small groups to practice architectural thinking to a case study where activities include: