The need for highly specialized tools and software to implement a rigorous approach to requirements traceability is at its peak as the complexity of systems (and requirements) continues to grow. A reliable requirements traceability approach is essential. In fact, it ensures that the status of a project in relation to requirements is always documented. This discipline shows how each user requirement is translated into systems and software design. This makes it possible to understand and track implementation, testing, and test results. And above all, traceability provides this capability in a replicable way, without relying on manual effort.
Naturally, tools alone are not the only guarantee of a successful requirements traceability implementation. There are other factors to consider, such as establishing processes to maintain a clear and effective documentation of requirements throughout a project, and to guarantee that each team has access to the relevant requirements at any time. And, of course, you need to instill a requirements traceability mindset within your teams and projects by providing training sessions and support for your teams. However, for this article, we have chosen to focus only on the question of tool selection and more specifically, what capabilities and aspects to consider when selecting requirements traceability tool(s).
First, a little bit of context...
In numerous organizations developing complex systems and software, it’s quite common to see teams working in all-in-platform suites such as IBM Engineering Lifecycle Management and Siemens Polarion ALM. These tools provide highly powerful applications for practices like requirements management, test management, workflow management, reporting, and much more.
However, in some cases, systems and software development teams may be working with separate tools. If we think of concrete examples, we have situations where requirements are created and managed using specialized tools such as IBM DOORS Next or Siemens Polarion REQUIREMENTS. As for tests, they are managed in Xray Test Management for Jira. Then, tasks, issues, and progress are managed in Atlassian Jira, and hardware engineering in PTC Windchill. And we can keep going like that for a while...
Even though each of these tools performs very well, being able to create traceability between requirements and other artifacts becomes more problematic. Indeed, how do you create traceability when your tools are disconnected from each other and working in silos? How can you develop compliant, quality products within reasonable timescales if the tools you work with hinder the establishment of streamlined and seamless processes? There are solutions on the market to resolve these issues, and here are the capabilities you need to consider before picking the one that suits you best.
1) The building of end-to-end traceability across artifacts
The very first thing to look at is if the tool you’ve targeted provides robust and continuous traceability across different artifacts, allowing the creation of links between requirements, design documents, test cases, code, and other elements. The tool must support bidirectional traceability, enabling users to trace both forward and beyond implementation to tests and test results, and backward. Additionally, it should allow the creation of custom relationships between traceability items to adapt to specific project needs.
2) Requirements reusability
The importance of reusability has already been highlighted in an article by our colleague Tom Hollowell. Reuse of requirements refers to the practice of using existing requirements from previous projects or systems in a new project.
It’s a major capability for a requirements traceability tool because reusing a requirement saves time and effort for the teams and contributes to reducing the risk of errors or omissions. In addition, it guarantees the retention of best practices and knowledge, as well as the transmission of this knowledge within the organization and the teams.
The reuse of a requirement that is fully integrated into a traceability context, enables the selection of all the artifacts throughout the lifecycle that are linked to the requirement you wish to reuse. Of course, new validation is still required to guarantee that the existing requirement is also valid in the context of the new project. Nevertheless, the time and effort gained are still considerable. Here again, traceability will play a central role, as it facilitates the navigation among these different artifacts, their selection for new projects, and even the creation of a new development stream in a Global Configurations scenario.
3) Scalability, adaptability, and consistent level of performance
Scalability is another key factor. As a project progresses, the number of requirements
and associated artifacts can considerably increase. Scalable tools must indeed be able to support this growth without degrading performance.
The same applies to the addition of new users as new team members join a project. And if you're working on large-scale projects, with all their complexities, your tool should be able to manage intricate relationships and links between requirements. And of course, we can't address the question of scalability without mentioning its long-term economic advantage. A scalable tool considerably reduces the need for upgrades and replacements.
4) The technology behind its integration with other tools
Overall, it is preferable that the tool integrates seamlessly with other tools in your development ecosystem, such as issue management tools, workflow management, design tools, development tools, test management, review tools, and many others.
But before considering any solution, you have to decide the type of technology you need for the integration. We already had the opportunity to discuss the choice of technology and the question of integration in a previous article. Indeed, we examined the difference between a Linked Data-oriented approach and data synchronization. The difference may not seem obvious, but the impact each one has on your data’s integrity and consistency is detrimental, so let's consider this example again.
Unlike linked data solutions, data synchronization solutions copy data between repositories periodically, ensuring data consistency only at specific moments and they require a third-party application for mapping fields and managing schedules. In contrast, linked data solutions avoid copying data by directly referencing the source repository, ensuring always up-to-date, accurate information without a synchronization engine. Linking inherently shares the latest data, eliminating issues of outdated copies.
Comprehensive integration minimizes the risk of data silos and promotes seamless workflows.
5) Version control and change management features
Version control and change management are also central in requirements traceability, as they enable changes to be monitored and documented with full transparency and accountability. It allows teams to consult older versions, if necessary, to assess the impact that certain changes can have, and to maintain consistency between related artifacts. This enables effective collaboration and coordination between teams so that they can work on the same requirements at the same time, without conflicts or loss of information. Your requirements traceability solution must therefore be able to track the slightest change so that you can respond promptly.
6) Visualization and reporting capabilities
Visualization features and reporting capabilities also have an equally important role to play in ensuring the efficient implementation of requirements traceability. Your tool should ideally offer matrices, hierarchical views, graphs, or any kind of dashboard to display traceability relationships between requirements, engineering, and test artifacts. They summarize project progress help teams identify coverage gaps and monitor fulfillment status.
Advanced search, filtering, and customizable reporting enable quick access to specific data and support detailed audits, compliance reviews, and management oversight. In regulated industries, it's almost imperative to work with tools that ensure compliance with stringent standards like ISO 26262, DO-178C, or FDA guidelines. Indeed, they help provide auditable traceability and alignment with mandatory documentation requirements.
7) Security, especially data security
Data integrity and security are non-negotiable in projects, in highly-regulated industries. So, the tool you will deploy should ensure the security of your data, preventing unauthorized access and information leaks. A traceability tool should provide reliable support to maintain data integrity. Security features such as authentication and role-based access control are necessary to protect sensitive project data.
8) Favorable conditions for collaboration
Collaboration and accessibility are paramount, especially for distributed teams as they encourage teamwork, unify and integrate everyone's efforts, and reinforce stakeholder engagement. And this leads to better decision-making, more effective problem-solving higher product or service quality, etc. We all know the positive effects of optimal collaboration, but in practical terms, what kind of functionalities does this imply for traceability requirements tools?
Well, the tools in question should enable multiple users to collaborate simultaneously on traceability links while offering robust permissions to control access and editing rights. Your teams need to be notified and alerted of any changes, updates, or important activities on these links. Finally, leaving annotations and comments directly on requirements is an interesting feature for such tools, as it facilitates discussion and feedback.
Keep also in mind that web-based access can further enhance flexibility for remote team members.
9) Usability, ergonomics, and friendly user experience
Usability, or more precisely, the ease with which the user takes control of the tool, its intuitiveness, and ergonomics are essential considerations, but this applies to all tools, not just requirements traceability tools. A usable tool, with an appealing, intuitive interface, reduces learning time, increases satisfaction and, in the long term, productivity. For the domain we're working on today, we're talking about features such as customizable dashboards, advanced search and filter options, the indispensable drag-and-drop function, but also comprehensive help resources and documentation to guide the teams all along their tasks.
Usability also implies a seamless integration with other tools, making it possible, for example, to manage requirements traceability links in an interface other than the request management tool.
10) Customization Capabilities
Last but not least, customization can significantly enhance the tool’s utility. The ability to tailor workflows, traceability rules, and data models to fit specific domain requirements ensures the tool adapts to your project rather than forcing you to adapt to the tool. Support for plugins or extensions can provide additional functionality to address evolving needs.
Conclusion
And that's it for our selection of the most important features requirements traceability tools should include for optimal results. Of course, we could have mentioned many other capabilities, and we're well aware that there are other factors specific to each configuration and each organization that need also to be taken into account. This list reflects the needs and topics we felt were most important and common to all. And one last thing, we also intended to keep the focus only on the topics and technologies we have the greatest expertise in.
Reference for the production of this post: Tom Hollowell, Choosing a Requirements Traceability Tool: A Comprehensive Guide, Medium.
Familiar with SodiusWillert’s Requirements Traceability Tools?
We know that the building of effective traceability paths can be tedious, especially when tools and processes are incomplete and error-prone. At SodiusWillert, we are dedicated to facilitating traceability by providing solutions enabling automation, engineering data interoperability, and high levels of data security. Our teams work relentlessly on solutions that enable you to collaborate more effectively and create solid and continuous links between requirements and relevant stakeholders. Plus, we offer solutions that you can customize and extend to suit your needs.
➡️ Find out our Requirements Traceability Solutions
➡️ Have a question? We'd love to hear from you!
Leave us your comment