DOORS Metrics Collector across multiple modules?

Has anyone built something via DXL that could be an example noted below and would be willing to share ?

We would love to have DOORs module go off to multiple DOORS module and present the metrics/statistics for each of those modules.

    For Example, we have the requirements documents for around 5 subsystems in our system. What we want DOORs to do is go to each of the requirement document and get the metrics from each and present it as a report.
    Few of the metrics(for each requirement) that we are looking for are:
1. No of requirements
2. No of requirements with In-links from all modules
3. No of requirements with In-links from a specific module
4. No of requirements with Out-links from all modules
5. No of requirements with Out-links from a specific  module.

    It would be helpful if we can get a basic DXL to do the above. We could build up on this based on our requirements.
SystemAdmin - Thu Apr 26 11:52:12 EDT 2012

Re: DOORS Metrics Collector across multiple modules?
kbmurphy - Thu Apr 26 13:21:02 EDT 2012

I've done this, almost exactly how you specify. Not willing to share, though.

One problem is: What do you consider to be a requirement? Are you counting shall statements, or where some attribute=="Requirement", etc. Your methodology will likely be different than mine.

Anyhow, I thought you should know that this is possible, and there are elegant solutions around.

Good luck.

Re: DOORS Metrics Collector across multiple modules?
cliff.sadler - Thu Apr 26 15:49:18 EDT 2012

I have accomplished something pretty similar, using pre-defined views which we like to have in the modules anyways, and a script that loads a view, counts the objects that matched, and goes on to the next view, spitting the results into the DXL Interaction window. My users run that all the time to see where they are with orphans, spinsters, and tramps. Quick and easy. I use copyview.dxl push the views to new modules as they come online.

I have also used Rational Publishing Engine to do a similar thing, but the output is going directly to a nicely formatted document. Pretty easy to concatonate a number of RPE runs to build a report across the entire project. I'm thinking about doing a paper on this, so stay tuned.
 

pragma runLim, 0
Module m = current 
Object o = null 
int reqtCount = 0
 
load view "Metric 1-Traced Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 1-Traced Requirements"
 
reqtCount=0
load view "Metric 2-Parents w/ no Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 2-Parents w/ no Children"
 
reqtCount=0
load view "Metric 3-Orphans w/ Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 3-Orphans w/ Children"
 
reqtCount=0
load view "Metric 4-Requirements w/ no links"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 4-Requirements w/ no links"
 
reqtCount=0
load view "Metric 5-Total Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 5-Total Requirements"

 


I'll let you guess what the filters should be for the different views.

 

Re: DOORS Metrics Collector across multiple modules?
cliff.sadler - Thu Apr 26 15:58:25 EDT 2012

cliff.sadler - Thu Apr 26 15:49:18 EDT 2012

I have accomplished something pretty similar, using pre-defined views which we like to have in the modules anyways, and a script that loads a view, counts the objects that matched, and goes on to the next view, spitting the results into the DXL Interaction window. My users run that all the time to see where they are with orphans, spinsters, and tramps. Quick and easy. I use copyview.dxl push the views to new modules as they come online.

I have also used Rational Publishing Engine to do a similar thing, but the output is going directly to a nicely formatted document. Pretty easy to concatonate a number of RPE runs to build a report across the entire project. I'm thinking about doing a paper on this, so stay tuned.
 

pragma runLim, 0
Module m = current 
Object o = null 
int reqtCount = 0
 
load view "Metric 1-Traced Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 1-Traced Requirements"
 
reqtCount=0
load view "Metric 2-Parents w/ no Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 2-Parents w/ no Children"
 
reqtCount=0
load view "Metric 3-Orphans w/ Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 3-Orphans w/ Children"
 
reqtCount=0
load view "Metric 4-Requirements w/ no links"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 4-Requirements w/ no links"
 
reqtCount=0
load view "Metric 5-Total Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 5-Total Requirements"

 


I'll let you guess what the filters should be for the different views.

 

and, this example outputs the results into an infobox for each metric. You could just use a print statement to put it into the Interaction Window.

Re: DOORS Metrics Collector across multiple modules?
SystemAdmin - Thu Apr 26 20:42:32 EDT 2012

Out of curiosity - once you have collected all of these listed metrics, what will you do with them? Or put another way, what will they tell you in terms of valuable corrective feedback into a project? Particularly the metrics regarding the numbers of in\out links.


Paul Miller
Melbourne, Australia

Re: DOORS Metrics Collector across multiple modules?
mcnairk - Fri Apr 27 08:23:49 EDT 2012

cliff.sadler - Thu Apr 26 15:49:18 EDT 2012

I have accomplished something pretty similar, using pre-defined views which we like to have in the modules anyways, and a script that loads a view, counts the objects that matched, and goes on to the next view, spitting the results into the DXL Interaction window. My users run that all the time to see where they are with orphans, spinsters, and tramps. Quick and easy. I use copyview.dxl push the views to new modules as they come online.

I have also used Rational Publishing Engine to do a similar thing, but the output is going directly to a nicely formatted document. Pretty easy to concatonate a number of RPE runs to build a report across the entire project. I'm thinking about doing a paper on this, so stay tuned.
 

pragma runLim, 0
Module m = current 
Object o = null 
int reqtCount = 0
 
load view "Metric 1-Traced Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 1-Traced Requirements"
 
reqtCount=0
load view "Metric 2-Parents w/ no Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 2-Parents w/ no Children"
 
reqtCount=0
load view "Metric 3-Orphans w/ Children"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 3-Orphans w/ Children"
 
reqtCount=0
load view "Metric 4-Requirements w/ no links"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 4-Requirements w/ no links"
 
reqtCount=0
load view "Metric 5-Total Requirements"
for o in m do { 
reqtCount ++ 
} 
infoBox "There are " reqtCount " matching requirements in Metric 5-Total Requirements"

 


I'll let you guess what the filters should be for the different views.

 

Some of my metrics reports use this approach but I output the results to a cumulative excel spreadsheet, with a chart to plot trends over time, e.g. requirements that don't have linked tests....

Ken.

Re: DOORS Metrics Collector across multiple modules?
VaniB - Fri May 13 03:12:22 EDT 2016

mcnairk - Fri Apr 27 08:23:49 EDT 2012
Some of my metrics reports use this approach but I output the results to a cumulative excel spreadsheet, with a chart to plot trends over time, e.g. requirements that don't have linked tests....

Ken.

Could you please share the DXL script to collect the Requirement metrics in DOORS