Agile (Continuous activities) vs Waterfall (One-off activities)

Waterfall - Traditional Waterfall treats analysis, design, coding, and testing as discrete phases in a software project. This worked OK when the cost of change was high. Waterfall key challenges are:

Poor quality

Poor visibility

Can't handle change

Very rigid

Agile - Agile improves quality because testing starts from day one. It improves visibility because you are 1/2 way through the project when you have built 1/2 the features. Risk is reduced because you are getting feedback early and Customers are happy because they can make changes without paying extra cost.