There isn't any way to automate step 3 (other than building the database schema in the DDT to start with, of course ). You can automate step 4 using the command line capabilities of the DDT. Whenever you deploy a package, it shows you the command line build text used to create that build. You coud call that command from within any automated build procedure to "refresh" your DDT package before deployment. This is what we do during our own build process to ensure the most recent DDT schema and contents always get deployed.