10. Identifying and Using Scenarios

The most important goal of your software architecture is that it meets the needs of your stakeholders. In practical terms, this means that the system built based on your architectural design must be able to perform certain tasks while exhibiting specific properties that are important to the stakeholders (such as its performance or security).

Architecture definition is inevitably a process of complex tradeoffs between competing needs. In the midst of this, it is very easy for you to lose sight of a particular system’s key priorities and for these tradeoffs to start being driven by personal preferences or imagination, rather than stakeholder needs.

A good way to stay grounded when developing your architecture ...

Get Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.