We deploy code to 50+ remote databases. After compiling the code being deployed we have been running Oracle's utlrp.sql script to validate things in the proper sequence so that we only need to run it once. 10g no longer has some of the views that utlrp.sql referenced so they have a new package, utl_recomp. However, this requires you to be connected as SYSDBA. Especially now in the days of Sarbanes-Oxley we're not going to have the password for SYSDBA. We have a script that will compile the invalid objects, but it doesn't pay attention to the dependencies so we have to run it multiple times. Rather than try to figure out the SQL to compile things in the proper sequence, it would be great to find out how PL/SQL Developer knows the sequence to validate things in when you press the execute button on the compile invalid objects window.