Development
This is where the software is developed - it's the working environment for individual developers or small teams. Its purpose is for the developer to work on local host, separate from the rest of the team, allowing them to make changes without worrying that it may alter the work of other team members.
Staging
Staging is used to assemble, test and review the application before it goes into production. It usually tries to simulate the production environment as much as possible, both hardware- and software-wise. Normally, before releasing an update to the production environment, the update must be tested on staging first. This environment can also be used as a demonstration or training environment.
Production
Production is the "live" environment, where the final application goes out to the world and becomes active.
Switching between environments
To switch from one environment to another, the article recommends using Subversion (SVN) source code. The "Using SVN on Aptana" article explains how to set up a development environment on a local computer and then move it to a staging environment.
Frequently Asked Questions
What is a "server environment" in hosted software development? +
It refers to a server tier designated to a specific stage in a release process. The purpose of using different environments is to improve the development, testing and release processes in client-server applications.
What is the development environment used for? +
It's the working environment for individual developers or small teams, where the developer works on local host, separate from the rest of the team, allowing changes to be made without worrying about altering the work of other team members.
What is the staging environment used for? +
It's used to assemble, test and review the application before it goes into production, and it usually tries to simulate the production environment as closely as possible, both hardware- and software-wise. Before releasing an update to production, it must normally be tested on staging first, which can also serve as a demonstration or training environment.
What is the production environment? +
It's the "live" environment, where the final application goes out to the world and becomes active.
How do you switch an application from one environment to another? +
The article recommends using Subversion source code to switch from one environment to another, and points to the "Using SVN on Aptana" article for details on setting up a development environment locally and then moving it to a staging environment.