It should be factored into the cost of dinner beforehand. If you can only spend 20 bucks on dinner, don't go to a place with ten dollar entrees, go to a place with seven dollar entrees.
From a financial perspective, if you literally cannot afford the 15% tip then simply eating at the restaurant is a foolish luxury expenditure and you should be saving the money. Spending 100% of the money you have is a fiscally irresponsible decision. It's not your server's fault you went somewhere that you couldn't really afford. Nobody's gonna let you in the movie free if you only have enough cash for popcorn and a drink. Your real estate agent isn't just gonna forget her commission if you spend every cent you have on the house she helped you find. The best tippers, consistently, are other people who work in the hospitality industry. Not because they have the most money, but because they most understand how important tipping is.
From a practical perspective, you're tipping these people both for refilling your drink so you don't get thirsty and for not fucking with the food that you're about to put into your body. Should you have to tip for your waiter to do an average job? In a perfect world, of course not. In the real world, though, it's worth the 15% to get food thats not cold (or worse.)
From a human perspective, people who eat at restaurants and don't tip (unless its deserved because of poor service) are uncaring, selfish pieces of shit who probably can't appreciate just how many assholes can fit in one restaurant at one time. For anyone who has never waited tables, there's nothing quite like being proud of how well you handled the table full of super bitchy old blue-haired women that all wanted their water with "just a little bit" of ice ("oh no, that's not enough, take it back ... but that's too much!") and then wanted to know every ingredient of every dish on the menu, then sent back their first entree because it was spicy (even though you told them on the front end it was a little hot) and then set at the table for another hour so you couldn't re-seat it, only to have those old hags leave you just enough change on the table for a couple hours in a parking meter. It's completely demoralizing. And I know everyone's job sucks, but it's like if you boss didn't give you your traditional Christmas bonus because he already spent it on blow and hookers. Yah, he's not legally obligated to give it to you, but that's just sorta how things are done and it's an absolute slap in the face to not give it.
P.S. I don't wait tables anymore, so I don't really have a vested interest.