Use cases for variants for software releases

Variants for Software Releases

This section looks at use cases for creating and maintaining content for software releases.

Background for the use cases

Acme Teleporters is a company producing personal teleportation devices. They create both the hardware and the software used to run the teleporters. Acme ships manuals with their products, and also publishes to an online Knowledge Center.

Manuals for older versions of the products must be available all times. Sometimes the old versions of the documentation need to be republished. To enable Acme to maintain their documentation for each release they use variants rather than just updating their existing topics.

Acme documentation

At each release of Acme's documentation, the content requirements will fall into one of the following categories:

  • New functionality is introduced to a product so new topics must be created. These topics appear in the content from the specified release.
  • Some functionality stays the same between releases. These topics are reused without changing the content.
  • Some functionality is no longer used in the product. These topics can be "removed" from the content from that release onwards.
  • Some functionality changes. Variant objects are used to update the topic for the new release. In addition to creating topic variants, template variants can be used when content changes. For example, when using linked file objects.
  • A branched release is required. Content for the branched release must not be included when publishing the general release content.