Objectives
This section is meant both as a conclusion with respect to
the previous and present chapter and as a forward
reference to part III.
It states that design must allow for reasoning about
a specification and the code that realizes a
specification.
Also, it must indicate how runtime consistency
may be monitored
by including appropriate conditions and invariance checks.
Points to emphasize
- contracts -- formal specification
- verification -- as a design methodology
- runtime consistency -- invariance
Hints
You may include additional material on formal methods.
Question
- Characterize the elements that form part of a formal specification.
Comments
It is my experience that students are quite interested
in your opinion on software engineering issues in general,
and the question of whether a formal approach is useful in particular.
Don't hesitate to express your opinion!