Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am a big fan of agile development and used XP on a very successful project a few years ago. I loved everything about it, the iterative development approach, writing code around a test, pair programming, having a customer on site to run things by. It was a highly productive work environment and I never felt like I was under pressure.

However the last few places I have worked use/used Scrum. I know it's the poster child for agile development these days but I'm not 100% convinced it is agile. Below are the two main reasons why it just doesn't feel agile to me.

Project Managers Love It

Project managers, who by their very nature are obsessed with timelines, all seem to love Scrum. In my experience they seem to use the Sprint Backlog as a means to track time requirements and keep a record of how much time was spent on a given task. Instead of using a whiteboard they all use an excel sheet, which each developer is required to fill out, religiously.

In my opinion this is way too much documentation/time tracking for an agile process. Why would I waste time estimating how long a task is going to take me when I can just get on with the task itself. Or similarly why would I waste time documenting how long a task took when I can move onto the next task at hand.

Standup Meetings

The standup meetings in the previous place I worked were a nightmare. Everyday we had to explain what we had done yesterday and what what we were going to do that day. If we went over on our time "estimate" for a task the project manager would kick up a stink, and reference the Sprint Backlog as a means of showing of incompetent you are for not adhering to the timeline.

Now I understand the need for communication but surely the tone of daily meetings should be lighthearted and focus on knowledge sharing. I don't think it should turn into a where's your homework style charade. Also surely the hole point of agile is that timelines change, they shouldn't be set in stone.

Conclusion

The idea of agile is to make the software better by making the developers life easier. Therefore in my opinion any agile process used by a team should be developer led. I don't think having a project manager use a process they have labeled "agile" to track a project has anything to do with agile development.

Thoughts anyone?

share|improve this question
2  
In scrum, teams should be self-managed. The goal of project manager is to eventually eliminate their role so that the team will organize and attend daily meetings by themselves. The role of project manager should ideally be eliminated to attending retrospective and planning meetings and handle all the organizational work. –  superM Jan 20 at 14:51
3  
Yes. Even one of the "fathers" of agile doesn't agree that Scrum is really agile : youtube.com/watch?v=hG4LH6P8Syk –  Euphoric Jan 20 at 14:57
10  
So what you're saying is that you're not doing Scrum, and you're aware of that, but then you're surprised that Notscrum is also Notagile? –  pdr Jan 20 at 15:07
1  
I've never spent more time in meetings talking about process than every single "agile" team I've been on. But I still like it much better than the alternative. –  Rob Y Mar 8 at 0:44
    
In my experience, Scrum is essentially an attempt to make Waterfall look agile by dividing it into smaller units. In fact, sprints should more realistically be called "cascades". –  Berislav Lopac Oct 30 at 15:08

5 Answers 5

There are certain elements in Scrum which are more prone to perversion, but to be frank, what you are describing is the result of trying to get a organisation to adopt Scrum without educating all the stakeholding parties as to what it's all about, how it works and why it works. You need buy-in across the entire company to get results.
Any agile transformation is going to expose everything bad that's going on in your organisation, including, but not limited to, micromanagers, powerhungry people with their own agendas, insufficiently trained developers, communication silos, etc. If there's no collective will to address these issues and you just "do standups" and just "work in sprints", the Scrum implementation is going to fall flat on its face.

I can not stress this enough: if you want to do Scrum, you need competent coaches who can show you the path. It's not enough to read Essential Scrum and then just see where it gets you...

share|improve this answer
4  
In what way are daily standups different from micromanagement? –  Giorgio Jan 20 at 16:51
6  
The standups are for the team to organise their time so that they are not getting in each other's way. It's absolutely inappropriate to talk about estimates, time elapsed on past tasks etc. - indeed a project manager (as opposed to the scrum master) should arguably not be attending at all. –  Julia Hayward Jan 20 at 17:30
5  
@Georgio: depends on what you mean by micromanagement. The goal of a daily standup in SCRUM is to keep everyone informed on what everyone else is doing, not to provide an opportunity for a project manager to chastise people for not meeting estimates. In fact, there is no project manager in SCRUM, tracking and adjusting estimates is the job of the team, and if they are not met the question to ask is "what caused it and how can we avoid or allow for it in the future?", not "whose fault is it and how bad can we make him feel?" –  Michael Borgwardt Jan 20 at 17:32
    
@Giorgio very simple: only developers are allowed to talk during the standup. Others can attend, but must remain quiet. In more mature teams, this can be relaxed; I don't tell our PO to be quiet, because he only talks if we ask him something. But in environments such as you describe, I would be adamant. –  Stefan Billiet Jan 20 at 20:09
2  
@ErikReppen as it is with just about anything, you have a small group of people who come up with a worthwile improvement and then you get a much bigger group that wants to monetize it and generally perverts it completely :-p I believe in Scrum, but I completely distance myself from the Scrum Alliance and its certification business. –  Stefan Billiet Mar 11 at 7:10

What you're describing is what we, Professional Scrum Trainers, see a lot in organisations that have "implemented scrum". Often they "Do XP in the development team" too, meaning that there are a few Unit tests running on a build server somewhere. This isn't scrum.

Yes, Project Managers can use a Product backlog, especially one that has been digitized, to abuse the hell out of the metrics such systems gather. But the Development Team and the Scrum Master should not let him. What is a Project Manager doing there anyway? Shouldn't that be a Product Owner?!

Just as XP can be done badly, and some more rigorous processes can feel very fluid (with continuous integration, deployment, but still very plan driven), Scrum is just a framework. It takes good people who understand the values and the process to execute it well. It takes Continuous learning an improvement to get there.

share|improve this answer

You probably expected that one, but just because some (many ?) people misuse Scrum in an un-agile way doesn't mean Scrum isn't Agile.

Project Manager : there's no such role in a Scrum team. The Scrum Master is not responsible for budget or meeting deadlines. He's responsible for helping the team out and removing any impediments standing on their way to the goal they committed to. From what you describe, it seems your PM hijacked Scrum to take for himself prerogatives that normally go to the team and Product Owner, perpetuating previous command-and-control habits.

Time tracking : Scrum recommends to track remaining time and sum it up to determine sprint status, not point at time spent by individual team members. This might seem a detail but makes all the difference between a blame-oriented culture and a goal-oriented approach.

From the Scrum Guide :

Monitoring Sprint Progress

At any point in time in a Sprint, the total work remaining in the Sprint Backlog can be summed. The Development Team tracks this total work remaining at least for every Daily Scrum to project the likelihood of achieving the Sprint Goal. By tracking the remaining work throughout the Sprint, the Development Team can manage its progress.

share|improve this answer

scrum is a project management methodology

agile is a software development methodology(-ish)

scrum+agile works very well

scrum without agile...not so much

share|improve this answer
1  
It's interesting that Scrum used to be a software development methodology but over time has evolved into a project management methodology. –  T-Pane Mar 7 at 12:26
2  
I think that's kind of inevitable. The devs just don't have as much a sense of ownership in process (don't want it). In a sprint review recently, I called into question the purpose of the team: write software, or make the burndown chart look good. I made my point, but then all the PMs in the room had to go to great lengths to emphasize the importance of blah blah blah. lol! –  Rob Y Mar 8 at 0:48
2  
@T-Pane: Even more interesting that Scrum was originally proposed as a new-product development methodology - hbr.org/1986/01/the-new-new-product-development-game/ar/1 –  Steven A. Lowe Mar 9 at 19:07
1  
@StevenA.Lowe Ah Scrum, it's on a journey of self-discovery. –  T-Pane Mar 10 at 16:04
up vote -1 down vote accepted

Yes. Even one of the "fathers" of agile doesn't agree that Scrum is really agile : youtube.com/watch?v=hG4LH6P8Syk – Euphoric

I think this link from one of the comments above really says it all. It's worth a watch, Uncle Bob gives a brief history on Scrum and basically says Scrum is not an Agile development process because Scrum has evolved over time to become a management process. The reasons behind this appear to be because it was project managers, and not developers, who were taking the Scrum courses.

share|improve this answer
2  
This (what you have written, not what uncle bob said) is a non sequitur. Just because something is a management process does not make it inherently non-Agile. –  Dave Hillier Mar 10 at 15:16
1  
You can have brown cats and browns dogs, but a brown cat can never be a brown dog. It's not because it's not brown, it's because it's not a dog. Similarly an Agile management process cannot be an Agile software development process, not because it's not agile but because it's not a software development process, which is what we're talking about. –  T-Pane Mar 10 at 15:56
1  
Then you might want to update your question, titled, "Does anyone else feel Scrum isn't agile?" –  Dave Hillier Mar 10 at 16:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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