A restriction that is imposed on the choices available to the developer for the design and construction of a product.
An influencing factor that cannot be changed, and that places a limit or restriction on a possible solution or solution option.
Constraints are requirements that limit the solution space beyond what is necessary to meet the given functional requirements and quality requirements.
CON-1. The user clicks at the top of the project list to change the sort sequence. [specific user interface control imposed as a design constraint on a functional requirement]
CON-2. Only open source software available under the GNU General Public License may be used to implement the product. [implementation constraint]
CON-3. The application must use Microsoft .NET framework 4.5. [architecture constraint]
CON-6. All textual data used by the application shall be stored in the form of XML files. [data constraint]
When specifying constraints, the following categories of constraints should be considered:
▪ Technical: given interfaces or protocols, components, or frameworks that have to be used, etc.
▪ Legal: restrictions imposed by laws, contracts, standards, or regulations
▪ Organizational: there may be constraints in terms of organizational structures, processes, or policies that must not be changed by the system.
▪ Cultural: user habits and expectations are to some extent shaped by the culture the users live in. This is a particularly important aspect to consider when the users of a system come from different cultures or when Requirements Engineers and developers are rooted in a different culture to the system’s users.
▪ Environmental: when specifying cyber-physical systems, environmental conditions such as temperature, humidity, radiation, or vibration may have to be considered as constraints; energy consumption and heat dissipation may constitute further constraints.
▪ Physical: when a system comprises physical components or interacts with them, the system becomes constrained by the laws of physics and the properties of materials used for the physical components.
▪ Furthermore, particular solutions or restrictions demanded by important stakeholders also constitute constraints.