Question: How is Agile new and different from the old seat-of-the-pants method?
Evangelists promote Agile-ish methodologies as the greatest thing since sliced bread. IMO, a tool is only as good as the user, and Agile cannot replace common sense any more than drinking lots of coffee will make you into a genius.
As best I can tell, Agile is a branded method of incremental development where you always end up with some sort of working prototype. It’s contrasted with the Waterfall method where various groups work in isolated silos and don’t test or integrate until things are very far along, only to discover fatal flaws that could have been corrected if only people would talk sooner.
I like the idea of always having something functional to hand off, just in case you get pulled off into something else. But, proponents seem to think that it’s like a Get Out of Jail Free card where you can change your mind about anything, at any time, and respond instantly to market shifts or executive whims. It’s called “being nimble”.
Even with Agile, there are certain best practices that weren’t always followed at WAK! For one thing, you’re supposed hold to a few key project parameters and not change in the middle of a sprint. (Sprints should be 2-3 weeks long, rather than 2 minutes.) This focuses your cross-functional team.
For example, your team works balls-to-the-wall to get Thing out, say an ultra-lightweight satellite using standard off-the-shelf parts. Anything else can change, as long as the Final Satellite Thing is under 3 lbs and fits up your glory hole. (Did I just write that?)
What happens instead is everything changes daily. It’s a satellite! No, it’s a hand drill with a Facebook news feed! No, wait… it’s for the Japanese market. And it has to look like a Pez dispenser! Murphy’s Law says, “Indecision is the key to flexibility,” but really, it’s just another highway to hell. If your team starts acting like a flock of headless chickens, panicky and directionless, it’s not really Agile.
WAK! was different in one other critical way: it was a hardware design/manufacturing operation, not software. When you have tangible products, actual physical real-world things instead of code libraries, it’s less forgiving and more obvious. If the head snaps off your fastener, it’s gone. So, we never really claimed to be “Agile” although it was clear that Agile practices had informed some of our rapid-development approaches.
Imagine Iron Chef as an Agile shop. It kind of is. The challenge is to produce several dishes from one featured ingredient, which is announced ahead of time. (I thought they had to walk onto the set prepared to improvise. “Surprise! Today’s secret ingredient is… Pink Slime!”)
But suppose it really was a total improv show, similar to the Junkyard Wars or its original British version, called Scrapheap Challenge, where teams would be challenged to create a working machine out of junkyard parts that met specified functional and performance criteria. That would be like Agile development. But even on Iron Chef, they can’t change the ingredients in the middle.