Is it possible to be agile in an environment where timelines, budget and scope are fixed?
Yes it is. Agile is about individuals and interactions, working software, customer collaboration and adapting to change.
The latter is being made very difficult (nearly impossible) by fixing budget, timelines and scope. When fixing timeline, budget and scope, adapting to change can be done by cutting quality, which I’m generally opposed to, but could (should?) be considered as an option. There is (slightly) more room for the other three core values.
However, if the environment fixes timelines, budget and scope this might indicate close-to-unethical behavior, because the assumption that all is known beforehand, everything will go as expected, scope is spot-on AND someone (or some team) had the immense insight that and how this could be done, is very close to a lie that puts unrealistic stress on those doing the work and presents unfair expectations to those sponsoring or using the work.
So I would not advice an agile approach to organizations making these assumptions about timeline, budget and scope. Because if those assumptions were true, they’d better put their team in an inspiring environment, leave them alone during the realization of the product and then happily accept whatever the team comes up with.
An agile approach yields the best results when pursued in all openness by all involved with everybody doing their best, based on what they know at the moment. All should continuously verify their assumptions (including those on plan, budget and scope) and be willing to adapt (change) them when our insight grows.
If this is not the case, we should not expect great benefits from “doing agile”.
Summarizing: possible, yes, but extremely difficult and I would strongly advise against using an agile approach in this type of context.