It's all about the answers!

Ask a question

DNG Requirements Change Control


Sean F (1.2k12342) | asked Aug 02 '18, 12:18 p.m.

Is it possible to do requirements change control (RCC) in DNG without using configuration management?
I thought this might be possible using the change control lifecycle in RTC since there does not seem to be any native RCC process in DNG (like the old change proposal system in DOORS classic).

In threads discussing configuration management I read that RTC change control can be used to control the delivery of change sets. For investigation purposes I have set up CM for DNG and can create change sets for a stream and deliver them into the stream.

But there is nothing to stop me from making edits without using change sets. Is there any way to make change sets mandatory for a stream in DNG?

When using change sets I can also, before delivering the change set, create and link a task in RTC with a change lifecycle.

I can optionally step through the lifecycle of the linked task in RTC before delivering my change set.
But there is nothing to stop me from delivering the change set without creating and linking an RTC task.

Even if I do create and link an RTC task there is also nothing to force me to step through the task lifecycle before delivering my change set to the stream in DNG.

Is there a way to make an approval lifecycle task in RTC mandatory before a DNG change set can be delivered?

Also is there any way that access controls can be used so that approval must be provided by userB before userA can have their change set delivered into the stream?

Perhaps the only way to assert proper control is for each user to have their own stream in the DNG project and have their changes delivered into a master stream by an administrator but, while that may be worthwhile for managing source code, it seems like a lot of overhead for managing requirements.


5 answers



permanent link
Amit Talwar (215) | answered Aug 02 '18, 1:16 p.m.

Sean,

Is it possible to do requirements change control (RCC) in DNG without using configuration management?

No, configuration management must be enabled in the DNG project area to utilize the change control process of requirements through change sets and links to work items in RTC.

Is there any way to make change sets mandatory for a stream in DNG?
Yes, you can setup change management constraints per stream in DNG.
Go to Manage Components and Configurations under the gear icon in top right
Select your component(if more than one)
otherwise select your stream.
Under the details tab, you will see the Change Management constraints options.

Change management constraints

<label class="constraintLabel" for="dijit_form_CheckBox_0"> To edit this stream, changes must be made in a change set </label>
To deliver to this stream, change sets must be linked to an approved change request or work item
Is there a way to make an approval lifecycle task in RTC mandatory before a DNG change set can be delivered?
Answered above.


permanent link
Richard Watson (1661) | answered Aug 03 '18, 3:32 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
To be clear, there are two options when configuring Configuration Management in DNG.  One is to enforce that each group of changes must be associated with a named "Change Set".  I always recommend using this option.  The 2nd configuration setting requires a Change Set to be associated to an Approved Work Item before the Change Set can be delivered to a selected Stream.  i.e. once a change is done then the Work Item can be used to manage the approval process prior to delivery.

I think in your post you have missed the 2nd configuration setting.  Enforce that Work Items must be approved prior to delivery to your Stream.

Is it possible to do Requirements Change Control (RCC) without opting in to Configuration Management?  Not easily, no.  One could attempt a Change Control process using a combination of Workflow and access rights but this would get quite complicated and I would not recommend it.  If you wish to have Change Management but not break this down into version or variant streams then the easiest way to start would be to opt-in to Configuration Management and define only a single Stream.

permanent link
Sean F (1.2k12342) | answered Aug 03 '18, 12:15 p.m.
edited Aug 03 '18, 12:17 p.m.

^
^^
Thanks Amit, Richard

I enabled the 1st restriction for the stream:-

---To edit this stream, changes must be made in a change set

So then the enforcement of changeset usage worked and I could also deliver those change sets to the stream.

Then I enabled the 2nd restriction for the stream:-

---To deliver to this stream, change sets must be linked to an approved change request or work item

Now I cannot get the change sets delivered.

I created a change set and made some changes.

I then created and linked a work item.

There is no option to create a 'change request' so the work item type I created was 'task'

I have set its state to 'Done' which is the final state in the standard 'Task' work item lifecycle. There is no such state as 'approved'

When I try to deliver the change set I get the error

CRRRS9704E This change set must be linked to an approved change request to be delivered.

When I view linked items against the changeset it shows the linked Task with strikethrough indicating that it is 'Done'

What is the difference between a Change Request and Work Item?

I can only see Work Items in CCM. I cannot see any such entity as a change request

When I created the Lifecycle Project I used the default template at the top of the list:-

Quality Professional, Analyst, Developer

So it should have all the standard features to enable Requirements Change Management I think

Is there a tutorial on this on youtube or some doco that I have missed?


permanent link
Sean F (1.2k12342) | answered Aug 05 '18, 11:17 a.m.
^It's OK I figured it out.
On the Task there is an Approvals tab which I had missed before. I added an approval and then added myself as an approver for the approval. Then the task is deliverable.



permanent link
Sean F (1.2k12342) | answered Aug 05 '18, 11:26 a.m.
>>the easiest way to start would be to opt-in to Configuration Management and define only a single Stream.

So it seems that Configuration Management for RM can be used in 2 ways:-

A. Managing 2 parallel streams of requirements where one set is a variation of the other and using change sets to manage delivery of 'bundles' of changes between the streams (with or without RTC approvals)

or CM can be use for

B. Managing change control of requirements by using a single stream and requiring that change sets be used and also requiring that an approved work item be linked to any change set before it is delivered.

?

The only issue with this second scenario is that it seems that the whole project is either under change control or not. Whereas a real world scenario might involve the Stakeholder Reqs being under change control but the System Reqs being freely editable.

So I guess that you would need to use components to separate out different types of requirement in that case?

If that is the case then I would be interested to know if anyone is really doing this.

Your answer


Register or to post your answer.