Topic: Agile Development Methodology vs Traditional (Waterfall)

I am currently starting a new web based product and have hired a team of developers to do the development.  I have worked in the software industry for 14 years now, and have always followed the Waterfall methodology.  One of my primary roles on projects is do specifications for clients among other things (I've been a project manager, technical architect, etc).  What I'd like to know is with very clear specifications and a fixed priced project, does Agile (or really incremental) development methodology apply?  It seems to me that if the client is sure of what they want in the first delivery, Agile does not make much sense.  It appears to me that Agile development should be used in the majority of cases in which the client doesn't know what they want but have a vague idea.  It also seems to me that it should not be used on fixed priced projects as there is a fixed budget.  That has been the problem with incremental development methodology.  They almost always overrun the budget.   I don't see how agile would be any different.

This topic is for all those very experienced ruby developers out there.  Your comments are most welcome!

Re: Agile Development Methodology vs Traditional (Waterfall)

I'm not a very experience ruby developer by any means so if you want you can ignore this comment. But from my own experiences, does a client ever really know what they want from the start? People change their minds, especially when they see a partially completed project and it opens them to many new ideas. In my experiences, just talking to a client and telling them what I've implemented so far, they usually see places where new functionality could be added or refactored. Agile is flexible, waterfall is not. I'd rather have flexibility than a fixed process.

- Ben