Agile requirements management with Jama

In 2017, I gave two talks in Berlin, at two conferences, but both about Jama Software. Jama is a web-based tool for product development.
On the morning of 20.9.2017, I gave a speech at the Modern RE the lecture with the title So light that you can't even see the tool: Jama in agile development.
On the afternoon of 20.9.2017, I gave a speech at the medini analyze European User Conference the lecture Turning your product development process into a competitive advantage.
For the readers of SE-Trends, the content of the first presentation is probably more interesting. I will explain below why Jama is suitable for agile requirements management.
Jama Software
Some of you may already be familiar with Jama: like DOORS and Polarion, it is software that is used for requirements management. The software is web-based. In addition to RE, it also supports test, workflow and product line management. But in my opinion, it is suitable for agile work for two reasons: Firstly, a suitable data model can be configured quickly and easily, which uses a solid and easy-to-understand traceability concept. Secondly, it has a built-in social communication platform that works at all levels. Both are essential for agile RE.
I myself discovered Jama about a year ago and consider it to be one of the best RE tools currently available on the market. I currently work as a freelance consultant for Jama Software.
Data model and traceability
Several data models can be defined in Jama, which can then be used for projects. All aspects of the data model can be configured. A data model for agile development is shown below:

There are a number of element types, in this case five. There are relationships between these elements represented by arrows. In contrast to some other tools, there is no clear semantics of the relationships with regard to the data in the model:
Completeness: Solid lines are used for the completeness analysis: There must then be at least one child element in the model, or exactly one parent element. For example, a specific epic must have at least one test case, and there must be no test case without a parent element.
No completeness analysis is performed for dashed relationships, at least not automatically.
Changes: This aspect of traces is particularly important for agile working. The elements of a relationship are labeled "upstream" and "downstream". If the upstream element changes, the downstream element is marked as suspect. We will see why this is important in a moment.
Using traceability for agile working
As described in the article about agile system development as already mentioned, you have to be able to react quickly to changes in an agile manner. But not to every change, of course. Let's take an electric car as an example. There may be the user requirement "Range: 200 km". Based on this requirement, it may be decided to use a battery with 30 kWh. If the battery is changed to 35 kWh, this change is unimportant for the user requirement (upstream). However, if the range is extended to 250 km, the capacity of the battery must be checked and adjusted if necessary (downstream). Therefore, when changes are made, all elements that are downstream are marked as suspect.
As this mechanism applies consistently to all links in Jama, the behavior is easy for users to understand and makes the handling of changes very robust. Incidentally, it is possible to configure which attributes trigger a suspect. For example, this should not happen if the priority of an element changes. If the requirement text changes, however, it should.
Social communication
The second aspect that is important for agile RE is communication. In Jama, a discussion can be linked to each element. It is helpful that discussions can also be categorized, for example as questions or decisions. The system keeps track of whether decisions are open or questions are unanswered. This automatically results in task lists from the discussions.

The screenshot shows who has edited and commented on a request in the past, or who has been mentioned in the communication. The entire communication is listed on the right, whereby an answered question can be seen here (hence the blue triangle, which is yellow for unanswered questions).
Thanks to the good integration, there is hardly any friction in communication, and completed questions and decisions are retained and easy to find. This not only helps with agile development, but also helps with compliance in the development of safety-critical systems, for example through the automatic documentation of decisions.
Of course, the communication also triggers e-mail notifications. Replies to the e-mail are automatically added to the communication. The communication shown here is informal and can be used spontaneously for discussion. Formal reviews can also be initiated, in which the review process takes place via similar communication (also useful for safety-critical developments).
Further features
The two characteristics of Jama shown here are of central importance for agile working. There are many more. A solid test framework makes it possible to quickly run through manual or automatic test cycles. And last but not least, the good user interface and intuitive operation ensure that the tool never gets in the way of your work.
Jama in system development
What is particularly exciting (at least for SE trends), however, is that Jama is also responsible for development after IEC 61508 can be used for the development of safety-critical systems. All the features required for this are available. Jama is therefore ideally suited for agile system development and is used accordingly.






