Copy requirements within a module to auto update requirements in another module
2 answers
I have seen customers use an external script (could be python or java or your favorite language) that use OSLC APIs to find artifacts that match certain criteria and update them. For example:
* update parent requirement 'start' attribute to match earliest child 'done' date
* update parent requirement 'done' attribute to match latest child 'done' date
There is no built-in facility to do this.
Hi
DOORS Next lets you reuse the same requirement in more than one module, with reuse you only actually have one requirement definition which is displayed in whichever modules you put it, showing attributes from one definition. The actual requirement definition which holds the attributes is called the core artifact, and can be source/target of links, and where the artifact is reused in a module each reuse can also be a different source/target for links. In general you would link either to core artifacts or to module artifacts, not a mixture. If you edit attributes on any of the reuse instances these modifications only modify the core artifact, so all reuse instances will immediately (and always) display the latest attribute values from the core artifact.
If you already have a module that you want to copy in some way to do reuse, doing this is described in the KnowledgeCenter https://www.ibm.com/support/knowledgecenter/SSYMRC_7.0.2/com.ibm.rational.rrm.help.doc/topics/t_copy_module.html - this is for 7.0.2 but the capability has been in DOORS Next for a long time.
There are four basic ways of copying a module:
- Duplicate headings and artifacts - this is a full copy, with no reuse - new artifacts are created for everything in the module
- Duplicate headings and reuse artifacts - this only creates new artifacts for the headings, and the other artifacts in the module are all reused - reading your question this seems the most likely to meet your needs
- Duplicate artifacts and reuse headings - - this only creates new artifacts for the non-headings, and the heading artifacts in the module are all reused - note as headings are reused if you change the text of a heading this will always be reflected in other modules which reuse that heading
- Reuse all artifacts - i.e. headings and non-headings.
You also have options to copy links which doing the duplication, and to duplicate based on a view.
Full details are on the KnowledgeCenter link.
Once you have another module using either of these methods, the structure of either module can be changed without affecting the other, and note that if you want to add new reused artifacts in one module and keep the structure of the two modules the same then you'll have to do this yourself in the other module too.
If this approach to reuse sounds interesting I suggest you try it out and go through the lifecycle of each document to understand the process you'll have to use. In particular you should pay attention to linking; if you want your modules to have different links on the reused artifacts then you must only create links to/from the reused artifacts in each module.
HTH
Ian