Variant Management
This article provides a brief breakout discussion on variant management and its strategic implications—a topic with significant potential for deeper exploration in the future.
„All development occurs at head.“ – Software Engineering at Google, 20201
Supporting multiple Variants
As teams define the product to be modeled, questions about versions, configurations, and variants often arise. Supporting multiple versions, configurations, and variants is common, but it also adds significant overhead in areas such as management, coordination, development, testing, release management, and support. The table below provides an overview of these terms, their meanings, and key aspects.
Concept 1659_3e6770-bf> |
Definition 1659_c6dbcf-9f> |
Key Points 1659_86d638-f1> |
Examples 1659_aae4c5-54> |
---|---|---|---|
Version/Release 1659_6f1c76-58> |
A version is a unique state in the evolution of a product over time, marked by incremental improvements or significant shifts in architecture or technology. While a Version often represents an internal state of the product, a Release represents the delivery of a Version to the customer (external visible state), usually with a certain level of quality. 1659_6c910f-8c> |
-Represents product maturity and lifecycle |
• Software: v2.1.3 → v3.0.0 |
Configuration 1659_668633-b4> |
The specific arrangement of options, parameters, or features that define customer- or system-specific behavior and functionality within a given version or variant. 1659_4381bc-cc> |
-Describes how a product is set up or behaves. |
• Car with long-range battery + premium sound system. |
Variant 1659_1d400c-09> |
A parallel model of the same product platform, designed to serve different markets, segments, or use cases. Often created via platform sharing, clone-and-own, or similar approaches. 1659_cacc13-07> |
-Exists in parallel, not sequential like versions. |
• Sedan vs. SUV on the same platform. |
This opens the door to a strategic discussion: Does multi-version development truly deliver value, or is it simply a legacy of past decisions? And how many variants should a vendor build to strike the right balance between market needs, development costs, and speed of delivery?
Rethinking Versions: The Case for Single-Version Development
Many modern, high-performing organizations have shifted to single-version development – a model where all users are served through a continuously evolving, unified version of the product. This approach drastically reduces complexity, improves velocity, and simplifies operations. Some examples:
- iOS: Apple delivers a single, tightly controlled OS version that rolls out to nearly all users within weeks.
- Salesforce: All customers run on a single core version, with flexibility delivered through configuration, not code.
- Google Chrome / Microsoft Edge: Always up to date via auto-deployment – no user-managed versioning.
- SaaS platforms like GitHub, Slack, or Zoom, using feature flags to customize experience without fragmenting the codebase.
Advantages
Adopting a single-version mindset encourages architectural discipline, supports continuous delivery, and enables faster learning through unified telemetry and feedback. While not always feasible in every context (e.g., embedded or regulated systems), it’s worth challenging the status quo—especially when modeling reveals just how much complexity comes from maintaining variants.
Approach 1659_f1f083-d3> |
Description 1659_91de66-2b> |
Benefits 1659_a7b8c5-b9> |
Challenges 1659_3cad25-42> |
---|---|---|---|
Single-version development 1659_e0e34e-b9> |
All users are served through one continuously evolving version of the product. 1659_465db4-8b> |
– Reduced complexity |
– Requires strong CI/CD pipeline |
Multi-version development 1659_1c876d-20> |
Multiple product versions are maintained in parallel to serve different user groups, regions, or regulations. 1659_56973c-57> |
– Supports legacy customers |
– High operational complexity |
References
Author: Peter Vollmer – Last Updated on September 10, 2025 by Peter Vollmer