RWTH Aachen University
The complexity of modern systems (in both, the software and hardware domain) raises the need for abstract descriptions in early stages of the design flow. Such abstract descriptions are provided in modeling languages such as the UML and are often additionally enriched by declarative languages like OCL. This allows for a profound but comprehensive description of the structure and the behavior of the system to be realized. However, declarative descriptions often cause ambiguities about which model properties are supposed to be changed when executing an operation. Invariability clauses are a proper description mean to address this issue.