> A good agile process can and should have all of the things the parent commenter listed.
A good agile process will not have an ironclad upfront definition of what is to be delivered in a large project. A process with that may not be waterfall, but it's definitely non-Agile Big Upfront Design.
OTOH, Agile is largely about managing risk and incrementally delivering value without overcommitting forward, so the contracting process with Agile should reflect that and shouldn't commit to a giant project in a lump contract.
A good agile process will not have an ironclad upfront definition of what is to be delivered in a large project. A process with that may not be waterfall, but it's definitely non-Agile Big Upfront Design.
OTOH, Agile is largely about managing risk and incrementally delivering value without overcommitting forward, so the contracting process with Agile should reflect that and shouldn't commit to a giant project in a lump contract.