How do we manage concurrent releases?
We usually have at least 3 concurrent branches, current development (trunk), test and production. When we finish development of a cycle, we branch and start with a new one. The current development becomes test and new stuff is added to the current cycle.
However, we then sometimes have to fix the production system or the test version because we found a "late" requirement change or bug.
We want to be able to work on a task that is not necessarily current. How do we choose where to start a task?
Does this "branching" strategy make sense?
However, we then sometimes have to fix the production system or the test version because we found a "late" requirement change or bug.
We want to be able to work on a task that is not necessarily current. How do we choose where to start a task?
Does this "branching" strategy make sense?
2
people have this question
I have this question, too!
Tell me when someone answers.
The more people who ask this question, the more it gets noticed.
The more people who ask this question, the more it gets noticed.
The company marked this question as answered.
-
Inappropriate?Hi Otto,
Yes, this is a common branching strategy, and it makes sense. However, the branch you are working on doesn't have to correlate to the order of the stories in Tracker. An "Iteration" represents all work for a week, regardless of which branch or part of the code you are working on.
So, when you have a task to do, create the story, schedule and estimate it, and start it. It will show up in the current iteration, because that is when the work is being performed.
This also makes sense when you consider the"Velocity" calculation - you can't do work in the past or future, only in the present!
For more info, see the sections on "Iterations" and "Velocity" in the Tracker help: http://www.pivotaltracker.com/help
-- Chad -
Inappropriate?Oh, one other thing. You can use labels to group and identify work that is done on a particular branch. For example, you could have labels for "prod_branch", "test_branch", and "trunk_branch", or whatever works for you. You can then search for these labels to find all associated stories.
-- Chad -
Inappropriate?Thanks, Chad. Very interesting. A bit different to what we're used to, but will try it out. I'm used to thinking that iterations and velocity are linked to releases. We are used to working in 1/2 month cycles (to not release over month ends at companies where they freeze releases). When we plan, we say that our velocity is x (yesterday's weather), so we commit to x points for the next cycle and the customer can choose x points to be done.
I do believe that there is some value in releasing on every cycle. It sometimes makes planning a challenge, but we've not come across a case where we could not release. Yes, on the odd occasion, we have to "hide" an incomplete function.
Loading Profile...



EMPLOYEE