A large amount of effort and resources in an IT organization is dedicated to create and manage the hardware and software systems which directly supports the business, generically called the "production environment." Probably even more effort and resources are used to manage the hardware and software systems used for application development, testing, support and training – the “non-production environments.”
There are several ways to classify non-prod environments. Based on what they is used for, there are: development, testing, training and production-support environments. Testing environments are further split in integration, functional, structural (non-functional) testing and user acceptance testing environments. Another classification is based on how many applications are deployed in the environment. There can be one-system, multi-systems and all-systems environments. For example a development team uses a development/one-system environment and an integration/multi-systems environment.
This article is about how to define the scope for a non-prod environment in terms of applications deployed, application versions and application data.