Wouldn't it make sense to simply use dbms_stats?
I think GATHER_SCHEMA_STATS with the parameter OPTIONS set to GATHER AUTO, GATHER STALE or GATHER EMPTY would be a nicer solution.