To ensure delivery of changes in an agile and uninterrupted way it is necessary to have multiple concurrent environments to build and test changes.
DEV environment consists of number of development services that are used to build and host solution artifacts.
TEST or (User Acceptance Environment) UAT environment is used as stable test environment to do end user acceptance testing.
NFT environment is identical to PROD environment to facilitate infrastructure tests such as penetration testing, backup/restore, disaster recovery, deployment and performance testing.
PROD environment is where customer personal data lives in and which hosts live services exposed to general public.