1

I'm going to begin a universitarian project with my fellows. It is required that we use one of the Agile Methods together with Bitbucket. We'd like to begin with Scrum. I've read its documentation and it seems very powerful.

My question is about the Sprint in Scrum and the branch in Bitbucket. Can we say that a Sprint and a branch are almost the same things?

If so, we will open our very first branch in BitBucket and this will be our first Sprint. Is this the correct interpretation of this method, or it would be more appropriate (by "appropriate" I mean "following best practice") for every member of our group to open his own branch?

6

Sprints and Branches Are Separate Concepts

Can we say that a Sprint and a source code branch are almost the same things?

No, a Scrum Sprint and a Git branch are not at all the same things. While you can use an online Source Code Management (SCM) system like BitBucket or GitHub in the development process, there is no one-to-one mapping between the project management framework (in this case, Scrum) and your SCM workflow.

A Sprint is a time-boxed iteration with a cohesive Sprint Goal, and a set of features that help the team to achieve the Sprint Goal. These features also comprise one or more increments of potentially-shippable value. These increments are the deliverables for each Sprint.

SCM workflows are negotiable processes that can vary between projects and teams. There is no canonical answer to the question of how one should use source code management across teams, projects, or organizations. That is really a question for the Development Team to address within the project framework, and is ultimately more of an engineering or architectural concern than a project management practice.

  • To to add to this, I'd suggest that there is no need for a one-to-one mapping between scrum activities and bracnhes, but there's also no reason not to employ that mapping if desired. For example, we adopt a loose "sprint task to git branch" mapping as this allows one or more developers involved in a task to work isolated from the rest of the team, whilst ensuring merges back to the master branch every few days. This isn't strictly enforced though as on occasions, other branching approachs work better. Do what works best for you. – David Arno Dec 19 '14 at 12:37
0

No, but I see why you might think so.

In some ways they are analogous:

a Sprint (which is a clearly separated period of development work towards a specific goal)

is to the Set of Stories Completed Thus Far (which is a description of all the development work done so far)

as a Branch (which is* a clearly separated location in a repository for source code under development for a specific purpose)

is to the Trunk or Master (which is* the source code that reflects all the work that's been done so far)

*assuming one is using a model in which development work for features is done on branches, and branches are merged back to master as each feature is completed. There are other models, but this one is pretty common.

And if this is the model you're using, then during a sprint, there will be one or more active branches; and at the end of the sprint, assuming that you completed all the planned work, all those branches will have been merged back to master.

As CodeGnome said, the workflow you use to manage source code during development is very different from the methodology you use for project management. If you've spent most of your time so far as a solo developer, it can be hard to understand that there is anything else involved in development methodology besides how you manage and manipulate your source code.

Instead, think in terms of how you are going to plan, divide up, and manage the work required to complete the project. That's where Sprints come in.

  • This is a very clear answer, thank you. So, if my team is working on a sprint with 4 user stories, and each member opens his own branch for working on his user story (assuming that every member can work on one user story), this might be a correct integration of Scrum with Bitbucket? – elmazzun Dec 6 '14 at 11:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.