However how much that accomplishes depends on how much logic you have in the database layer, and who maintains it.
At my job, developers are responsible both for application code and stored procedures. Furthermore the stored procedures are responsible for rather little. Keeping update_dm accurate. Making sure that basic required fields are filled.
The business logic, authorization logic, and most data validation is kept in the application. Locking down the stored procedures buys you rather little.
Reversing this would require having a lot of development work move into PL/SQL. It also requires having a lot of development work move from developers to DBAs. And it requires a lot of tight integration during the development cycle between different people.
All moves that are going to significantly hinder productivity. And in the end what it means is that you still have to trust someone, you're just choosing to trust a different set of people.
Cheers,
Ben