Independent Variation Principle

The Independent Variation Principle (IVP) is a theory of how structured systems are organized around the sources of change that act upon them.

A system’s structure should separate the elements that vary independently — elements driven by different sources of change belong in different modules — and unify the elements that vary dependently — elements driven by the same source of change belong in a single module.

The principle and the proof that this module structure is the cost-minimising one are published in the paper on the Independent Variation Principle [1].

This site is the working home for that theory and its applications.

The theory

  • IVP — the formal theory for software: the system tuple, change drivers, the Γ-equivalence partition, and the partition theorem.

Software

  • Software — design, architecture, cohesion, coupling, and languages, analyzed with the theory.
  • Verdicts — what IVP diagnoses about the architectural styles and design sets in use.

Writing and background

  • Published papers — the Zenodo papers behind the site, each with the full formal development: definitions, theorems, and proofs.
  • Blog — notes and analyses on software design and the theory.
  • About — the purpose of this site, and how to cite the work.

References

[1]
Y. Loth, “The independent variation principle.” Zenodo, Jun. 2026. doi: 10.5281/zenodo.20794332.