An attempt to define a role of the Agile Architect including responsibilities and interaction with Agile Teams.
Inspired by ideas from the agilemodeling.com
2. Some Agile Architecture Principals
To Start …
• “Just enough” upfront design
• Just-in-time design each iteration
• Trust your team… and be there for them
• Know when changes are required
• Write docs … but only if someone needs to read
them
• APPLY COMMON SENCE
3. What Does It All Mean…
• “Just enough” upfront design
• High-Level Architecture Is Enough To Size The Story and Start Working On It
• Just-in-time design each iteration
• Architecture Documentation Will Get More Details During The Sprint (When
needed and If needed only)
• Trust your team… and be there for them
• Experienced Team Members Can Make Decisions On The Application
Architecture In Coordination With Architect.
• Know when changes are required
• Architecture Is A Collaboration. All Ideas/Feedback Are Welcome And Will Be
Assessed.
• The Decision On Architecture Change Will Be Made In Collaboration Between
Team Members and Architect
• Write docs … but only if someone needs to read them
• Only relevant architecture details will be documented
• APPLY COMMON SENCE
• Simple. Always Apply Common Sense
4. What To Expect From Architect…
• High-Level Architecture or “No Architecture/Design
Update Needed” Note For Most Of The Stories Before
The Sprint Planning And Sprint Start Date
• Architecture Clarifications And More
Architecture/Design Details During The Sprint
• And I mean It: Ask Questions, Give Feedback And Ideas On
Better Design. All As Usual.
• Design Changes, If Necessary And If It Makes Sense
5. What Is Expected From The Team…
• Review Of The High-Level Architecture For The Stories
Before The Sprint Planning
• Feedback To The High-Level Architecture, If Necessary
• Making Independent Decisions Where Possible
• Example: Not to stack over the name of the field or reference
data value (especially knowing the naming convention). Just
communicate your decision and continue.
• Ideas For Design Improvement