terug naar de begrippenlijst

Staging-omgeving

draadmans04
Kort gezegd

Een staging-omgeving is een kopie van een live applicatie waarin je wijzigingen test voordat echte gebruikers ermee werken. Hij lijkt zo veel mogelijk op de live versie, zodat wat daar goed gaat, straks in productie ook goed gaat.

Hoe werkt een staging-omgeving?

Bij de meeste applicaties zijn er drie plekken waar de software draait. De ontwikkelomgeving, op de computer van de developer, waar gebouwd wordt. De staging-omgeving, op een server die net zo is ingericht als de echte. En productie, de versie waar je klanten en medewerkers mee werken.

Een wijziging gaat altijd in die volgorde. Eerst gebouwd, dan op staging gezet en getest, en pas als het daar klopt naar productie. Met CI/CD gaat die stap automatisch, zodat er niemand handmatig bestanden hoeft over te zetten.

Waarom werkt het wel in de demo en niet live?

Omdat een demo en productie op meer punten verschillen dan je zou denken. De demo draait op de laptop van de bouwer, met een handvol testgegevens en één gebruiker. Live zijn er duizenden records, dertig mensen tegelijk, koppelingen met echte systemen en instellingen die net anders staan.

Een staging-omgeving vangt precies dat verschil op. Daar ontdek je dat een overzicht traag wordt bij tienduizend orders, of dat de koppeling met de boekhouding een veld anders verwacht. Bij een prototype mag dat nog. In productie wil je het niet voor het eerst zien.

Staging of acceptatieomgeving: wat is het verschil?

In de praktijk worden ze door elkaar gebruikt. Wie het precies wil zeggen: op staging test de bouwer of alles technisch werkt, op acceptatie test de klant of het doet wat hij bedoelde. Grotere organisaties hebben er twee aparte omgevingen voor, de klassieke OTAP-straat: ontwikkeling, test, acceptatie, productie.

Voor de meeste applicaties die ik bouw is één omgeving tussen ontwikkeling en productie genoeg. Daar kijk ik eerst zelf, en daarna de mensen die er dagelijks mee gaan werken.

Wat heb je nodig om erop te kunnen vertrouwen?

Een staging-omgeving die echt op productie lijkt. Dezelfde serverinstellingen, dezelfde versies van de software, en gegevens die realistisch zijn. Dat laatste is lastig, want echte klantgegevens horen daar niet zomaar in. Volgens de AVG gebruik je liever een geanonimiseerde kopie van de database, of goede testgegevens die erop lijken.

Zet er ook error logging op, net als op productie. Dan zie je de fouten op staging, waar het niets kost. Hoe dat in een traject past, staat op Applicatieontwikkeling.

Veelgestelde vragen

  • Wat betekent staging?

    Letterlijk het klaarzetten van iets voor de volgende stap. In software is staging de tussenstap tussen bouwen en live gaan.

  • Heeft elke applicatie een staging-omgeving nodig?

    Elke applicatie waar een bedrijf op draait wel. Een prototype of interne test kan zonder.

  • Kost een staging-omgeving extra?

    Een beetje hosting, meestal een fractie van de productieomgeving. Dat is veel goedkoper dan een fout die live wordt ontdekt.

  • Wat is productie in software?

    De live versie waar echte gebruikers met echte gegevens werken. Een fout daar raakt direct je klanten of je bedrijf.

Een idee dat blijft hangen? Laten we het samen uitpluizen.

Ik werk met een beperkt aantal organisaties tegelijk en stap alleen in als het écht past.

  • Persoonlijk contact
  • Meedenken en doorbouwen
Michael
Even ‘n draadje aanknopen?