/
Architect Fundamentals
Architect Fundamentals
Axioms
- Views, for working between stakeholders and developers (this can capture user stories / workflows too)
- Requirements, particularly for non-functional (quality) attributes - this is where tradeoffs happen
- Evaluation, of the system's ability to deliver on functional and non-functional (quality) attributes
- Incremental Implementation, especially skeletons, and the ability to sub in for early stubs
- Information-hiding should encapsulate what can and is likely to change, behind well defined interfaces
- Separation of concerns allows teams to work independently, producers vs providers often have changes in one or the other, rarely both ...
- Caution with dependencies on commercial products, design so that upgrades are straightforward, or alternatives can readily drop in, the architecture can't fail due to a variable outside of your control
- Proliferate patterns, between components, for developoment/release processes - this will increase reliability, understandability, modifiability and velocity
, multiple selections available,