Ontwikkelen · toetsen · in gebruik houden

Kwaliteit blijkt wanneer mensen op het platform rekenen.

Een platform moet een drukke werkdag aankunnen, een wijziging kunnen verwerken en na een storing weer betrouwbaar verder kunnen. Wij verbinden ontwikkeling aan gebruik en beheer. Zo wordt kwaliteit iets dat je kunt beoordelen, niet alleen een belofte bij de oplevering.

Begin met wat niet fout mag gaan

We bepalen met jullie welke handelingen de grootste gevolgen hebben. Bij het aanvraag- en partnerplatform werkten we bijvoorbeeld commissiestaffels, partnerrelaties en batchverwerking uit. Daar raakt een wijziging in een berekening direct aan een commerciële afspraak. Bij JobLog raken uitzonderingen op terugkerend werk aan de opdrachten die medewerkers ontvangen.

Daaruit volgt de testaanpak. We leggen belangrijke bedrijfsregels vast in gerichte tests, controleren integraties en doorlopen de gebruikssituaties met de mensen die het werk kennen. De gewone route én de uitzonderingen horen erbij.

Een geautomatiseerde test bewijst wat hij controleert. Daarom kijken we niet alleen naar aantallen of een groen rapport, maar naar de risico’s die wel en niet zijn afgedekt.

Van wijziging via tests en beoordeling naar vrijgave. Na vrijgave blijft monitoring nodig, met een vooraf uitgewerkte herstelroute.WijzigingIn gebruikTestenBeoordelenEerst toetsenVolgenHerstel voorbereiden

Onze werkwijze

Vrijgeven is niet het einde van de controle.

Vooraf toetsen we de wijziging. Daarna volgen we of het werk nog lukt. In JobLog maakten we voortgang, voltooiing en fouten in achtergrondverwerking afzonderlijk zichtbaar.

Verwerking en opvolging in JobLog

Verschillende soorten bewijs voor verschillende vragen

Vraag Passende controle
Blijft een berekening juist bij een wijziging? Tests van bedrijfslogica en grensgevallen
Mag deze gebruiker deze opdracht aanpassen? Autorisatietests voor toegestane en geweigerde toegang
Blijven toepassingen dezelfde afspraak begrijpen? Contract- en integratietests
Kan een medewerker het werk echt uitvoeren? Browsertests en beoordeling van een complete gebruikssituatie
Blijft het bruikbaar bij drukte? Belastingtests met afgesproken volumes en afhankelijkheden
Kunnen we herstellen? Beproeven van back-upherstel en terugvalscenario’s

We spreken af welke controles bij de opdracht horen. Dat maakt verwachtingen zichtbaar voor de opdrachtgever én voor het ontwikkelteam.

AI versnelt het bouwen; verantwoordelijkheid blijft bij ons

We gebruiken AI waar het helpt bij uitwerking, implementatie en analyse. Gegenereerde code krijgt daarmee geen andere kwaliteitsnorm. Een wijziging moet passen bij de architectuur, de bedrijfsregels en de afgesproken controles.

Voor wijzigingen met grote gevolgen willen we kunnen terugvinden wat er verandert, waarom dat nodig is en hoe het is getoetst. Een test die door hetzelfde hulpmiddel is geschreven als de code verdient evenzeer inhoudelijke beoordeling. Een aannemelijke uitleg is geen bewijs dat een grensgeval werkt.

De winst van sneller schrijven gebruiken we ook om meer situaties te onderzoeken en ideeën eerder met gebruikers te toetsen.

Een release is een gecontroleerde verandering

Ontwikkeling, test en productie hebben elk een eigen rol. We richten een herhaalbare route in van broncode naar gebouwd artefact, controle en vrijgave. Configuratie, geheimen en omgevingskeuzes horen bij die route.

Datamigraties verdienen afzonderlijke aandacht. Een oudere app kan nog actief zijn terwijl de backend wordt vernieuwd. We onderzoeken die afhankelijkheden, maken waar nodig een overgang mogelijk en leggen vast wat terugdraaien wel en niet betekent.

Niet iedere fout kan met een oude applicatieversie worden opgelost. Een al verzonden bericht of gewijzigde betaling vraagt een eigen herstelhandeling.

Monitoring moet vertellen of het werk nog lukt

Een draaiende server is niet hetzelfde als een werkende onderneming. Daarom kiezen we signalen die bij het product passen: mislukte boekingen, vastgelopen taken, fouten in koppelingen en ongebruikelijke responstijden of kosten.

In de praktijk: verwerking met zicht op voortgang en fouten

In JobLog bouwden we achtergrondverwerking voor abonnementstaken. De wachtrijflow verwerkt werk in batches en houdt voortgang, voltooiing en fouten bij. Daardoor bestaat er een onderscheid tussen werk dat is aangeboden en werk dat daadwerkelijk is verwerkt. Dat is de informatie waarop gerichte opvolging kan worden ingericht.

We bepalen wie meldingen ontvangt, wanneer actie nodig is en welke informatie helpt bij onderzoek. Daarbij vermijden we dat logging een tweede ongecontroleerde verzameling persoonsgegevens wordt.

Hersteldoelen bespreken we vanuit het gebruik: hoe lang mag een functie uitvallen en hoeveel gegevensverlies is aanvaardbaar? Google Cloud’s reliability framework verbindt betrouwbaarheid eveneens aan gebruikersdoelen, monitoring en hersteltests. De invulling moet bij jullie onderneming en budget passen.

Beheer met duidelijke verantwoordelijkheden

Onderhoud, bereikbaarheid en verdere ontwikkeling zijn verschillende afspraken. We maken duidelijk wat onder het beheer valt, hoe nieuwe wensen worden opgepakt en welke inzet bij jullie team ligt. Bereikbaarheid en responstijden leggen we vast in een beheerafspraak die past bij het belang van het platform.

Bij een Amerikaanse bouwmaterialenleverancier onderhouden en moderniseren we verkoop-, voorraad- en logistieke toepassingen en begeleiden we de interne ontwikkelaars. Productberekeningen, vestigingscontext en bestaande koppelingen zijn daarbij onderdeel van het werk. We verbinden technische vernieuwing aan de bedrijfskennis in de omgeving en de mensen die ermee verder moeten.

Overdracht is een praktische test van zelfstandigheid

Broncode alleen is niet genoeg. Een volgend team moet kunnen begrijpen hoe het product is opgebouwd, hoe het wordt gestart en uitgerold en waar de belangrijkste risico’s zitten.

Voor een platform voor vastgoedonderhoud werkten we de requirements van de opdrachtgever uit, ontwikkelden we de web- en mobiele toepassingen en backend en droegen we het project na akkoord over. Dat is een andere opdrachtvorm dan langdurig beheer. Beide vragen om een duidelijke grens tussen onze verantwoordelijkheid en die van het volgende team.

Daarom nemen we documentatie, toegang, omgevingen en beheerafspraken mee in de oplevering. Rechten op code en afhankelijkheden leggen we contractueel vast. We maken overstappen of samenwerken mogelijk door de kennis deelbaar te houden. Meer over beheer en doorontwikkeling.

De volgende stap

Een technische partner voor jullie opdracht?

Leg ons de architectuurvraag, integratie of ontwikkelopdracht voor. We bespreken de afhankelijkheden en onze rol naast jullie team.

Bespreek je plannen