views:

53

answers:

1

Hello,

We have come up with a stream strategy which has a main integration stream and several other streams for the other environments. A brief idea as shown below.

Integration Stream
-- Production
-- Development
---- Stream for release 1.0
---- Stream fix release 1.0

We intend to use the child streams for development and deliver it to the Development stream and choose the activities and create a baseline and promote them to the integration stream.

I read couple of highly informative posts on this forum and I have few doubts to begin with. I am new to the UCM environment and finding it tough to get the broader picture of the usage.

  1. Should the baselines be created on the development branch or the integration branch.
  2. How does the baseline goes through the life cycle? Does the baseline we create, after testing, release etc only change in promotion levels?

It would be very helpful if anyone could describe this process.

Thanks in advance.

regards

A: 

1/ Should the baselines be created on the development branch or the integration branch.

You can create a baseline on any stream you want. They are just labels on the writable components.
Intermediate baselines can later be "obsoleted" (made locked and invisible) if you need to clean them up.

Your Development stream should be renamed into "Consolidation", because this is where you will consolidate what will actually go to Production (and delivered on "Integration Stream": your "Production" Stream is not needed here).

Since the fixes will begin from an "official" (i.e. "in production") label, I would recommend moving the stream "Stream fix release x.y" below the Integration Stream

Note: you need to be aware that a "deliver activities" creates a timeline linking all the activities from the source stream. That means you can deliver a partial set of activities from stream A to stream B, but you won't be able to deliver from stream A to stream C (unless you deliver all activities).
In short, baselining and delivering all activities is always simpler.

2/ How does the baseline goes through the life cycle

First, the status "TESTED", "VALIDATED", ... is just a meta-attribute you can set to whatever value you want, without any relation with the stream where the baseline has been set.

The life-cycle is then determined by:

  • the workflow of merges allowing you to isolate different development effort from one branch (build from the stream) to another.
  • the status (meta-data) you associate with your baseline.
VonC
Hi Von,I was very much hoping you would be replying to the post.Thank you for your views.The reason we have the production stream in place is because we have two different set of environments, i.e production and development.We are planning to have another environment say UAT in place.What we intend to do:Develop the product on the development stream / consolidation stream. There will a cycle of testing in the development stream itself. Then the code is baselined, promoted to the integration. we now rebase the code into the production stream and deploy the app from production stream
kadaba
We will also be having one more say UAT and do one more cycle of testing here hence an other stream in place. Due to this structure we are confused on how should we proceed to use the baselines and the strategy.This would isolate the development and the testing.Would it be ok if I could mail you the specifics for better clarity in terms of what we are trying to achieve.Thank you once again, your views are much appreciated.
kadaba
@kabada: no problem (sorry for not answering right away: I am giving a formation about ClearCase all afternoon!). You can contact me at: "vonc at laposte dot net"
VonC
Hi Von,I have mailed you, Kindly have a look and advice.
kadaba
@kadaba: Hi, I did receive your mail (but late yesterday): I will respond early this morning.
VonC
Hi Von,Thank you for your views. I will take this idea forward. Thank you very much.
kadaba
@kadaba: you are welcome. Glad I could help.
VonC