Multilevel Maintenance

Change is omnipresent, and some changes happen to affect a system.
A system is flexible as long as the changes concern a part of the system which is variant, i.e. the changes have been anticipated in some way.
Unfortunately, flexibility is not the only virtue a system can have, another is semantics, i.e. invariante which tell correct and incorrect data apart.
Therefore, when designing a system, one not only needs to weigh between strict semantics and flexibility, but one also needs to predict which parts of the system may be prone to changes.

Changes may have manifold causes. First, the underlying subject can change. A probably foreseeable change may be a new VAT rate. A less predictable change would be the introduction of a new tax. But there may also be a change in perception of a subject, which requires a system to be changed. Furthermore, it could happen that a mistake in the model is discovered.

The most severe effects occur when a part considered invariant needs to be changed. Multilevel modelling attempts to increase flexibility and semanctics without one playing out the other. But still there will be cases where the invariant part is hit by change. Multilevel Maintenance attempts to decrease the negative impact of changes. Given the fact, that multilevel modeling is a paradigm which makes use of a very tightly coupling – otherwise negatively affecting flexibility – we try to make a virtue out of necessity and use the higher grades of semantics of multi level modelling to develop an extensive catalogue of change operations.