Class diagrams define classes and demonstrate the attributes and operations associated with instances of these classes. State diagrams illustrate the behavior of a class instance. At the same time, none of the diagrams show the details of the semantics associated with each operation. For such specifications, we will use the OCL language (Object Constraint Language) [...]