A production environment, sometimes called deployment environment, is the set of computers where finished, user-ready software is deployed and executed. When software code is moved to the production environment, it is the final step in a 4-tier architecture that includes development, testing, staging and production. Before it reaches the production environment, the software is still under development, and bugs and flaws are actively found and fixed. When it is deemed ready for production, it is expected to work without error.
The production environment is often referred to as live, especially for servers. It is the environment that users interact with. Deploying to the production environment is handled very carefully, and may require strategies to enable users to transition smoothly to a new version, such as deploying one server with the old code and one with the new, and redirecting traffic to the new server. Deploying a new release can mean an interruption in service, so some user notification may be needed.
The production environment can be housed in a single data center, a network of geographically dispersed machines in multiple data centers, or virtual machines (cloud computing).