August 7th, 2020 by Adam Sandman
strategy requirements management history
One of the focus areas in the new release v6.6 of SpiraTeam and SpiraPlan is completing the initial support for baselining. This is an exciting new piece of functionality that makes SpiraTeam and SpiraPlan especially well suited for managing requirements, test cases and artifacts on more complex systems and engineering projects.
What is Baselining, and Why is it Important?
If you read our whitepaper discussing the Change and Configuration Management of Requirements, it discusses the ways in which requirements management systems can help you manage versions and baselines of artifacts such as requirements and test cases. It also discusses in detail, the differences between changes, versions, and baselines and why it's important to be able to have functionality to manage sets of changes between different baselines or "snapshots".
Recap of Existing Baselining Functionality
As described in our previous blog post on the baselining functionality released in Spira 6.5.2, In SpiraPlan, you can attach baselines to a release, as well as to the state of the product changes. This is to help you more easily use baselines as part of your release planning and review: baselines are, in effect, tied to the progress of your releases and sprints. You may wish to create a baseline when your release starts, and then create another when it is released. You may create a baseline at the end of every sprint and then use your baselines to see what happened between those two sprints.
Once baselining is enabled for a product, you can go to the main Planning > Releases page and click on the Release or Sprint that you want to create a baseline for. There will be a new Baselines tab visible on the Release or Sprint. In the example below we created an initial baseline at the start of the release, and then created a second, incremental baseline during the release:
You can see that the ChangeSet ID of the system is larger for the second baseline. That shows number of changes in the entire system that have happened between the two baselines.
New Baseline Functionality
In the previous version, the only way to see the changes in a baseline and compare the artifacts at the start and end was to use a special custom report that we published. This was only meant to be a temporarily solution until version 6.6 was released.
In the new version of SpiraTeam and SpiraPlan, we have added a whole new Administration > Baselines section that lets you manage and view the baselines in the entire product:
This page lets you view the list of baselines in the product. You can sort and filter by the various fields and see the release and latest history changeset associated with each baseline.
When you click on a baseline on this page (or on an entry the existing Release Baseline tab) you are taken to the baseline details page:
The top part of this page displays the key information about the baseline, including its name, associated release, creation date and history changeset ID. It also displays a handy hyperlink to the previous baseline in the product, unless this is the first baseline in the product.
Why do we show the previous baseline?
A baseline is created against a point in time (more precisely, against a specific change event in this product). This is the end of the baseline. To know what happened during a baseline you need to know when a baseline starts. The start of a baseline is immediately after the end of the last baseline. If this is the first baseline in a product, then the baseline starts at the start of the product.
For example, let's say we start a new product. A few days later we create baseline 1. A week later we add baseline 2. Baseline 1 runs from the moment we created the product until the moment we created the baseline. More precisely, baseline 1 runs from the first change ID of the product, to the change ID that the baseline is linked to. Baseline 2 meanwhile runs from the moment baseline 1 was created through to the moment baseline 2 was created.
Baseline Artifact Change History:
Underneath this section is the Baseline Changes section which displays a consolidated set of artifact changes that have occurred in between this baseline and the previous one:
This list is different to the normal artifact history because it shows only one row per-artifact and displays a list of operations (Modified, Added, Deleted, etc.) that have occurred to that artifact in this baseline.
What's Planned Next
This is just the initial set of baseline-related functionality we have planned for SpiraTeam and SpiraPlan this year. In parallel with the release of this new version, our product team will be working on the following additional features:
- Association Change Tracking - The initial version of baselining tracks the changes to made to the fields, attributes and custom properties of each artifact in the system. We will be adding support for tracking and versioning the associations themselves. For example, you will be able to see if a requirement was associated with a test case (or the association removed) in between two different baselines.
- Additional Visualizations - The display of baselines and differences will be initially in the form of simple data grids and textual representations. We are planning on adding more sophisticated and visual tools for viewing the differences between versions and baselines.
- Artifact Historical Display - this planned feature will let you view a specific artifact at a specific baseline and see how it looked at that point in time.