Overview of YAKINDU Traceability

What is requirements traceability?

Traceability management is required in several industries, e.g., the automotive industry, to comply with legal requirements such as ISO 26262. Traceability deals with documenting the life of a requirement by creating bidirectional links between various associated artifacts, such as requirements, architectural components, source code, test cases, and test results. To benefit from the advantages of traceability it is necessary to be able to create traceability across all tools which are involved in the development process.

Watch this video to get a first look on YAKINDU Traceability, and discover how it can help you maintain traceability in your projects: YAKINDU Traceability – An overview.

What is YAKINDU Traceability?

YAKINDU Traceability (YT) enables easy and well-arranged traceability management across all tools. It connects to the tools involved in the development process by means of custom tool adapters which are able to access the data-representing artifacts of the development process and related traceability information. These adapters do not only read or write data from those tools, they even support navigation across tools. As an example, by means of YT, an Autosar component designed in Enterprise Architect is only two clicks away from its specification in PTC Integrity (and vice versa).

YT Architecture

YT Architecture

Functional overview of YAKINDU Traceability

YT offers several possibilities to evaluate the data gathered from connected tools and the link information stored in YT itself, e.g., in the form of a coverage report or a validation of the links.

As YT unifies access to development artifacts across the whole tool chain, it supports you in various use cases of your daily work:

YT combines several approaches to manage associations between development artifacts:

  • YT supports non-invasive tracing, i.e., YT stores the trace information in its own store and does not change the original data sources.
  • Some adapters, such as the Eclipse CDT adapter, Enterprise Architect adapter, MS Excel adapter, or text file adapter also support invasive tracing, which means that YT stores link information in the original data source, e.g., it adds a comment to a C function holding the ID of a linked requirement.
  • YT is able to adopt link information from the tools involved, e.g., a link between IBM Rational DOORS requirements or a relation between UML artifacts may be adopted as traceability links.
  • YT can also derive links from matching attributes of artifacts originating from different tools, e.g., if the test case ID of a test result provided in an XML file matches the ID of a test case specified in an Excel sheet. Dependent on development process and tools involved, YT enables you to fully configure which types of artifacts are relevant and how the links between those artifacts are managed.

For those links whose lifecycle is managed by YT (i.e., neither derived nor adopted, but stored by YT), several YT functions ease link creation: YT recognizes selections in external tools and shows the selected artifacts in a selection history; it is possible to search for specific artifacts of different tools and you can store often-used artifacts in a favorites list and then re-use them for creating links.

For those links which are derived based on attributes, it is possible to create links by manipulating the original data in their specific tools. Imagine a test case in Excel with an identifier in one column and a concatenation of identifiers of related requirements in another column. If a so-called attribute mapping is configured, YT iterates over these columns and – if the attributes match – creates links between the test cases and the requirements, independent of the tool the requirements originate from. This means that you do not have to switch to YT to create any links, but instead you can work in, say, Excel and let YT derive the links automatically. The same is possible with the Eclipse CDT adapter.

As artifacts and circumstances can change during work, it is sometimes necessary to change existing links. YT allows you to

  • delete one or more links directly,
  • change the link end(s) of a specific link,
  • replace an artifact in the traceability graph completely (i.e., replace it in all links by another artifact).

YT also provides you with different visualizations of existing links:

  • The YT Explorer shows you all existing links in a tree structure based on different groupings, e.g., based on the type of artifacts or based on link types. You can expand the various nodes to see what is linked to what.
  • The YT Overview displays a graph of the artifact you selected elsewhere in YT together with the artifacts it is linked to directly or indirectly, up to a certain depth. Selecting a different node in the graph focuses on a different artifact and displays its links. The YT overview supports various different viewing modes and options. For example, you can change the depth of the graph, e.g., to restrict it to only display directly-linked neighbors of the selected artifact, or alternatively to not only see linked artifacts, but also linked artifacts of linked artifacts.

YT Explorer and YT Overview

YT Explorer and YT Overview

As it is often necessary to edit some artifacts or to check for their correctness, YT offers you an easy way to navigate artifacts: In all views displaying artifacts, you can double click on an artifact to open and select it in its native tool.

Validations: identifying project changes

Data often changes. Therefore, it is necessary to validate if they are still valid. In the context of traceability this means to validate if the links between changed artifacts are still valid. YT provides three validations to check the data validity:

As an addition, the configuration of the traceability project could have been changed. The configuration consistency validation detects potential errors and inconsistencies in the configuration of YT.

All three types of validations offer you various quick fixes that help you to re-establish the validity of the data.

Analysis: observing the traceability status

In order to analyze the current traceability status, YT provides several different means.

The YT Dashboard displays a visualization of the current traceability status including the percentage of linked artifacts and existing traces between specific artifact types. This feature provides you with an up-to-date overview of your project. In addition to the pie chart visualization, it is possible to do a drill-down from the pie chart, i.e., if you select a pie section, a table containing the affected artifacts is shown.

YT Dashboard

YT Dashboard

YT also provides you with reporting functionality. By configuring individual report templates you can find answers to your own specific questions concerning the traceability data.

Exports: creating snapshots

Sometimes it is necessary to create a snapshot of your current traceability model. For this purpose, you can extract the entirety of data visible to YT – the configuration, all artifacts, and all links – and export everything to external files. The first option is to export a model snapshot . Model snapshots cannot only be exported, they can also be imported back into YT, and they can even be compared among each other.

A second option is to export everything in the form of CSV files. As these CSV files are designed with referential integrity in mind, they can easily be imported into any RDMBS (Relational Database Management System) for further evaluations. CSV snapshots are „export only”; they are not intended to be read back into YT again.

Especially for visualization purposes, it is also possible to export a graph representing the configuration of YT or a graph representing all linked artifacts. This helps you for example to discuss configurations with colleagues or to get an overview on the whole traceability project.

Tool integration: provided adapters

As explained above, YT allows to access data from a multitude of tools via adapters.

The list of adapters is available on the itemis website. Your tool is not included yet? Please get in touch with us!

Batch mode execution

In order to automatically perform certain tasks on a regular basis, e.g., creating reports etc., you can run YAKINDU Traceability in batch mode, which does not require any human interaction. This way, you can execute YT from a script or from a continuous integration (CI) server, like Jenkins.