Wat is het verschil tussen een staging, UAT en production omgeving?
Wanneer je betrokken bent bij de ontwikkeling van een grotere (complexere) website, kom je al snel in aanraking met termen zoals ‘staging’, ‘UAT’ en ‘production’. Wat is dat precies, en wat is het verschil?
Wat is een production omgeving?
Beginnen doen we met de ‘production’ (productie) omgeving, aangezien dat de meest voor de hand liggende is. Als je beschikt over een live website, dan beschik je over een production omgeving. Het is de ‘live’ omgeving die door iedereen kan worden gebruikt. Het is de website die mensen te zien krijgen wanneer ze jouw domeinnaam intypen in hun browser.
Wanneer je ontwikkelaar vraagt of een bepaalde aanpassing “naar productie mag”, dan vraagt deze dus of de wijzigingen ‘live’ mogen zodat ze voor iedereen zichtbaar zijn.
Dat is echter niet altijd wenselijk. Soms wil je eerst aanpassingen of uitbreidingen aan je website intern valideren alvorens deze voor iedereen zichtbaar te maken. Elke aanpassing aan de code van de website kan namelijk zorgen voor onbedoelde neveneffecten. Alhoewel aanpassingen altijd goed worden getest door de ontwikkelaars, kan er altijd iets over het hoofd gezien worden.
Daarom wordt er voor grotere projecten gebruikgemaakt van afgeschermde omgevingen waar aanpassingen grondig kunnen worden gevalideerd alvorens deze live te zetten.
Wat is een staging omgeving?
Een staging omgeving is een testomgeving. Het is vaak een afgeschermde webserver met dezelfde configuratie als de productie server (al dan niet met beperkte resources om kosten te besparen) die grotendeels intern wordt gebruikt door de ontwikkelaars. Voor een testomgeving wordt vaak een subdomein gebruikt (zoals testing.starkindustries.be)
Voor een staging omgeving wordt ook vaak een kopie gemaakt van de productie omgeving, maar gezien de vele experimenten die gebeuren op deze omgeving, is het geen accurate weerspiegeling van de productie omgeving.
Een testomgeving is niet alleen handig om aanpassingen aan de code te valideren, maar bijvoorbeeld ook om te controleren of WordPress plugins probleemloos kunnen worden bijgewerkt.
Wat is een UAT omgeving?
Een UAT omgeving wordt ook wel een ‘acceptance‘ omgeving genoemd. De afkorting staat namelijk voor ‘User Acceptance Testing‘. Dit is opnieuw een afgeschermde omgeving die idealiter een exacte kopie is van jouw productie omgeving. Het idee is om aanpassingen die klaar zijn voor productie, eerst uit te rollen op UAT, waar de klant de aanpassing kan valideren. Geeft de klant groen licht, dan wordt de identieke aanpassing ook doorgezet naar de productie omgeving.
Het opzetten, runnen en onderhouden van drie servers komt met extra kosten, waardoor ook vaak wordt gekozen voor een combinatie van een staging en UAT. In dat geval heb je de productie (live) omgeving en een algemene testomgeving waar de ontwikkelaars volop aanpassingen kunnen testen. Van zodra er een aanpassing klaar staat voor validatie, geven de ontwikkelaars je toegang tot de testomgeving zodat je de aanpassing kan valideren.

