Thanks for your responses.
Great article Mohammad.
Mrwizard - so you do all customizations in your Live environment and then move all your changes to your DEV and Training platforms? See the reason I ask is because we currently do not have a process for this yet so we either have to create small customizations in both platforms. I was just wondering if some people have a process for some customizations they do in both and others they only customize in one platform then import / export into the other platforms. For instance, what types of thing should we be customizing in a development platform so that we don't use live data? Any best practices?