The design constraints include not only the system quality of service (QoS) requirements but also other constraints
such as optimization goals, standards to which the system must adhere, etc.
The key concept for design constraints is that they are optimization criteria for the design. Since optimizing one
aspect of a design de-optimizes others, it is crucial to rank the criteria in order of importance.
A set of common design criteria are:
-
Performance
-
Worst-case performance
-
Average-case performance
-
Read vs. write performance
-
Predictability
-
Scheduleability
-
Space complexity
-
Resource usage
-
Safety
-
Reliability
-
Portability
-
Reusability
-
Maintainability
-
Extensibility
-
Testability
-
Provability
-
Standards conformance
|