Reuse Concepts and Options in DOORS Next Generation

Reuse Concepts and Options in DOORS Next Generation

The purpose of this article is to make an overview of the options you have when you have a need for reuse of artifacts like requirements, specifications, contracts or even full lifecycle management projects in IBM Rational Collaborative Lifecycle Management Platform (IBM Jazz).

This article will be improved several times with the intention to show the possible approaches and which can be a base for consulting engagement.

Image

Things to consider

The reuse itself and the way of reusing depend on the way you work, product structure, project needs and also on the process maturity at your company. Here are possible questions which decide which option to use:

  • Do you have to have the ability to compare Product A and B? 
  • If product A requirements change do I need to know in Product B (Suspect Link or Link validity feature)
  • Do we need to have the same ID for the requirements of both products?
  • If Requirement 1 in Product 1 changes, do I just want to know that or shall the Requirements 2 (copy) change automatically?
  • Do you need to reuse links to CCM  / QM?
  • Do you need the history of the artifact prior to Reuse?
  • What is the maturity of the team regarding the handling of the complexity? Do you have a team member(s) who are responsible for configuration management?

The right way for the Reuse is a combination of one or several following techniques.

Simple Reuse Concepts

Module & Artifact Copy

Similar to work with as Office tools, you can use the Copy + Paste Function. 

This method is used mainly when you need to use existing data for a new project or product based on the current project and when you don't need to keep the reference to the original artifact.

- Copied artifact will get a new ID.
- You can also copy the links of the copied artifact.
- You can as well copy from other project areas / components.

Requirements Reuse Across Modules

DOORS NG allows you to reuse artifacts (requirements, pictures, diagrams, headings...) across several modules. Module 1 could represent Product A and Module 2 is like Product B (variant).

Please keep in mind that links tags and comments created in the module are only relevant and visible in the module context. Everything else (attributes, primary text, the name) is immediately changed in all modules once you save and refresh the artifact page.

This feature only allows reuse of artifacts within one project/component.

This technique works well if you want to give up control of the text and attributes. You have control only on the link comments and tags in your module.

Please note that the indication attribute "Used in Modules". System attribute can be used but it is not possible to filter for it and you might need to use JRS in case you need advanced reporting.

Tip: We recommend to lock the reused artifact in order to keep control at least on the admin level.

Reuse using Views and Attributes / Tags

Old good method where you create several attributes and views which is limited per each product which is limited by attributes.

  • History can be done via several variant of history artifact in the module.
  • Attributes of the modules cannot be reused - this can be solved via artifact specially added into the module with each own attributes (per each version 1)
  • Links are reused which is an advantage or disadvantage (i.e. for testers, test is reused)
  • This solution woks only when you have a few variants with not too many attributes per variant.

Theoretically this option can be a problem when the whole section is missing in one of the variants. This means that this option works mainly when the variants of the modules have similar (or identical) headings structure.

This method is very simple but is not recommended if you have to many variants. Additionally, this method is not ideal if you need to change requirement text in variants.

Advanced Reuse Concepts

Configuration Management on Requirements Level

DOORS Next Generations supports full configuration management. The concepts are similar to those you know from software development.

You can branch requirements from a component into 2 or more so-called "Streams".

This technique allows you to make a standard product version and then the version of your product (or of its parts) like Project A, Project B. Those projects are often very similar to each other.

By enabling DOORS NG for Configuration Management" you also get the option to create "Change Sets". These are a set of changes that you create on the specification or anywhere in the component. They are "virtually" added changes that can be delivered into the project. You have as well the option to enforce approval before delivery of such changes.

Additionally, you have the option to take a specific change set or all changes from one stream and deliver it "Merge" to another stream.

  • The ID of Artifacts stays the same in all streams
  • DNG give you then a native Ability to compare the 2 versions against each other
  • Inability to be notified about the change in the original artifacts (suspect linking or Link validity)

You can also deliver specific changes between the streams using Softacus Addons. See below.

Global Configuration Management

IBM Jazz Platform gives you the possibility to reuse components of the system in different variants and combine them together.

This technique requires certain process maturity in your company regarding different variant management needs.

 

Reuse Project / Component as a template

You can create a project / component template and make a copy of your project.

You will keep:

      • Artifacts
      • Links between RM artifacts
      • templates
      • Link types
      • attributes

You will lose:

      • History
      • Reviews
      • Link to QM CCM
      • Tags
      • Comments

Reuse Component by Id

Things to consider:

  • The smallest scope for the baseline
  • Access to artifacts
  • Links across the platform
  • Artifact types
  • Type of modules in component
  • Where validity links must be used?
  • Work in modules or folders?

Parametrization

 Special Softacus technique using embedding DNG artifact feature.

Special reuse techniques

Clone or Copy Artifacts between Components

Cloning the artifacts is the way of creating two Artifacts with the same ID, but with the different Artifact History, Attributes and so on. It means that you can create a New Artifact from the Original Artifact and they both have the same ID. But changes you make are saved only in the Artifact where you made the change. 

Also you can delete one module and it doesn't affect the second with similar ID.

Cloned Artifact = has no value in the Description attribute ----> you change it to "Description" ---> Cloned Artifact now has a value "Description" in the Description attribute.

Original Artifact = has no value in the Description attribute ----> you change this attribute in the Cloned Artifact ----> Original Artifact has still no value in the Description attribute.

Please refer to "Cloning Requirements Artifacts" in DOORS NG Documentation.

Usage of Pure Variants AddOn

For advanced use cases, you can also reach out to the company Pure-Systems. Pure-Systems provides special techniques for variant reuse.

https://old.pure-systems.com/products/pure-variants-for-ibm-rational-doors-11.html?revision=28

You can achieve similar results be using our DOORS-NG Tailoring addon and Reuse addon.

Copyright Pure-Systems GmbH

Softacus Scripts which you might use for Reuse

Variant Stream Addon

This extension allows a user to show different attribute values in different streams in tables.

Features:

  • Shows artifacts across different streams in project area
  • Displays desired table of attributes of artifacts
  • Can change attributes after selecting other artifacts
  • Redirects you to specific artifact after clicking on ID

 Restrictions:

  • Required to be executed in module. If a user tries to start the script outside of the module it will not work and a message will be displayed advising the user to work from module.

Variant Copy Addon

This extension allows user to show and change different attribute values from different project areas, components and streams in tables.

Features:

  • Shows artifact across different project areas, components and streams
  • Displays desired table of attributes of artifacts
  • Allows users to change specific attributes of artifacts
  • Redirects you to specific artifact after clicking on ID

Restrictions:

  • Requires to be executed in a module. If user tries to start the script outside of the module it will not work and a message will be displayed advising user to work from module.

Contact us

Do not hesitate to contact us for any additional information or questions. We look forward to hearing from you!

Image

Other Jazz articles

Image

Softacus AG

Löwenstrasse 20
8001 Zürich
Switzerland
E-Mail: info@softacus.com
Tel.: +41 43 5087081
Fax: +41 43 344 6075 

VAT: CHE-108.817.809 MWST
D-U-N-S® Number 486800618

Image

Softacus GmbH

Westendstrasse 28
60325 Frankfurt am Main
Germany
E-Mail: info@softacus.com
Tel.: +49 69 34876544
Fax: +49 69 5830 35709

VAT: DE301903892
D-U-N-S® Number 313482703

Image

Softacus s.r.o.

Křídlovická 351/47A
603 00 Brno
Czech Republic
E-Mail: info@softacus.com
Tel.: +420 530333482
Fax: +41 43 344 6075

VAT: CZ07286333
D-U-N-S® Number 496165108

Image

Softacus s.r.o.

Tatranské nám. 3
058 01 Poprad
Slovakia
E-Mail: info@softacus.com
Tel: +421 911 083 612
Fax: +41 43 344 6075

VAT: SK53507070
D-U-N-S® Number  2121388148