DNG - Concatenation of hierarchical requirement statements
In many requirements documents there is a sequential set of requirements such as
3.1 Unauthorised vehicles shall
3.1.1 be prevented from accessing
3.1.1.1 Footpaths
3.1.1.2 Works facilities
When imported to DNG they can be arranged hierarchically in the module
Traceability links to 3.1.1.1 only shows the word 'footpaths'
Are there any tricks in DNG or JRS for concatenating these statements when they are reported in traceability reports ?
In DOORS Classic this was quite easy using DXL
Accepted answer
Hi Sean,
What I have done with my clients is to create Parent/Child links between base artefacts, then you can display them in the various views and in reports etc. I did this pretty easily by exporting the Module, and then renaming the parentBinding column to something like RefID, and importing just that column back into DNG. Then I used Link By Attribute to create Child Of links using the imported RefID column.
The only thing with this approach is that parentBinding will also contain values pointing to Information and Heading artefacts. In my case, I strictly wanted requirement parent/child only, so the easiest way I found to correct this was to filter the view so I only had Heading and Information, then use Link By attribute and an empty field to delete all Parent Of links that were not present in the empty field (i.e. all of them!).
Comments
Thanks for the suggestion Davyd.
If the parentBinding information were exposed by JRS query language (or perhaps the RPE schema) that would be ideal.
Both section and parentBinding are module local calculated elements, and will change depending on the arrangement of the requirements in the Module.
This means it would never be an attribute of the base artefact in the JRS, you could only ever see it within a Module context.
Yes that is true.
If DNG allowed a way for base artifacts to report information about their module context in the case that they only appear in one module (which is true 99% of the time) it would be useful.
Is there any way to run Link By Attribute on more than 25 base artifacts at a time?
When they are in a module you can run LBR on all the artifacts but that creates module context links.
You can get information about module content - if you use the "Collection or Module" filter in Report Builder then any links you display will be module local.
In terms of doing the actual link, from the Folders view you can increase the number of artefacts displayed to 200, and then do 200 Link By Attribute at a time. Still not a huge number but doesn't take long.
Additionally, you can export the requirements and then use the {LINK id=...} format in a spreadsheet column to do the actual links on import. Requires some spreadsheet jockeying but pretty easily done with a CONCAT function
2 other answers
^Thanks.
The problem is that when doing traceability reports using DNG Views from linked artifacts the traceability view only shows the artifact at the other end of the link.
Here is the object hierarchy for 4 objects:-
Unauthorised vehicles shall
be prevented from accessing
Footpaths <----------
Works facilities <----------
The published traceability report from the other module does not make any sense without the context.
Users can follow the link to get context while working in DOORS but published reports lose the context.
I was hoping there might be a way with JRS scripting to get the concatenated requirements statement.
Maybe even RPE would allow some kind of traversal up the object hierarchy at the other end of the link.