Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Whether you're in charge of writing specifications, carrying out a project or monitoring it, it may be useful to track certain data about your requirements. Unfortunately, the data you're looking for may not be directly available. You may need to transform the data, aggregate the data from several requirements, and so on. In the past, customers used to export their requirements to Excel to be able to carry out such operations.

Now, Requirement Yogi lets you perform such calculations directly from Confluence. In particular, you can combine requirement fields, properties, external properties and other data related to your requirements into a formula to extract the data that you need. What’s more, you can perform aggregations based on data from linked requirements (parent or child). This is particularly useful if, for example, you want to extract the sum of man-days needed to meet a requirement based on an external property of its child requirements.

Use cases: What calculations can be done ?

Estimate the cost of a requirement

1.2 * (@Man\ days * 150 + ext@Manufacturing\ Cost)

Here, we see that the result for requirement AA-003 is marked as error because the property @Man days used in the calculation is not a valid number.

Estimate the total cost of a parent requirement

SUM(ext@Cost, from@Refines)

Detect when a parent requirement is over budget

SUM(ext@Cost, from@Uses) > @Budget

Detect when parts composing an assembly are too heavy

SUM(@Weight, child@Refineschild@Uses) > @Max\ weight

Here, we see that the result for requirement AA-003 is marked as error because the property @Weight used in the calculation is not a valid number.

Tutorial: How to perform calculations?

To perform calculations, simply open a traceability matrix and add a calculation column.

Featured calculations

To speed up your workflow, we suggest useful calculations directly from the sub-menu. These are featured calculations that represent common use cases for our users.

Percentage of completion

The first featured calculation is the percentage of completion. This calculates the percentage of completion of each requirement by checking the ext@Status external property of their child requirements. When a child requirement is marked as Approved, it is considered completed.

Sum of estimates

The second featured calculation is the sum of estimates. This calculates the sum of the ext@Estimate external property of all the child requirements for each requirement. When a child requirement does not have an estimate, it defaults to 0.

Build your own calculations

However, this is only a subset of what calculations can do.

You can build your own calculations to better suit your needs!

Visual editor

We know that learning a new syntax for a few calculations is not very exciting.

That's why we've introduced a visual editor!

The visual editor represents calculations as a flow diagram where each node is a building block of the calculation. Each node can represent a value, a variable, an operation or a function.

You can click on the root node to change the calculation name (which will change the name of the resulting column).

You can click on placeholder nodes, denoted with a + sign, to add new nodes to the diagram and build the calculation that you need. We try to guide you through the process so that you can build only valid calculations.

You can click on nodes to edit them.

You can right-click nodes to access the context menu and delete them. Please note that when you delete a node, it deletes all its children.

In the end, you should end up with a diagram like the following (or a little more complicated, depending on your needs).

Advanced mode

Finally, you also have the option of building calculations using formulas.

If you have a little time to learn the syntax, it may even be the fastest way to build calculations!

Check out the Calculation Syntax for more details.

  • No labels