The Development partition is where the application is developed and where Task Tracking is used to track changes, lock objects to tasks, and synchronize changes as they occur. Developers check out objects to work on, make their changes, then check-in those changes. Unlocking of objects from tasks may occur on check-in, depending on the Task Tracking approach. When changes are complete, objects can be moved (export/import) to the Test partition for more stringent integration testing. Export List can be moved, as well.
The Test Environment is where Integration testing is performed. No changes are made here to the code here; all new/changed objects originate from Development. When testing is complete, objects are moved (export/import) to QA/User Acceptance environment, using and moving export list that originated in Development.
Quality Assurance / User Acceptance – Final testing/staging before promotion to Production; should be identical to Production with the exception of objects/feature/fix being evaluated; when users sign off on the changes, objects are promoted to Production (export/import).
Production – Final destination for any changed objects – this is where the end-users perform their day-to-day work.