#1. Highest Cost<p>#2. No need to hire experienced staff, as this gives them a framework to quickly build lifecycle experience by making mistakes<p>#3. Never complete the project, because, agile, you know<p>#4. Easy to manage because things are changing every day<p>#5. Hide cost of switching to new technologies with ease.<p>"agility" is a great idea. software without a careful elicitation of requirements and an actual design before construction is a waste.
(web app people relax. this does not mean you)