What % of your SGA is the shared pool? Any way shared_pool_size is something you could easily experiment with.
The high parse/execute ratio could be due to your applications not using bind variables:
. . where column = parameter . .
is parsed & optimised for each value of the parameter
. . where column = :b . .
only gets parsed once (any occupies less of your shared_pool_size).
"DBWR average scan depth 276 (Number of dbfiles too high??)" - TOAD always says something like that - I've stopped worrying about it!
"The power of instruction is seldom of much efficacy except in those happy dispositions where it is almost superfluous" - Gibbon, quoted by R.P.Feynman