I’m currently at the tail end of my first agile project (specifically scrum) and it has been an interesting experience. It’s had its problems, one being that it has been incredibly fast. A total of 4 x 2 week sprints. The scope has done nothing but grow and we have been committed to complete the whole scope. My company is generally a waterfall company, so when something like agile comes along, any problems with the project are pointed to the agile process. I think that this isn’t the case, I have seen similar situations in my career under waterfall.
I’m reminded of a video I watched of Uncle Bob (Robert C. Martin) give.
Basically you have 4 dials on any project you can play with. If any one or more of them are out of whack, they start to affect the other dials.
For example, increase the scope. Keep the budget fixed or keep the same number of resources and keep the same schedule, the quality of work is going to be compromised. If you want to keep the quality, then something else has got to give. You may need to increase the schedule. Alternatively, decrease the scope, or get more resources to do the implementation or a combination.
I don’t thing that there is any way around this. Compromises will always need to be made. Just don’t blame the process or methodology because it’s new.
As for those who think that it is Agiles fault, agile has been around officially for around 15+ years. Since at least the manifesto was first written in 2001. If it didn’t have some traction, it would not have survived this long. If your agile project fails, try to understand why. You may just find that you are implementing it wrong. Similarly with Waterfall. My guess is, if a project fails, two or more of the dials have been cranked up too high causing a blow out of the other dials.