20Cross‐cutting Concerns
Cross‐cutting concerns are those concerns that are relevant on different levels and layers, but also from different perspectives of the system architecture. There are very different concerns that have this nature. In this chapter, we will discuss some of the major ones. Each of the following sections is about one of them. Finally, trade studies and budgets will be discussed as a means of handling cross‐cutting concerns.
20.1 The Game‐Winning Nonfunctional Aspects
Fried and Hansson write: “things like speed, simplicity, ease of use and clarity are our focus. Those are timeless desires. People are not going to wake up in ten years and say, ‘Man, I wish software was harder to use.”’ ([82], p. 85). This statement stresses the importance of nonfunctional aspects, here: speed and ease of use.
The nonfunctional requirements are often cross‐cutting concerns, because multiple parts of the system will typically need to be made correctly to satisfy them, but just a minor detail in one of these parts or in one of the systems architecting activities defining them can spoil the success. For example, a noncompliance with requirements about total mass of the system can result from a single part of the system being too heavy. The reaction speed of a system can be spoiled by both a poor layered architecture and an unsatisfactory product architecture.
The system architecture description should describe how nonfunctional requirements are mapped to the different system ...
Get Model-Based System Architecture, 2nd 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.