I'm just reposting since my first post.
I actually think MrChad has the best answer about Agile and why it's used.
---------------
However, in most places I've worked. Nobody really looks at the project even with Agile development. I'd like to say it's more "work as you go." Or "lets change this on the fly to meet our current needs." There is no project management. When its supposed to be an iterative approach to development.
To put it into perspective. About a year ago. We started discussing a new project to meet a business need. I was brought in on the first meeting. You had 10 hens in the house clucking to the point you couldn't make heads from tails. No central "vision" or leader. Just a bunch of people in a room trying to convince each other of what would make the best product. Of course, each time someone would speak, they'd look to you as the engineer "Can you do that?"...
The answer always being... "Yes, given the time and resources, and if we talk through it to understand it all."
After a few meetings, I'd get the big picture of what they wanted. So I'd then start saying : "This is what the product needs to do..." Then of course, then light bulbs would appear on their head and say "Woo Woo. You get an extra Woo because if you could do that, it deserves the second Woo, and hardly anybody gets 2 Woos.", and most of them would be on board, and a decision is made to proceed.
During the time, the CEO comes in and says "I don't want to discuss this project forever. It's already been a few months. They have no clue what they want. We are just going to have to make it and change it as we go. Ready set go... I was this done in 2 months as we've already wasted enough time talking about it."
2 months later. Still making revisions. The back and forth between code and ideas. Getting feedback but still no real project here because you have to redo everything multiple times.
Then 2 months later and 2 months late. You start to be harrassed by the CEO about the project taking too long and you start to grumble alot to yourself about how much this method sucks and if they just would figure out what they want ahead of time, we wouldn't be 2 months late. At this point you start demoing the project. Everybody says "That's great! But we still need to do this to make it production ready." Of course that "need" is something new brought to the table that you never heard of before.
Now nearly a year after the original meetings started taking place (and 6 months overdue) the project is finished, and nobody wants to use it because they aren't used to it, and its so different than what they are used to, now we are sitting in a testing phase (pre production) for nearly 4 months while it sits mostly idle because nobody wants to give it a stamp of approval.
And with your login audit logs the most people in the original meetings haven't even loaded the project once to form their own opinion. Those same hens from the henhouse. In other words, we aren't talking about it, they aren't using it, they are not going through this iterative process of agile. They just want to cluck.
I'm not bitter. Not at all.