It's all about the answers!

Ask a question

Importing/Exporting from DOORS NG <=> DOORS 9.7 - How best to configure projects


Carson Holmes (11113544) | asked Apr 04 '22, 6:08 p.m.

I'm looking for best practice here on configuring DOORS NG and DOORS 9.7 for frequent ReqIF exchanges.


I learned recently going from NG to NG that all exchanged configuration items need to have a URI defined.  I'm looking for any advice on DOORS NG to DOORS 9.7.  Thanks so much.

Accepted answer


permanent link
Davyd Norris (2.4k217) | answered Apr 04 '22, 11:59 p.m.
Hi again Carson,

I've found that when you're setting up to work between DOORS and DNG, you'll get the best outcome by setting up the ReqIF in DOORS first, then using that to populate the DNG project structure. Once that's done, then you can exchange the data from DNG back into DOORS.

The reason for that is that DOORS is a much older product and is a lot more finicky about how the ReqIF data is brought back:
 - DOORS only has Modules and Objects (the things inside modules) so it gets grumpy about different artefact types used in one module
 - everything is in a DOORS module, so it'll throw errors when you bring back artefacts that aren't explicitly inside a module. Even something like an embedded image in a requirement that itself is in a module will be complained about
 - DOORS ReqIF import is a two step process. You first import the package into a new folder in the DOORS project, then you merge the data into the existing modules. For this to happen, the data in the existing modules must be locked by a previous ReqIF export otherwise it won't be merged. If you are doing a brand new ReqIF from DNG then you can only do the first part of the import and so this will set up the module structure in DOORS ready for subsequent imports. There are options in the DNG ReqIF package definition to specify what attributes/objects/views etc. should be locked in DOORS upon initial import and that's how you set up a fresh DNG to DOORS ReqIF for ongoing imports.

So basically you've got two options:
Start in DOORS - define your modules, set up ReqIF to push everything over, and then bring the structure into a DNG project area. I typically set up two ReqIF packages - one 'export' with no locks and all potential objects and data that you'll want to see over in DNG, and a second 'interchange' defined by a DOORS View in each module containing the attributes that will be going back and forth, and I lock these in this definition. I then use the first export to populate the bulk of the data, and then import the second to establish the interchange package between the two. I then export and import that second package between the two systems.

Start in DNG - set up your structure with all data in modules and a single artefact type used in each one. If you do need to use multiple artefact types then give them the same attributes or a subset of attributes. Create your export ReqIF package and define what objects and attributes should be locked once they are in DOORS. Then export that and import it into a new DOORS project or project folder. You can then do import and merge of that package from DNG. If you want to set up an interchange subset then do it from the DOORS side as described above otherwise you'll find the whole lock/merge thing will completely mess you up.

In all cases above, you MUST define URIs on absolutely everything and they must match between the two systems - hence why it's better to import into an empty project area either way
Carson Holmes selected this answer as the correct answer

Comments
Carson Holmes commented Apr 07 '22, 9:25 a.m. | edited Apr 07 '22, 9:38 a.m.

Davyd,


Thank you again for your sage advice.  I'm hearing from another source that they use the Data eXchange Add-On for DOORS 9.x for this type of DNG to DOORS import.  The steps they follow are:
1. Create the Formal Module in Doors to receive the import of the ReqIF file.
2. Configure Mapping Module
3. Import Module Data
...and I'm glossing over some details here, but just curious if you are familiar with this approach, pros/cons.

Thanks again.  It's nice to see the IBM Champion program is still thriving with people like you.  It's close to a decade since I was involved.  Cheers!


1
Davyd Norris commented Apr 07 '22, 6:47 p.m.
Hi again,

No I'm not - I went for the vanilla approach and ReqIF because I am a big proponent for defining a 'single Source of Truth (SoT)' at all times, and that means that source defines the schema and conventions. Teams can define artefacts around the core SoT and continue to use it but it means you're always talking apples to apples - no "well that's called this in our system" discussions.

For better or worse lol

Carson Holmes commented Apr 08 '22, 9:25 a.m.

 Thanks!

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.