Monday, November 28, 2011

Are Scrum and Waterfall The Same?

I’ve gone back to watch Uncle Bob Martin’s presentation “Agile overview” from NDC 2010 (while you’re at it check his “The land that scrum forgot”, the man is such a storyteller!). In the presentation, Bob tells about Winston Royce’s study “Managing the development of large software systems”, from 1970. This article is the origin of the waterfall methodology, although the word waterfall does not appear in it.

Here’s Royce original waterfall diagram:

Royce saw the waterfall method as an ideal, and you maybe surprise to learn that he recognized it won’t work in practice (see the first sentence under Figure 2). Not only does he say so in this very article, he also explains why:

Royce identified the feedback loops that make agile so powerful. He noted them however as obstacles to the flow of the waterfall.

That’s all history, of course. Apparently, too many people didn’t flip to the next page, to see who the killer of billions of dollars was. What possessed so many in our industry to follow a model that even its parent says is flawed?

I don’t know the real answer (if you do, let me know!), but I do have a theory.

The waterfall model is simple, and understandable to common people. And by common I mean regular business people. It’s easier to wrap our mind around the simple (yet flawed) waterfall model, than accept and deal with the actual interruptions caused by real life.

Come to think about it, this is similar to another model that is winning the hearts of many people: Scrum. Scrum is now the agile method of choice in mainstream. Scrum is easily understandable by business people, since its based on familiar processes, and doesn’t require understanding of geeky development practices.

What do you think? Why did waterfall succeed? Is scrum destined for the same fate?

7 comments:

Anonymous said...

It is already happening...
Scrum = Mini Waterfall.

ferrisoxide said...

A far bigger problem is that developers look at Scrum and don't "flip to the second page". Scrum takes discipline that many dev shops simply lack.

Gil Zilberfeld said...

Thanks for the comments guys!

@ferrisoxide:
There was a 2nd page problem with scrum, indeed. Scrum told us on page 1 "We'll take care of visibility through process", and on page 2: "You just pick any software development methodology to back it up".

And then, people, mostly on the business side, didn't flip to page 2.

PM Hut said...

Hi Gil,

So, in a way, are you saying that we can combine Agile and Waterfall together? Or are you saying that Scrum is just a variation of Waterfall?

Gil Zilberfeld said...

@PM Hut,

Nice article. Although waterfall has some clean logic to it, agile is much better than handling reality and uncertainty in real life. So they are different in that respect.

What I meant here, is that people don't read the fine print. In the waterfall case, it was listening to the author saying "this will not work in real life". In the scrum case is not understanding that processes and PMO is not enough to get to working software: You need the software practices to back it up.

My current thinking (you'll read about it in a near future post) is that the success of adapting both waterfall and scrum can lead to the industry labeling them as failure. In the waterfall, it was the waste of money on unused features and lengthy production cycles. In scrum it's going to be, well the same result, because of no backing practices.

You should the method that works, even combining them together. But just changing the management methodology, won't lead to results.

Jordan said...

Hi Gil

I think you flipped pages too quick; if you read Royce paper he talks about how that doesn't work, but what to do to make it work, such as prototypes, early integrations etc.

I have also have some comparisons between scrum and waterfall on my site

Jordan

Gil Zilberfeld said...

Hi Jordan,

Thanks for the comment!
I read the Royce article. Not many have though.

But the point of the post is not on the original intent of the article, it is how people perceive to understand it. If it's simple enough (but can be incorrect) people will grok it. If it's too complicated, regardless how right, people will drop it, and turn to the light reading section.

Related Posts Plugin for WordPress, Blogger...
Twitter Delicious Facebook Digg Stumbleupon More