I am giving a tutorial at the SATURN software architecture conference
in Minneapolis in May. The tutorial is on (you guessed it) risk-centric architecture. Here is the abstract:
Architectural design is expensive, so how can you do “just enough”
architecture? Today, you must rely upon your intuition. Smaller,
simpler projects often thrive with agile processes and evolutionary
design. Bigger, complex projects benefit from architectural planning.
Between the two is a huge hole
but little guidance on how to
choose “just enough” architecture. This tutorial provides guidance
via the Risk-Centric Model, inspired by Attribute Driven Design,
Global Analysis, and the Spiral model.
Risks are central in the Risk-Centric Model, so developers:
(1) prioritize the risks they face,
(2) choose appropriate architecture techniques to mitigate those risks, and
(3) re-evaluate remaining risks.
It encourages “just enough” architecture by guiding developers to a
prioritized subset of architecture activities. The mappings between
risks and corresponding architecture techniques are explicit. Since
it is not a full software development process, it can be used inside
of a process such as XP or RUP