About Roles and Environments
DI suggests that there are four basic roles to consider in a customer installation and deployment. The roles are:
- Development—People responsible for the creation of cBases, cPlans, Dive files, classic models, DivePlans and markers, and pages for DivePort or DiveTab
- Test—People responsible for change control and data validation when rolling out a new application, or upgrading software
- Production—People responsible for delivering data to users through any of the DI clients
- Build—People responsible for the part of the extract, transform, and load (ETL) process involving the creation of up-to-date cBase and model files on a regular, usually nightly, schedule
Roles are independent of machines or engines and more than one role can be performed in the same environment. For example, if the people responsible for content development are also responsible for testing and validation, you can combine the Development and Test roles in the same environment. However, Test and Development environments should be isolated from the Production environment to prevent untested content from reaching users.
DI supports and recommends the use of virtual machines to manage resources. A best practice is to host virtual machines on hardware dedicated to DI applications.
DI recommends that the Production, Development, and Test environments reside on separate machines, either physical or virtual, and host one DiveLine service for each role.