Baselines and versioning

Baselines can be useful:

  • When you want to test a specific version of your software,

  • When requirements evolve after you've raised a JIRA issue,

  • To keep track of requirements that have been approved by a client.

 

Do you want a full tutorial on baselines in less than 5 minutes? Check out our video:

https://youtu.be/l_IkCj6igkE

 

 

ℹ️ Before you continue, we’ve noticed some users were trying to use the Baselines on their Cloud instance, please remember that this is a feature on Data Center only. We have replaced those by Variants in the Cloud. Check this guide if you are not sure on which you are.

Create a baseline of a subset of the requirements

A baseline contains a snapshot of your requirements at a given point of time. There are 4 ways to create a baseline:

Create a baseline from a search

  • Search for requirements

  • Tick a requirement (or all)

  • Press "Actions..." and click "Make a baseline"

  • A page representing the baseline and its properties is created,

  • You must click "Freeze" on that page to actually freeze the requirements.

RY- Make Baselines.png

Create a baseline from the Create button

Create a baseline from the baseline screen

  • Click "Requirements" in the sidebar,

  • Click on the tab "Baselines",

  • Click "Create new baseline",

  • A page representing the baseline and its properties is created,

  • You must click "Freeze" on that page to actually freeze the requirements.

 

Create an "instant" baseline

  • Click on the byline icon at the top of a page,

  • The baseline will be created for the current page only.

An "instant" baseline has no associated page. Requirements are frozen immediately.

Baselines are represented by a page

Baseline are often intellectually related to a release, to a test suite, etc. This is the reason why we've tied baselines to a summary page, so you can type any information relevant to this baseline, in free text:

 

 

Don't forget to freeze requirements

Creating a page about the baseline is not enough. You must click "Freeze requirements". This allows you to enter details about a baseline before it is entirely ready.

Baselines are represented by a page, with the exception of "instant" baselines (created using the byline icon):

  • To rename a baseline, rename the page,

  • To delete a baseline, go to the "Baselines" tab to display the list of baselines, and click "Delete" for this baseline. It requires to be space administrator.

  • To "refreeze" a baseline, which means to reuse an existing baseline and add/remove/update requirements, go to the "Baselines" tab and click Refreeze.

  • The number of a baseline is sequential, autonumbered and fixed.

"Security" of your baselines

  • Baselines can be deleted.

  • The text and properties of requirements in a baseline can't be modified. However, related requirements that are not included in a baseline can change (obviously).

  • Confluence allows changing the history of pages for space administrators and plugins. Although we won't change the text of requirements, when a user clicks on a requirement to view the page history, Confluence may display the closest version of the page.

  • Images aren't included in the copy of the requirements. Only the URL of the image is. Always take into account that someone may have changed the image underneath a URL, and therefore make the requirement display something else than it was supposed to. It is generally not a good practice to put images in requirements.

The baseline wizard

The wizard to create baselines is displayed if you use the button in the "Baselines" tab. You can bypass this wizard when creating the baseline using the blue "Create" button in the top bar.

The wizard tells you not to forget related requirements, and suggests you add them.

 

 

 

Using baselines

Use the on-page baseline comparator

On a page, click the "byline", select "Compare" and choose a baseline to compare to. It will highlight modified requirements.

 

Use the "diff" tool

Starting from the "Baselines" tab, choose two baselines and press "Generate diff".

 

See baselines in older versions of a page

When you view an old version of a page, the detail popup shows the details of the baseline.

Link to baselined requirements

In Confluence

  • Paste the URL of a baseline requirement to create a link to an older version,

  • Or click on the macro, click the version button, and select the correct version.

In Jira

It is possible to link an issue to a specific baseline of the requirements. So your client can't change requirements on the fly!

In the JIRA link dialog, go to 'Criteria' and add the baseline you want.

Tip: If the baselines don't show, it means your administrator has not configured the link between the project and the Confluence space.

Once you've ticked a baseline, search for requirements. Only those in the baseline will display.

Tip: If you want to upgrade from one version to the next, click “Action" → “show baseline upgrades/downgrade”.



DOs and DON'Ts

Do ✅

Don't ❌

Do ✅

Don't ❌

From JIRA, only use links to baselines when you are writing a bug report about a specific version.

From JIRA, don't link to the baseline of a requirement that you want to evolve. It is much easier to just link to whatever
the current version is, then let JIRA update it whenever it is updated.



Don't generally include images in requirements. They are not saved the same way as text is.



Don't put too much text in a requirement. Only the title should be in the requirement; the user can click to view it in context. After all, Requirement Yogi is designed around the idea of using pages to describe requirements.

See all your baselines at a glance

There is a "Baselines" tab:

 

Search for requirements that have been modified since a baseline

There is a special query term: isModified('1')

  • It shows all requirements which have been modified since "baseline 1";

  • You can as well write the name of the baseline: isModified("Release 1.3c")