Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Scrum: too much or not enough? [closed]

My company has recently started using Scrum; we've done 2 sprints. We're still learning, but we've definitely exposed and fixed some problems in our development process already. So in general I think it has been good for us.

In reading many of the internet musings about Scrum from evangelists, cynics and everyone in between, three common and somewhat contradictory themes have stood out to me:

  1. Scrum implementation fails because the processes of Scrum are not followed closely enough.
  2. Scrum implementation fails because the organization does not adapt Scrum to its own environment/culture/practices.
  3. The processes of Scrum are not important; only the values in the Agile Manifesto matter.

Examples of these can be seen in the responses to these SO questions:

  • Have you had a bad experience with Scrum or Sprinting?
  • Is Scrum evil?
  • Is Agile Development Dead?

I have to admit that we're not yet following all the guidelines of Scrum: we haven't done a release at the end of the sprints, our Scrum Master doesn't want us to move tasks out of the sprint backlog near the end of the sprint so that he can see how much our planning was off (which means the burndown chart never goes to 0), and urgent customer support issues still have incredible power to disrupt everyone's planning, for a few examples.

My question is: in trying to solve these and other issues, is it better to try and be closer to the official Scrum processes, better to be closer to some of our pre-Scrum processes, or better to meditate on the principles of Scrum to try and come up with a different process altogether?

like image 507
carols10cents Avatar asked Jan 05 '09 15:01

carols10cents


People also ask

When should a sprint be closed?

At the end of a sprint, all user stories should be closed. If you invested time in a user story, but not all its tasks and acceptance tests are completed, split the story. Remaining effort and non-passed acceptance tests are moved under a new user story, which you can assign to a future sprint.

How do you avoid a spillover in Scrum?

Keep some time reserve for experiments and unplanned work based on historical data. The team can always pull more work within the sprint if the team has extra time. No teamwork: Every member is picking up the story based on individual skills and ability.

What happens if a Scrum team becomes too large?

When Scrum teams become too large, they lose their close-knit collaboration and start to become less effective. To keep your agile development methodology working well, you need to know when to divide your Scrum team into a series of subteams that can work well together.

Is Scrum a micromanagement?

The daily scrum is about micro-managing the team's daily work plans and making sure that everyone is doing what they say they'll do. Continuous integration is put in place so that the minute some developer screws up and breaks a build, it becomes known.


1 Answers

I would say that you are really missing one of the key components of agility if you don't release early and often. To the degree that you don't do this, your process is not agile and bound to suffer the same sorts of problems that traditional, plan-driven processes have. It may be that this is a temporary condition as you are just getting used to things, but you need to start releasing soon (and regularly).

You'll always have the problem with show-stoppers, but you may be able to help this by shortening your sprint length. The customer may not be able to wait a month, but they may be able to wait 2 weeks for some things. A shorter sprint length, then, may help you to defer some requests to the next sprint making them less disruptive. You also need to be upfront with the customer that the disruptions are actually causing your pace to suffer. They may voluntarily choose to wait if they know that their chosen features are being delayed by some requests.

Another observation that I would make is that, as with almost anything, it's better to start out by following the pattern as closely as you can while you are learning. Once you have a good grasp of the fundamental principles, you can then see where some principles can be bent, broken, or replaced much more clearly to improve the process. Until you really get it, the things you change may hurt or help -- you really have no idea since you don't have the experience that tells you how things ought to be working. Unless your Scrum master is really experienced, you may want to hew closer to the defined practices until you've got a few more sprints under your belt.

like image 150
tvanfosson Avatar answered Oct 04 '22 04:10

tvanfosson