How is it possible to relate a work item to a stream.
Work Items can only be related to an iteration and change sets can only be related to a work item.
It would be useful to be able to target a work item to a stream to ensure the stream has had the correct work items applied.
Is there any way of ensuring the correctness of a Work Item being applied to multiple streams.
Accepted answer
2 other answers
I think there is some misconception on your end, or some misunderstanding on my.
A Stream is a volatile object, it can be created and deleted, however the change sets will stay, and the work items as well. The change set can be in many streams as well.
There is no means in the RTC Work Item component to represent a stream as an attribute. A stream, of course, has a URL and you could link that to a work item, however this would not be easy to use for anyone.
So I am not sure what you want to achieve in the question above.
It is possible to use the Locate change Sets functionality in the Eclipse client Search>Jazz Source Control>Locate change Sets to find out if a change set is in a particular stream or not, you can use work items to select the change sets associated to it for this as well.
Comments
I think I am raising a change management issue. The use case is, a change needs to be applied to a component in multiple streams each representing different versions (or what some may refer to as branches).
There doesn't seem to be a controlled way in the work item to tell the developer which stream(s) are to have the change applied to. The developer may do the change using one or more flow targets to the streams but there is no guarantee that a stream did not get missed. Moreover, I cannot see how anyone can check except by checking that a change set had been applied to all the required streams.
We have a work item attribute type "Item" that can reflect some items e.g. a component, but not a stream. That was my first Idea. If you could make it to select a stream it would be possible to add operational behavior to check if the target stream is the intended one as well.
I agree, it would be a good idea to raise an enhancement for that. I have seen this kind of question before.
There are some special cases where one would use other techniques (and you may have one of those special cases). If you could describe why the stream-to-stream flow wouldn't work for your case, we could suggest some other alternatives.
Comments
Hi Geoffrey,
Thanks for your time and responses.
We are rolling-out RTC in our environment so I am trying to consider every use case we use for our developments. I am thinking of where the stream-to-stream flow may not work for us. Where we may be using Product Line Engineering or have multiple variants/releases being developed in parallel. A change may be needed to be applied to a specific stream but not others. So there is no fixed flow relationship between streams. Each developer may need to work on different variants in different streams. So from the work item it needs to be known which variant/stream the change has to be applied.
If this is a case where why the stream-to-stream flow wouldn't work I'd be grateful for any alternative suggestions.
Yes, if you are cherry-picking to which variants a given work item should be delivered, then I agree with Melissa's suggestion of using work item Approvals.