6.4.6 Designing And Applying Logical Tests
Conducting logical tests is an essential part of verifying that a model is correctly structured and performing all functions as intended. Logical tests are designed to demonstrate that the behaviour of the module or model in response to prescribed inputs is logical. Each step of the functioning of the module or model should be traced and logically explained. Logical tests are also designed to assure information and material flows make sense. Logical tests should also help in identifying erroneous or out-of-range physical flows and information exchanges within modules and between parts of models.
Logical tests will establish that:
- integrity of units used by modules or models is not violated;
- the correct sequence of making calculations is strictly observed;
- state variables do not take on out-of-range values—such tests will establish, for example, that state variables (stocks, levels or accumulators) which cannot physically become negative do not take on negative values in our models; and
- the direction of each physical flow is correct, that is, physical flows do not violate the requirement for the direction of influence from influencing variable to influenced variable to be assured.
