A manutenção do seu código é sempre uma grande preocupação ao determinar para onde a lógica de negócios deve ir.
Ferramentas de depuração integradas e IDEs mais poderosos geralmente tornam a manutenção do código de camada intermediária mais fácil do que o mesmo código em um procedimento armazenado. A menos que haja um motivo real diferente, você deve começar com a lógica de negócios em sua camada intermediária/aplicativo e não em procedimentos armazenados.
No entanto, quando você trata de relatórios e mineração/pesquisa de dados, os procedimentos armazenados geralmente podem ser uma escolha melhor. Isso se deve ao poder dos recursos de agregação/filtragem de bancos de dados e ao fato de você manter o processamento muito próximo da origem dos dados. Mas isso pode não ser o que a maioria considera lógica de negócios clássica de qualquer maneira.