3. Dependences & Specifications

3.1. Dependences & Specifications

The fundamental relationship that underlies uses is transitive: if A is affected by B and B is affected by C, then A is affected by C. It would be much better if reasoning about A, for example, required looking at only at the parts it refers to.

The solution: to have instead a notion of dependence that stops after one step.

To make this possible, it will be necessary to have a complete description for every part that A depends characterizing its behaviour. The description cannot itself depend on other parts.

This description is called a specification.

Before A would depend on B, now with a specification part S, we can say that A depends on S and B meets S.

Figure 14.4. Specifications S and T.

Specifications S and T.

Advantages:

  • Weakened Assumptions.

  • Evaluating Changes.

  • Communication.

  • Multiple Implementations.

3.2. Audio

Audio in Portuguese