Architectural goals provide the motivation and rationale for decisions. These goals are often driven
by the software requirements, particularly system-wide requirements [ALL02].
Architectural goals define how the system needs to respond to change over time. Architectural goals tend to address the
What is the expected lifespan of the system?
Will the system need to respond to technological changes over that time, such as new versions of middleware or
How frequently is the system expected to adapt to change?
What changes can we anticipate in the future, and how can we make them easier to accommodate?
These considerations will have a significant effect on the structure of the system.