Designing a system in an era of rapidly evolving application behaviors and significant technology shifts involves taking on risk that a design will fail to meet its performance goals. While risk assessment and management are expected in both business and investment, these aspects are typically treated as independent to questions of performance and efficiency in architecture analysis. As hardware and software characteristics become uncertain (i.e. samples from a distribution), it is important to understand how such uncertainty will manifest in a complex system and how uncertainty-induced risk will impact system design.
In this talk, I will discuss how we can define and estimate architectural risk in analytical architecture models with minimum effort. The findings of our experiments indicate that architects need to take architectural risk as a first-order concern when designing systems for the future. I will also share the pain points of conducting such an analysis using ad hoc methods and introduce a modeling language specifically tailored to perform such high level studies. Through examples I will showcase how our language supports building, evaluating and sharing analytical models in a much better and manageable way and helps us discover interesting new insights. Finally, our findings from high-level studies expose a great potential of measuring architectural risk in a more realistic setup as in conventional architecture studies. I will finish with a discussion of methods and plans for revealing the manifestation of uncertainty in simulations and what we can do at architecture level to deal with such impact.