It took a little time, but we have been successful in getting a key internal group to understand the concepts of prioritizing system / programming requests, and the cost / benefit of doing anything. Finance folks quickly grasp the cost-applied-against-benefit and the total budget; engineers understand that programming requests can and should have effort estimates with a reasonable amount of accuracy, and the idea that resources can be optimized. The biggest indicator of success is that the non-IT manager of this Business Change Project is the one who pushes back the hardest on folks trying to solve all our problems with custom programming (and ignore the cost!).
Of course, it all starts to go out the window when some "all of a sudden this is critical" requirements come up. We have set up a cross-functional team, charged with prioritizing all work requests to maximize benefit across the organization; for the most, this has worked, but recently we're getting requests directly from the aforementioned groups, who are trying an end-around by insisting their work needs to get done ASAP.
It's often difficult, especially non-confrontational tech folks, to say no to someone who is right in front of you - even though Yes for this person means No to the other five people whose requests are getting pushed down the stack (but they are not sitting in front of you right now...). With our "steering committee" approach, it's actually quite liberating, because it's not my opinion, not my call (don't blame me, I'm only the messenger).
We're not ducking the tough conversations, we're actually focusing on the correct issues. How are we going to stick to the stated budget (for time and for $$$)? Are we spending the company's money wisely? Are we in effect giving preferential treatment to some simply because they know where we sit? And why should it be IT's discretion on what gets attention and what does not?
The sometimes frustrating part is the fact that the people trying to bend the process just a bit here include the folks who instituted this process in the first place. These are the groups that track the overall budget - and who are fully aware that we're projecting to go over a bit for this particular project. Chalk it up to an organization still learning to think like a billion dollar company, as opposed to a collection of $100MM companies.