The Staging Environment
The staging area is a place that should mimic the production environment as closely as possible. Although this is sometimes hard to achieve, the more closely you can mimic the production environment, the better it will be. You will be able to see how your code reacts in a protected area, but one that simulates the real production environment at the same time. The staging environment can often be a place where the end user or client can test out new features or functionality, giving feedback and stress testing code without fear of affecting production code.
Note
As testing and experimentation progress, your staging area (at least from a data perspective) will eventually distance itself from the production environment. So it is a good practice to have procedures in place that will replace the staging area with production information from time to time. The set times will be different for each company or development shop depending on features being created, release cycles, etc.
If resources permit, you should consider having two separate staging areas: one for developers (coding peers) and the other for client testing. Feedback from these two types of users is quite often very different and very telling. Server error reporting and feedback should be kept to a minimum here as well, to enable production duplication as closely as possible.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access