I think that your comment id right on the nail, for in house applications. The problem is with bought packages where you can not make changes. I this case cursor sharing makes sense. Adar Yechiel Rechovot, Israel Kerry Osborne wrote:
In general, though I think of cursor_sharing as a bandaid that should be used only in very severe cases. For example, many systems have a large percentage of work concentrated in relatively few statements. So it's usually possible to make a significant difference by implementing bind variables in just a few statements, thus buying time while a more widespread rework of the application is undertaken.