
AI kan tegenwoordig apps bouwen… toch? Dat dachten wij ook. De afgelopen maanden werkten we aan een complex platform, met veel states, afhankelijkheden en onderlinge logica. Geen simpele applicatie, maar een systeem waarin acties, deadlines en communicatie continu op elkaar ingrijpen. Dus toen AI-tools steeds krachtiger werden, besloten we het serieus te testen: kunnen we dit laten bouwen door Claude?
Eerste stap: AI direct aansluiten op het design
We gaven Claude toegang tot Figma via MCP; een manier om AI direct met externe tools zoals designbestanden te laten werken. Daarmee kon het onze volledige design file gebruiken, inclusief alle pagina’s en de component library.
Hoewel we dachten dat met zo’n directe connectie Claude het design direct zou overnemen in de front-end, ging dat in eerste instantie juist niet goed. Door de hoeveelheid states en varianten van pagina’s verloor AI het overzicht. Componenten werden door elkaar gehaald en schermen klopten niet. Tegelijkertijd zagen we dat de hoofdlijnen vaak wel bruikbaar waren. Bekende patronen zoals filteren, sorteren en het toewijzen van personen werkten vrijwel direct.
Het contrast was duidelijk: generieke functionaliteit ging goed, maar zodra context en samenhang belangrijk werden, ging het mis.
Tot je bij de logica komt…
Zodra we de kern van het systeem raakten, werd dat verschil nog scherper. Dit platform draait niet op schermen, maar op logica: statussen die veranderen op basis van acties, deadlines die verlopen en impact hebben op meerdere gebruikers, en berichten die alleen onder specifieke voorwaarden verstuurd mogen worden.
Wat we zagen, was geen complete mislukking, maar iets subtielers. AI genereerde oplossingen die op zichzelf klopten, maar geen rekening hielden met het gedrag van het systeem als geheel. Een aanpassing die lokaal logisch was, zorgde ergens anders voor inconsistentie.
AI volgt instructies, maar bewaakt geen samenhang.
De omslag: van uitleg naar specificatie
We moesten dus stoppen met uitleggen en beginnen met exact specificeren.
In plaats van losse prompts zijn we de volledige business logica gaan structureren in Excel. Per regel beschreven we één situatie, met kolommen voor status, actie, actor, trigger, volgende status en vervolgstappen. Daarnaast legden we exact uit wat er waar getoond moest worden, inclusief uitzonderingen en afhankelijkheden.
In de laatste kolom bouwden we op basis van al deze velden een samengestelde prompt. Zo werden de prompts zeer consistent en omschreven alles over één situatie. De Excel werd daarmee niet alleen documentatie, maar een manier om systematisch prompts te genereren.
Het werkte… maar was nog niet testbaar
Met deze aanpak zagen we direct verbetering. Claude kon de logica grotendeels correct vertalen naar werkende functionaliteit. Maar testen bleef lastig. Flows bleven hangen, berichten kwamen niet echt binnen en processen werden niet volledig doorlopen. Je zag losse stappen werken, maar nooit het geheel.
Testflows als ontbrekende schakel
Om dat op te lossen, hebben we zelf testflows ontworpen. Routes door het systeem die alle logica raken en statussen doorlopen. Voor elke stap genereerden we losse pagina’s, zodat we elke overgang actief konden testen.
Dat maakte het mogelijk om gedrag te herleiden. Als iets niet klopte, konden we het terugbrengen naar een specifieke regel in de Excel en dus naar een specifieke prompt.
Een nieuwe manier van feedback geven
Om feedback te geven op de door AI ontwikkelde front-end hebben we een vergelijkbare structuur als bij de logica opgezet. In Excel verzamelden we prompts met screenshots, links naar Figma-componenten en concrete beschrijvingen. Met hulp van Claude en ChatGPT scherpten we die feedback verder aan.
Door dit consequent te doen, zagen we verbeteringen. Niet omdat AI het systeem ineens volledig begreep, maar omdat onze input beter werd.
Wat dit met ons werk doet
We gingen dit experiment in met het idee dat AI ons werk zou verminderen. In de praktijk moesten we juist meer nadenken, meer structureren en veel explicieter worden.
Alles wat impliciet was, moest concreet worden gemaakt. En juist daardoor zie je waar je eigen logica nog niet klopt, waar gaten zitten of waar aannames verstopt zijn.
Ook in een traditioneel traject hadden we deze logica moeten overbrengen naar developers. Alleen gebeurt dat vaak via gesprekken, interpretatie en iteraties. Door het nu zo expliciet uit te schrijven, dwing je jezelf om het systeem volledig te doorgronden - en haal je veel onduidelijkheden en potentiële fouten al naar voren voordat ze in de build terechtkomen.
Waar we nu staan
We zijn nog volop bezig. Wat we wel zien: in korte tijd staat er iets wat met een traditioneel traject waarschijnlijk maanden had gekost. Tegelijkertijd is het nog niet stabiel en vraagt het veel aandacht om het werkend te krijgen.
AI vervangt development hier niet, maar verandert het wel. Het verschuift het werk naar voren: minder bouwen op gevoel, meer vooraf expliciet maken wat er moet gebeuren. Dat vraagt meer denkwerk, maar levert ook scherpere systemen op.
En precies dat maakt het interessant.
