Objectives
This section discusses the problems
involved in establishing
global invariants
and presents some formalisms for
specifying the behavior of collections
of objects.
\nop{
It also includes a brief introduction
to model-based specification.
}
Points to emphasize
- global invariants --
dynamic aliasing
- compositions --
contracts, scripts, interaction, joint actions
Hints
Formal methods for object-oriented
programming will increasingly become important.
In particular, a number of development methods
already include a model-based specification
language \`{a} la Z or VDM
for specifying the functional properties
of objects.
See also section [zed].
Questions
.so q5
Comments
This section is intended as a starting point
for studying formal approaches
to the specification of object-oriented
software.