ABSTRACT

The notion of contracts was first introduced in Meyer [67] as a pair of pre-and postconditions [36,45,57] to be used in formal specification of software (SW) interfaces. In recent work [12,14], developed within the European research project SPEEDS [85], the use of contracts is extended from formal specification of software to serving as a central design philosophy in systems engineering to support the design of cyber-physical systems (CPS) [60,81]. One of the key challenges that triggered the extension of contracts is the increasingly complex development environment of cyberphysical systems, characterized by distributed original equipment manufacturer (OEM)/supplier chains [12,14].