Rational Doors Synchronization of data between Parent and child Modules

Hi All,

 

I have a below requirement from client in Rational DOORs.

 

I have parent Module name "XYZ" with 500 requirements. I have child modules namely "module1","module2", some of the requirements from parent module "XYZ" are common for child modules.

 

Below are the questions:

 

1. Can we copy/fetch requirements from parent module to child module.( Example:  can we copy first 100 requirements from parent to child module "module1"). There should be complete visibility of these 100 requirements with all their column, properties, attributes, etc. in child "module 1".

 

2. When Changes done in parent module "XYZ" requirements should be reflected in child module as well i.e. Synchronization must be there in parent and child module.(example: As we have copied and made child Module "module1" from parent module "XYZ" first 100 requirements.  Is this possible ?

 

 

 

Thank you,

Kunal Nigade.


Kunal Nigade - Fri Aug 07 08:51:41 EDT 2015

Re: Rational Doors Synchronization of data between Parent and child Modules
donnacruickshank - Mon Aug 10 07:22:33 EDT 2015

Hi Kunal,

                  The Rational DOORS database doesn't support the notion of Parent/Child Modules or shared objects between modules.

 

You can copy objects from module A to module B but the copied objects are independent of each other. Changes in module A will not to reflected in module B

 

I think the functionality you are looking for is the idea of shared artifacts that is feature of DOORS NG

 

https://jazz.net/help-dev/clm/index.jsp?re=1&topic=/com.ibm.rational.rrm.help.doc/topics/c_about_rrc.html&scope=null

As stated in the article, if you have a DOORS license, you are entitled to a DOORS NG license.

 

Thanks,

Donna

 

Re: Rational Doors Synchronization of data between Parent and child Modules
Kunal Nigade - Mon Aug 10 07:56:32 EDT 2015

donnacruickshank - Mon Aug 10 07:22:33 EDT 2015

Hi Kunal,

                  The Rational DOORS database doesn't support the notion of Parent/Child Modules or shared objects between modules.

 

You can copy objects from module A to module B but the copied objects are independent of each other. Changes in module A will not to reflected in module B

 

I think the functionality you are looking for is the idea of shared artifacts that is feature of DOORS NG

 

https://jazz.net/help-dev/clm/index.jsp?re=1&topic=/com.ibm.rational.rrm.help.doc/topics/c_about_rrc.html&scope=null

As stated in the article, if you have a DOORS license, you are entitled to a DOORS NG license.

 

Thanks,

Donna

 

Hi Donna,

 

Thank you for your replay...

 

I was thinking whether we can achieve this in Rational Doors using DXL scripts..?

Re: Rational Doors Synchronization of data between Parent and child Modules
donnacruickshank - Mon Aug 10 08:01:42 EDT 2015

Kunal Nigade - Mon Aug 10 07:56:32 EDT 2015

Hi Donna,

 

Thank you for your replay...

 

I was thinking whether we can achieve this in Rational Doors using DXL scripts..?

You could link the objects and display required attribute values of the "parent" module in the analysis column.

Re: Rational Doors Synchronization of data between Parent and child Modules
Bill Steele - Mon Aug 10 08:27:14 EDT 2015

Hi Kunal,

 

Your requirements are a Use Case of the product "BranchManager for DOORS":  http://it-qbase.eu/products/branchmanager-for-doors/

 

A parent module can be branched to create child modules that are identical to the parent.  Changes in one can be merged back into the other at will, in either direction.  There is also a very powerful Compare feature to help track changes and locate differences.

 

Thanks,

Bill Steele, IT-QBase GmbH

Re: Rational Doors Synchronization of data between Parent and child Modules
llandale - Mon Aug 10 16:29:27 EDT 2015

Let me go out on a limb here: Your project needs to adopt the mind set that these are different requirements with identical content.  Folks reading the sub-system specs don't care if a requirement is identical to the system spec or not.  If your project cannot adopt that mind set then your project is using the wrong tool.

DOORS NG indeed has the notion of a single requirement .err.. "Artifact' in multiple specs.

You could link the specific child object to the parent object using some kind of "Identical" link; or have a standard "satisfies" link and have a child Boolean attribute that says "identical".  You would indeed need some DXL to keep these objects identical in content.  A nightly scheduled batch script seems the to me the default choice with some mechanism for some "real time" apparent updates for users who cannot wait.

I remind you of some pitfalls.

  • When the parent says "The system shall" the child requirements will want to say "The sub-system A shall" and "The sub-system B shall".
  • The child requirements must still be "verified"; even if only by "Inspection" of the parent requirement results.
  • It will often be the case that the Parent requirement will be "verified" at the sub-system(s) level.
  • Child requirement documents often have their own RCRBs and owners won't like their requirements being auto-updated by an overbearing central government ..err.. system folks uncaring of the sub-systems.
  • Updating of the child documents must include notification to the child document owners.

-Louie

Re: Rational Doors Synchronization of data between Parent and child Modules
PMiller - Mon Aug 10 18:18:45 EDT 2015

Have been down this path before for a previous employer, albeit a long time ago. 

The key qualifier in your post is that ".....some of the requirements from parent module "XYZ" are common for child modules" - so some parent and child objects will need to be synchronised and others will not, and that is where I encountered this biggest problem in trying to get this to work.

Louie has shown in his post that there are if's, but's and conditions (pifalls) that need to be taken into consideration. 

My addition to that is that, yes, with DXL you can do this but it will require some significant design to model the logic that you will need to differentiate between handling objects that are being synchronised and those that are not, as well as catering for exceptions which will pop up their ugly heads up as you make discoveries during design and later when it is being used. Some of that logic will require humans to obey some procedural rules whilst DXL does the rest, the required co-operation of the humans will represent a challenge. Some significant DXL codeing will be needed and that DXL code will need to be supported over time because it will take several iterations to get it right and no doubt enhancements will need to be be added along the way as users ask the question "......wouldn't it be nice if it could also do XYZ".

The outcome of my crack at this was that it failed - why - because it needed way too much effort to design and verify, as well as write procedures for humans, train humans, appease humans whingeing about imposed procedural or DXL constraints, and so on and so on. Nice idea, it just became way too impractical as the business was not prepared to support and fund the effort needed to make this work. DOORS NG may offer a partial solution here, I'm not convinced that it will cover all of the logic that you will need to make this workable for your specific situation.

Paul Miller
Melbourne Australia

 

Re: Rational Doors Synchronization of data between Parent and child Modules
Kunal Nigade - Tue Aug 11 01:47:02 EDT 2015

PMiller - Mon Aug 10 18:18:45 EDT 2015

Have been down this path before for a previous employer, albeit a long time ago. 

The key qualifier in your post is that ".....some of the requirements from parent module "XYZ" are common for child modules" - so some parent and child objects will need to be synchronised and others will not, and that is where I encountered this biggest problem in trying to get this to work.

Louie has shown in his post that there are if's, but's and conditions (pifalls) that need to be taken into consideration. 

My addition to that is that, yes, with DXL you can do this but it will require some significant design to model the logic that you will need to differentiate between handling objects that are being synchronised and those that are not, as well as catering for exceptions which will pop up their ugly heads up as you make discoveries during design and later when it is being used. Some of that logic will require humans to obey some procedural rules whilst DXL does the rest, the required co-operation of the humans will represent a challenge. Some significant DXL codeing will be needed and that DXL code will need to be supported over time because it will take several iterations to get it right and no doubt enhancements will need to be be added along the way as users ask the question "......wouldn't it be nice if it could also do XYZ".

The outcome of my crack at this was that it failed - why - because it needed way too much effort to design and verify, as well as write procedures for humans, train humans, appease humans whingeing about imposed procedural or DXL constraints, and so on and so on. Nice idea, it just became way too impractical as the business was not prepared to support and fund the effort needed to make this work. DOORS NG may offer a partial solution here, I'm not convinced that it will cover all of the logic that you will need to make this workable for your specific situation.

Paul Miller
Melbourne Australia

 

Thank you Paul...

 

I agree with what you say.....