As I understand Agile is more or less like an open/flexible process. Meaning I anticipate and expect stakeholders' rapid changes.
But how about the business aspect of this? What if the stakeholder has a specific budget for a product?
What if their changes go beyond the specified budget?
Is there a term as an "agile contract"?
One benefit of Agile is that unfinished stories are always tracked at the end of each sprint (e.g. 2 weeks).
In contrast, a more Waterfall-like approach can "encourage" the unfinished requirements to go unidentified until the end of the development phase (e.g. months).
Better to know ASAP that certain requirements are not going to be addressed on the current budget.
For these reasons, the most "difficult" requirements are often tackled first.
In short, Agile is perfectly business and budget friendly.