Definitie
Deployment is het proces waarmee software vanuit de ontwikkelomgeving daadwerkelijk live wordt gezet op de servers waar eindgebruikers ermee werken. Het is de stap tussen “het werkt op de laptop van de ontwikkelaar” en “het werkt voor klanten”. Wat ertussen gebeurt: kopieren, installeren, configureren, databases bijwerken, services herstarten.
Goed ingerichte deployments verlopen geautomatiseerd, voorspelbaar en snel terug te draaien als iets misgaat. Slecht ingerichte deployments zijn handmatige operaties met checklists, late avonden en stress. Het verschil tussen die twee bepaalt hoe vaak een team durft te releasen, en daarmee hoe snel jouw bedrijf op klantwensen kan reageren.
Waarom het ertoe doet voor MKB
Hoe vaak en hoe vlot software naar productie kan, is een directe afspiegeling van hoe wendbaar het IT-landschap is. Bedrijven die wekelijks of dagelijks kunnen deployen, kunnen klantfeedback snel verwerken, fouten snel herstellen en kleine experimenten doen. Bedrijven die elk kwartaal een grote release uitrollen, accumuleren risico en zien fouten pas na lange tijd.
Voor MKB-bedrijven met maatwerk-software of een SaaS-product is de kwaliteit van het deployment-proces vaak het verborgen verschil tussen een leverancier die meedenkt en eentje die alleen reageert. Een goede inrichting is geen luxe, maar het fundament onder doorlopende verbetering.
Concreet voorbeeld
Een kleine SaaS-leverancier voor de zorg deed deployments handmatig: ontwikkelaar logt ’s avonds in op de server, kopieert bestanden, draait scripts. Per deployment kostte het anderhalf uur en eens per maand ging er iets mis (database-update vergeten, configuratiebestand overschreven). Het team durfde alleen op vrijdagavond te deployen, wat de doorlooptijd van nieuwe functionaliteit op gemiddeld vijf weken bracht.
Een investering van circa €15.000 in een geautomatiseerde deployment-pipeline (Git, geautomatiseerde tests, scripts voor uitrol en terugrol, monitoring) veranderde de dynamiek. Deployments duren nu zes minuten, draaien meerdere keren per week en kunnen binnen twee minuten teruggedraaid worden als iets afwijkt. Doorlooptijd van klantverzoek naar live ging naar circa zeven dagen. De terugverdientijd op de investering: vier maanden, alleen al door minder verloren ontwikkeluren.
Misverstanden en valkuilen
- “Deployen is gewoon bestanden kopieren.” Voor de simpelste website misschien. Bij elke serieuze applicatie zit er database-migratie, cache-vernieuwing, en koppeling met andere systemen omheen. Onderschatting hier veroorzaakt de meeste avonden van langere duur.
- “Vaker deployen geeft meer risico.” Het tegendeel klopt in de praktijk. Kleine, frequente wijzigingen zijn makkelijker te beoordelen en terug te draaien dan grote kwartaal-releases waarin honderden veranderingen zitten.
- “Onze hoster doet dat wel.” Een hoster levert servers, niet jouw deployment-proces. Tussen oplevering van code en draaiende software zit configuratie, integratie en testdraaien dat door iemand met kennis van jouw applicatie moet gebeuren.
- “Terugdraaien doen we wel in noodgevallen.” Als terugdraaien niet routinematig is geoefend, werkt het juist in een noodgeval niet. Goed ingerichte terugrol is even belangrijk als de uitrol zelf.
Wanneer moet je hiervan wakker liggen, wanneer niet
Wakker liggen: als deployments in jouw bedrijf ’s avonds of in het weekend gebeuren omdat overdag het risico te groot wordt geacht. Of als releases steeds zeldzamer worden omdat het team het niet aandurft. Dat zijn allebei tekenen van een proces dat niet houdbaar is. De kosten van het opschonen lopen op naarmate er gewacht wordt.
Niet wakker liggen: als jouw bedrijf alleen standaard SaaS-software gebruikt, zonder maatwerk. Deployments zijn dan de zorg van de SaaS-leverancier. Wel verstandig om bij selectie van een SaaS-product te vragen hoe vaak ze releasen en hoe ze omgaan met fouten: vaak releasen wijst op een gezond ontwikkelproces, kwartaalreleases op het tegenovergestelde.
Gerelateerde termen
- CI/CD: het automatiseringsraamwerk dat moderne deployments mogelijk maakt, inclusief tests en uitrol.
- DevOps: werkwijze waarin ontwikkeling en operatie samenwerken om soepele deployments te realiseren.
- Containerization: techniek (Docker, Kubernetes) die deployments voorspelbaarder maakt door alle afhankelijkheden mee te verpakken.
- Serverless: deployment-model waarin de cloud-provider het uitrolproces grotendeels overneemt.
- SLA: beschikbaarheidsafspraken die staan of vallen met de kwaliteit van het deployment-proces.