From above(the manager of the program) the job is to budget the funds thriftily and fairly, each project getting the amount it needs.
From below(the team working on the project) this feels like you are punished if you are able to save money and rewarded when you waste money.
I suspect this is probably the major problem with having a more command orientated economy. While it should be fairer(free market economies are notoriously unfair). The inversion in incentive hurts performance.
The rank above you has decided "we need $1 million of software, go buy that." They don't know exactly how much stuff costs, so they use a dollar value as a rough proxy.
If, as manager, you cut corners to save money, you're doing the wrong thing. They want the software! They don't to keep want the money, that's why it was allocated in the budget. Go buy us more Useful Stuff!
but the problem here is how budgets are assigned. instead of a fixed number it should have a lower and an upper bound. at least X, but no more than Y. the closer to you get the better, but next year the budget will be the same range. only if you drop below X you run into the above problem, but then it's much less likely and if you really spend that little something else is wrong or the budget really was to high.