Different kinds of system properties While the formulation

  • Slides: 2
Download presentation
Different kinds of system properties • While the formulation of logical properties relating to

Different kinds of system properties • While the formulation of logical properties relating to assumptions and guarantees (as discussed in Chapter 2, Section 7) is very general, one often considers separately the following kinds of component properties: – Structural properties (concerning sub-components in a static or dynamic view) – Interface specifications (signatures of procedures, functions and objects) – Dynamic behavior properties concerning possible interaction sequences and corresponding interaction parameter values » trace semantics (safeness properties only) » failure semantics (including consideration of possible blockings) » possible interaction sequences (safeness), plus liveness and fairness properties Copyright 1999 G. v. Bochmann ELG 7186 B ch. 4 1

(suite) • Notes: – Dynamic behavior properties were discussed in Chapters 2 and 3

(suite) • Notes: – Dynamic behavior properties were discussed in Chapters 2 and 3 for simple transition models. In the following Sections 4 through 8, we consider more general models where interaction parameters are taken into account and possibly some local variables are considered within a given system component. – Interface specifications are very common in object-oriented software engineering. In Ada, each package has a separate interface specification and a body (algorithms implementing the operations defined in the interface). The situation is similar in C++ and Java. The properties defined for an interface do not consider interaction sequences, sequences but apply to each invocation of an operation. The following kind of properties are defined (further discussed in the following section): » For each invocation of the module, the requested operation is one of those defined in the interface (an assumption); » the effective values of the input parameters belong to the data type specified in the interface definition (an assumption); » the effective values of the return parameters belong to the data type specified in the interface definition (a guarantee). Copyright 1999 G. v. Bochmann ELG 7186 B ch. 4 2