Okay, it’s a topic that’s been plagueing me for some time.
In my years as an IT professional, I’ve practiced the Waterfall Software Development Life Cycle methodology as well as a couple or recent iterative flavour approaches. RUP being one of them.
Colour me a cynic but I just can’t see much of an advantage of one over the other. Both have pluses and minuses and at the end of the day only the practicing professionals with enough experience and dedication to the task make the real difference between a successful and unsuccessful project.
But I want to here from you as to whether you think a given methodology really makes a difference and why.
Yes it does and there is no one solution that fits all.
Waterfall - Big, ugly (typically COBOL) systems where we get the requirements and then build for a year or two.
Multi Waterfall - Still big and ugly, but phased in smaller releases so you get multiple waterfalls all running (and going to hell in a handbasket at the same time, wheeeeeeeeeeee).
RAD or iterative or spiral - Small, minimal requirements, build a prototype, improve the next version, round and round we go. Only works with small numbers of coders too.
If your office has one methodology that does not allow adaptation to the deliverable you are doomed to fail.
You are correct that they all have pluses and minuses and the job of the PM is to decide which methodology is going to be the least painful to administer with the deliverables, customer engagement, timeline, etc all thrown into the mix.
Don’t you just love it.
I don’t love it. That’s the thing. It’s all shite and I’m frustrated as hell because every organization thinks it’s found the holy grail in one approach or another and forces everyone to comply. It’s the classic, “when all you have is a hammer, every problem is a nail” approach. When things go wrong, the PMO - the folks who often put forward the approach without ever having applied it - will criticize the project team for not following the methodology to the letter. The project team will criticize the PMO for being a bunch of know nothing tossers, (and rightly so). Before you know it, a new methodology with the word “Extreme” tacked on to the front is developed by some slick new group of wankers and the organizations rush to adopted the latest software fashion trend.
And plenty of good professionals are of the above opinions and we sit around rolling our eyes at the general insanity going on around us but say nothing. What’s more, every new flavour of iterative methodology is more convoluted and wasteful (time & money) than the last. Plus, it requires people who are methodology experts but have no technical expertise to speak of. At the end of the day, the technical folks are the ones who are expected to decipher, do “magic” and create substance out of the dog’s breakfast the so called methodology experts have cobbled.