Agile teams embrace a “whole team” approach and incremental delivery of system functionality. This requires changes to the ways architects traditionally work. Instead of delivering a fully defined architecture at the beginning, the architecture continues to evolve and be refined as new functionality is defined and delivered. An agile architect engages in activities that explicitly support the agile values of teamwork, collaboration, and constant learning.
This hands-on workshop introduces techniques, patterns and practices for the definition, delivery, communication and refinement of a system’s architecture for agile projects or programs. The focus is on useful techniques and their practical application.
You'll learn:
- What is agile architecture? How is it different? What roles do architects play?
- Design values, principles, practices, and myths
- Practices for making architectural requirements visible
- Agile landing zones, roadmaps, architecture on the backlog
- Architecting on agile projects
- Incremental architecture, sharing architecture responsibility, stewardship, architecture spikes
- System qualities
- Quality Attribute Scenarios, System quality-related acceptance criteria, System quality checklists and pause points, Monitoring system qualities
- Agile ways to communicate architecture
- Separating permanent from just-in-time documentation
- Informal and formal views
- Decision records, principles, and design recipes
- Sketching visions and views of your architecture