Question

I've worked on Death March projects in the Java world - projects that are destined to fail from the beginning because of some combination of poor management and unwieldy, complex technology, usually spanning multiple systems and often tied to a waterfall approach.

Rails and Django are touted as Agile development technologies, which means they are oriented towards being able to respond to change quickly.

Does this mean they are immune to the Death March scenarios of large enterprise systems? Or is there still room for enough complexity in a Rails/Django project that it could spiral out of control just as a Java project would?

Was it helpful?

Solution

Of course it is. I have personal experience of working on several Django projects which have become death marches.

You can have all the agile development technology in the world, but if your company does not fully embrace agile concepts then it won't help you avoid the death march. If the management demands a product to be delivered on a certain date, and that it includes a certain set of features, then using a framework won't help: you're still stuck working as fast as you can until they're satisfied. If that means a death march, then a death march it is.

OTHER TIPS

Death march is a function of bad management and planning which is possible no matter what language you use.

It seems like the question that is being asked, is whether technology can solve human stupidity...

Well, as far as I know, there is still no cure.

Honestly, anything poorly managed has a chance to fail, even with the conveniences of frameworks that are supposed to ease the development process. They are certainly not immune to the death march scenarios because its a matter of using the frameworks properly. I've seen many projects fail because the technologies used were not being used as intended.

From the page you linked to:

"... result of unrealistic or overly optimistic expectations in scheduling, feature scope, or both, and often includes lack of appropriate documentation, or any sort of relevant training... Often, the death march will involve desperate attempts to right the course of the project by asking team members to work especially grueling hours, weekends, or by attempting to "throw (enough) bodies at the problem"..."

It seems to me that some methodologies are more susceptible to being a death march (waterfall, as you mentioned, comes to mind), it seems like any methodology with sufficient bad management could become one.

Why would the technology used have anything to do with how poor management is? This, to me, seems like a seriously silly question. If you think that a technology is going to cure poor management, then you need to work on other problems before you start choosing a technology to use.

It's great to talk about certain technologies being Agile, but I think this is actually misleading. I'd rather work with a team (including management and users) that truly understood the Agile mindset but programmed in Fortran than a team who chose Rails or Django because they sounded cool, but couldn't tell scrum from spam. (No offense to Fortran lovers intended)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top