Horses for courses
Agile methods work for some situations, particularly where the client / end users don't know or can't describe what it is they actually want up front (e.g. customer service agent portal) - so you get the basic gist, build the prototype, then have a round of, "well, could this bit be red, can we show this here, I need to see this when I'm doing this", and then go and tweak it and have another round of 'testing'. been there, done that, it worked well to give the end user the system they needed in the sorts of timescales available.
When building stuff for aircraft with millions of pounds and lives at stake, everything spec'd up front 'It will do this', 'it will not do this', then tested to destruction once built to make sure it did and didn't tick all the boxes. That also works well for its intended purpose (planes staying in the air and people staying alive). It can tend towards over-runs and over-spends because the projects take longer, so there is more time for the true requirements to change, and you have to pay for more, and repeated testing of those changed systems.
I know which one I want my phone company to have used for the system for their customer service agents, and I know which one I want Airbus to have used when building the A380 I'll next be sitting on at 30,000 feet.