Glossary · Change, versions and configuration
Backward compatibility
German: Abwärtskompatibilität
In systems engineering, backward compatibility is the controlled ability of a new version to work with older data, interfaces or peer systems. It is a defined and tested property, not an assumption that old inputs will still be handled.
- Data and interfaces
- Systems engineering
In one sentence
Backward compatibility explained for safety-relevant interfaces: what must be defined, tested and documented when a new version meets older data or peers.
Example
A new firmware release for an AGV controller still accepts the older fleet manager's route messages, and the release notes list which fields are ignored and how the vehicle reacts to them.
Explained in context
Context cards connect this term with others to answer one question. Also in British English and German.
How it applies
- Integrated systems: Specify which older versions are supported, for which interfaces, and for how long. “Compatible” without a version range is not a verifiable statement.
- Machine safety: Old data may be accepted syntactically but interpreted differently, for example a changed engineering unit. Treat such cases as potential hazards, not as cosmetic issues.
- Evidence: Keep regression tests that run the new version against the oldest supported peer. Link the results to the configuration baseline of the release.
- Technical documentation: Release notes and interface documents should name the supported versions and describe the behavior when an unsupported version is detected.
Backward vs. forward compatibility
Backward compatibility is about the new version handling the old world. Forward compatibility is about the current version handling future or extended data and interfaces it does not yet know.
Not to be confused with forward and backward versioning
Backward compatibility is a property of a system or interface. Forward and backward versioning are something else: two conventions for publishing documentation versions.
- Forward versioning keeps the current version at the published location, always under the same URL. Each time a new version is released, the older one is moved to an archive with its date stamp.
- Backward versioning gives each new release a new version number (v1, v2, v3 …), so the newest version always carries the highest number and every version stays addressable by that number.
For docs-as-code publishing and static HTML websites, only forward versioning makes sense: links, bookmarks, search results and references from other documents always lead to the current content, while dated archive copies keep the older versions traceable. A document can therefore describe a backward-compatible interface and still be published with forward versioning — the terms answer different questions.