I’m listening to the Hanselminutes Podcast; \"StackOverflow uses ASP.NET MVC - Jeff Atwood and his technical team\". During the course of the Podcast they are speaking about SQL
Maintenability Probably SPs are better. If maintaining hundres of SPs are hard, maintaining them in business tier components is even harder.
Performance Caching of queries might be producing near performance to SP. But they can't match performance of SPs across varieties of databases in varieties of platform. Network latency is another area of concern, though the gap is reducing nowadays.
Debug Is probably fairly easy with SPs than debugging business tier + db tier put together.
There can be even more +ve points using SPs.
But looking at the modern trend of programming, its rather "wise" to go with 'N' tier architecture for plenty of business reasons than sticking with "old" SP based approach.
Good system should have mix of both. Probably following 80-20 principle, 20 being SPs.