by Rishikesh Agam
In this article we will explore how an Engineering Insights (ENI) view author can perform the visual reporting based on the Link Validity data.
Link Validity
The link validity indicates whether the meaning of a link is satisfied by the content of the two artifacts connected by the link. An artifact’s content is the set of fields and attributes (summary, description, and so on) that define its meaning. Artifact metadata, such as system-generated properties (creator, creation date, last modification date, priority), does not affect link validity status.
Here is how the link validity is assessed:
Contents of artifact version X + link type + contents of artifact
version Y => [has a] validity status.
The validity status of the links between artifacts can have one of the following values:
- Suspect
The system sets the links as suspect when they are new or unknown. A user must verify whether the contents of both the artifacts satisfy the intended meaning of the link.
If you cannot determine that, leave the link as suspect and analyze it more later.
- Valid
A user sets this status when the contents of the two artifacts satisfy the meaning of the link that connects them. For example, consider a “validates” link between a test case and a requirement. If the test case validates the requirement, the relationship is valid.
- Invalid
A user sets this status when the contents of the two artifacts do not satisfy the intended meaning of the link that connects them. For example, you know that a test case no longer validates a requirement. Set the status to invalid, and later, you (or another member of your team) might change the test case (the downstream artifact) to make the link valid.
Note: For changing the status of the Link Validity, user should have permission for the Set link validity status action.
In applications such as IBM Engineering DOORS Next and IBM Engineering Test Management (ETM), users can set the value of the Link Validity status of relationships to Valid or Invalid. This information is available only in projects that are enabled for configurations.
Image: Link Validity status of DNG links in ETM application
Example: Consider a test case that validates a requirement. If you change the contents of either artifact, the status of the link becomes suspect. You must examine whether the contents of the two artifacts meet the intended meaning of the link (does that test case validate that requirement?), and likely set a new status for that link. The link validity status is updated automatically in the respective applications.
Visual Reporting based on Link Validity
Prerequisites:
- Link Validity should be enabled in AM, QM, and RM project areas. Please refer Enabling link validity in AM, QM, and RM project areas for the details.
- To fetch link validity information from LQE, ask a Lifecycle Query Engine (LQE) administrator to assign one of the following permissions to read data in the JTS Link Validity Resources (TRS 2.0) data group.
- Add the Everyone group to the JTS Link Validity Resources (TRS2.0) data group.
- Set specific users to the JTS Link Validity Resources (TRS2.0) data group.
- Create a group with specific users and add the group to the JTS Link Validity Resources (TRS2.0) data group.
Note: For detailed information about assigning user permissions, see Managing user access to data sources in Lifecycle Query Engine.
ENI enables view authors to configure the visualisation (appearance and stroke property) of the links between the linked containers based on the value of the Link Validity status.
Links between the nodes of the container in the view that satisfy the filter conditions are annotated to show the value (Valid and Invalid) of Link Validity status by changing the Stroke Property of the individual link. Stroke property includes color and width among the other properties.
View author can access the Link Validity dialog from the following locations in ENI:
- While creating a new linked container, in the third step of Show links to wizard.
- For existing linked container, right-click the arrow between the linked containers, and then select the Edit Link Validity option.
- For existing linked container, click the dotted arrow between the linked containers to go to the Link section in the Properties pane.
Link Validity dialog
In the Link Validity dialog, view author can do the following settings:
- Link Validity Value: From the Link Validity Value list, select the appropriate value such as Ignore, Required, Optional, or Does Not Exist.
- Ignore
- The source container is not filtered by any link validity data.
- Links are not annotated based on any link validity data.
- Optional
- The source container is not filtered by the link validity data.
- Links displayed are annotated with the respective colors for valid and invalid links.
- Required
- The source container is filtered by the presence of the link validity data.
- Links displayed are annotated with the respective colors for valid and invalid links.
- Does Not Exist
- The source container is filtered to show only resources with no link or a link that is neither valid nor invalid.
- Links are not annotated based on any link validity data.
- Ignore
- Stroke property: For valid and invalid links, set the Stroke property.
Note: The default color is green for valid links. And the default color is red for invalid links. Links that have Unknown status is annotated with connection’s default color.
- Conditions:
- Add filter conditions for the Link Validity attributes such as Description, Last Modification, Modified By, and Status.
- There are two different UI for System Artifact type source container and Custom Artifact type source container.
Note: The source container also gets filtered based on the Link Validity conditions.
Image-1: Link Validity dialog (for System Artifact type source container)
Image-2: Link Validity dialog (for Custom Artifact type source container)
Sample use-cases after applying filters based on Link Validity
- Link Validity: Ignore (the default)
- Link Validity: Optional and Conditions: None
- Link Validity: Optional and Conditions: Status = Valid
- Link Validity: Required and Conditions: None
- Source container artifact with missing link is filtered out.
- Source container artifact with links but without a status of valid/invalid is filtered out.
- Link Validity: Required and Conditions: Status = Invalid
- Link Validity: Does Not Exist
- We will get all the links that are not set to either “Valid” or “Invalid”.
- This is a useful method to fetch a ‘to do’ list of links that have not been set/checked for its validity.
I hope this article has given you an idea about how filters can be applied in ENI views based on the Link Validity data.
Rishikesh Agam (Rishi)
Senior Developer – IBM Engineering Lifecycle Optimization – Engineering Insights (ENI)
[email protected]