cost of implementing requirement change is reduced. amount of analysis and documentation that has to be redone is significantly less. easier to get customer feedback from software rather than judging progress from document. customers are able to gain values of software earlier than that is possible from waterfall model. incremental delivery means that software is used in real, operational process so user feedback is likely to be realistic. Phases that run in cycle: Planning [Estimation, Scheduling and Risk Analysis] Modelling [Analysis, Design] Construction [Coding, Testing] Deployment [Delivery, Feedback] Communication Limitations: if developed quickly, not cost effective to produce documents that reflect every changes. system degrade, messy codes accumulate as new increments are added.