Research Article |
|
Corresponding author: Koen Derks ( k.derks@nyenrode.nl ) Academic editor: Barbara Majoor
© 2026 Koen Derks, Lotte Mensink, Remko Renes.
This is an open access article distributed under the terms of the Creative Commons Attribution License (CC BY-NC-ND 4.0), which permits to copy and distribute the article for non-commercial purposes, provided that the article is not altered or modified and the original author and source are credited.
Citation:
Derks K, Mensink L, Renes R (2026) No-code software als didactische opstap voor het ontwikkelen van datageletterdheid. Maandblad voor Accountancy en Bedrijfseconomie 100(4): 201-213. https://doi.org/10.5117/mab.100.199406
|
Datageletterdheid wordt een steeds belangrijkere competentie voor de moderne accountant. In dit artikel wordt de meerwaarde van no-code software beschreven voor het ontwikkelen van deze competentie bij (toekomstige) accountants. Dit type software biedt een grafische interface waarmee kennis over relevante kernprincipes en analyses opgedaan kan worden zonder programmeervaardigheden. Hierdoor ligt de primaire focus op conceptueel begrip in plaats van syntactische en technische complexiteit van programmeren. Met een praktijkcasus over machine learning wordt geïllustreerd hoe no-code software het leerproces actief ondersteunt ten opzichte van programmeertalen. Tot slot worden er aanbevelingen gegeven voor het gebruik van no-code software in een geïntegreerde accountantsopleiding.
Data-analyse, datageletterdheid, machine learning, no-code software, open-source software
No-code software biedt een leeromgeving waarin (toekomstige) accountants een basisniveau van datageletterdheid kunnen ontwikkelen. Door via no-code software kennis te maken met nieuwe data-analyse technieken, zoals machine learning, kunnen accountants de vaardigheden ontwikkelen om dit soort analyses in de praktijk te reviewen. Met het breed aanleren van datageletterdheid bij accountants kan worden ingespeeld op de toenemende behoefte aan datagedreven inzichten in de auditpraktijk.
De auditpraktijk wordt in toenemende mate geconfronteerd met de noodzaak om datagedreven inzichten te benutten ter verbetering van de efficiëntie en effectiviteit van de controle (e.g.,
Een belangrijke voorwaarde om de kloof tussen technische mogelijkheden en praktische implementatie te verkleinen is dat (toekomstige) accountants beschikken over een basisniveau van datageletterdheid. Datageletterdheid verwijst naar het vermogen om data-analyses te beoordelen en hun uitkomsten te vertalen naar zinvolle inzichten (
Traditioneel onderwijs, gericht op het ontwikkelen van datageletterdheid, is vaak sterk gericht op het aanleren van programmeervaardigheden, zoals Python en R (
Een veelbelovend alternatief voor het ontwikkelen van datageletterdheid bij accountants is het gebruik van no-code software (
Dit artikel beargumenteert en illustreert de didactische meerwaarde van no-code software voor het aanleren van datageletterdheid in de accountantsopleiding. Hoewel het betoog specifiek gericht is op de accountantsopleiding, is de voorgestelde aanpak ook relevant voor andere opleidingen waarin datageletterdheid een kerncompetentie is, zoals de controllersopleiding. De opzet van dit artikel is als volgt. Allereerst bespreekt paragraaf 2 de didactische afwegingen tussen no-code software en programmeertalen. Vervolgens illustreert paragraaf 3 het gebruik van no-code software aan de hand van een praktische casus over machine learning. Hierin wordt getoond hoe een model kan worden getraind zonder één regel code te schrijven en hoe no-code software het leerproces daarbij actief ondersteunt. Aansluitend presenteert paragraaf 4 aanbevelingen voor het introduceren van no-code software in de accountantsopleiding en paragraaf 5 bevat de conclusie.
In deze paragraaf worden de twee belangrijkste didactische afwegingen besproken met betrekking tot de inzet van no-code software om datageletterdheid te ontwikkelen. Deze afwegingen zijn trade-offs: voordelen op het ene vlak gaan gepaard met beperkingen op een ander vlak. Ze betreffen respectievelijk de balans tussen ingebouwde vangnetten en flexibiliteit enerzijds en de balans tussen de mate waarin de software kennisopbouw ondersteunt en het risico op oppervlakkig begrip anderzijds.
Een belangrijk argument voor het gebruik van no-code software is dat het de technische instapdrempel aanzienlijk verlaagt ten opzichte van programmeertalen. Studenten worden bijvoorbeeld niet geconfronteerd met de syntactische complexiteit en de vaak non-informatieve foutmeldingen en debuggingprocessen die inherent zijn aan Python en R. Dit neemt de cognitieve belasting en frustratie weg die normaliter bij beginners gepaard gaat met het schrijven van code (
Een ander argument voor het gebruik van no-code software is dat het ingebouwde vangnetten bevat om studenten in goede banen te leiden. Gebruikers leren sneller de functionele voordelen van de techniek ervaren en worden daarbij minder afgeleid en weerhouden door de uitdagingen om zelf programmeren foutloos onder de knie te krijgen. Voorbeelden hiervan zijn gestandaardiseerde workflows, weloverwogen standaardinstellingen, en informatieve foutmeldingen. Dit soort vangnetten begeleiden studenten stap voor stap door het analyseproces en nemen de kans op zowel syntactische fouten als methodologische missers grotendeels weg (bijvoorbeeld onlogische of onmogelijke instellingen) die bij programmeren gemakkelijk kunnen optreden. Dat zorgt voor minder frustratie, wat de motivatie kan vergroten (
Deze twee voordelen gaan echter gepaard met een beperking: no-code software biedt in vergelijking met programmeertalen slechts een beperkte mate van flexibiliteit. Doordat studenten met een grafische interface werken, zijn zij gebonden aan de keuzes en restricties die de softwareontwikkelaars hebben vastgelegd. Dit betekent bijvoorbeeld dat niet alle mogelijke instellingen aangepast kunnen worden. Toepassingen van data-analyse die moeten worden geïntegreerd in een bestaande auditworkflow (bijvoorbeeld koppelingen met bronsystemen van een klant) lopen daarom snel tegen de grenzen van no-code software aan. Programmeertalen bieden daarentegen controle over het volledige analyseproces. Daarom is no-code software geen volwaardig alternatief voor het gebruik van programmeertalen in de beroepspraktijk, maar fungeert het primair als didactische opstap voor het ontwikkelen van datageletterdheid.
No-code software biedt drie verschillende functionaliteiten die kennisopbouw actief ondersteunen. Een eerste relevante functionaliteit is de directe feedback die de software doorgaans geeft. Zodra een student een handeling uitvoert, worden bijvoorbeeld de resultaten onmiddellijk geüpdatet of worden foutmeldingen onmiddellijk weergegeven. Daarmee ontstaat een directe koppeling tussen gemaakte keuzes en hun gevolgen voor de uitkomsten. Hierdoor leren studenten sneller de causale relaties tussen instellingen en uitkomsten te herkennen, wat het leerproces versterkt (
Een tweede functionaliteit waarmee no-code software kennisopbouw actief ondersteunt, is geïntegreerde uitleg. Voorbeelden hiervan zijn automatische interpretatie van resultaten, uitgebreide helpbestanden, of korte definities via tooltips. Deze uitleg verschijnt precies op het moment dat studenten de informatie nodig hebben, namelijk als zij deze opvragen, wat aansluit bij het principe van just-in-time learning (
Een laatste functionaliteit waarmee no-code software de kennisopbouw actief ondersteunt, is de sterke nadruk op visualisatie. No-code software genereert automatisch relevante grafieken die studenten inzicht bieden in de uitkomsten. Doordat deze grafieken abstracte statistische concepten concreet en makkelijk interpreteerbaar maken, krijgen studenten een beter begrip van de uitkomsten. Dit bevordert het leerproces vooral wanneer studenten worden aangezet om actief te verwoorden wat zij zien, omdat dit diepere verwerking stimuleert (
Hoewel deze drie functionaliteiten van no-code software de kennisopbouw actief ondersteunen, ontstaat hierdoor tegelijkertijd het risico dat studenten een oppervlakkig begrip ontwikkelen. Doordat no-code software veel stappen automatisch uitvoert en complexe berekeningen verhult achter eenvoudig uitziende keuzes, bestaat het risico dat studenten vooral de interface leren bedienen, zonder inzicht te ontwikkelen in de statistische aannames en relaties die een analyse daadwerkelijk sturen (
Zoals blijkt uit deze uiteenzetting, vereist de inzet van no-code software een expliciete afweging. De lage technische instap en de actieve ondersteuning van kennisopbouw kunnen het ontwikkelen van datageletterdheid voor (toekomstige) accountants vergemakkelijken. Tegelijkertijd is de flexibiliteit van dit type software beperkt ten opzichte van programmeertalen en bestaat er een risico op oppervlakkig begrip. No-code software fungeert daarom vooral als didactische opstap. Voor generalisten, die voldoende kennis nodig hebben om analyses te kunnen beoordelen, kan deze opstap volstaan. Voor specialisten vormt zij alleen een voorbereiding op technische implementatie in programmeertalen, maar niet het eindpunt van het leerproces. In het volgende hoofdstuk worden de voordelen van het gebruik van no-code software concreet geïllustreerd aan de hand van een praktische casus, waarin wordt getoond hoe dit type software het leerproces actief ondersteunt ten opzichte van programmeertalen.
In deze paragraaf wordt aan de hand van een praktijkcasus gedemonstreerd hoe no-code software de toepassing van data-analysetechnieken, en daarmee het leerproces, ondersteunt. Eén van de technieken die vaak wordt genoemd wanneer men spreekt over het genereren van datagedreven inzichten is machine learning. Machine learning is een subdomein van kunstmatige intelligentie dat zich richt op het trainen van modellen om patronen in data te herkennen en op basis daarvan voorspellingen te doen voor nieuwe data (
In deze paragraaf gebruiken we JASP (
JASP combineert een intuïtieve point-and-click grafische interface (
Om te illustreren hoe JASP het leerproces actief ondersteunt, wordt de volgende praktijkcasus gebruikt. Tijdens de planningsfase van de interim-controle over het boekjaar 2026 richt een auditor zich op de post omzet, gezien het materialiteitsniveau en de risico’s die samenhangen met een juiste periodetoerekening. De klant hanteert relatief lange betalingstermijnen en kent een heterogeen klantenbestand met historisch uiteenlopend betalingsgedrag, waardoor het risico bestaat dat een deel van de omzet te vroeg is verantwoord. Ter ondersteuning van de inschatting van dit risico analyseert de auditor historisch beschikbare gegevens over betalingsgedrag uit voorgaande boekjaren.
Het doel van de analyse is om op basis van de historische gegevens een model te trainen dat voorspelt welke facturen in de relevante periode van 2026 mogelijk niet op tijd betaald zullen worden. De voorspellingen van dit model dienen niet als zelfstandig auditbewijs, maar als ondersteuning bij de risico-inschatting. Facturen met een relatief hoge voorspelde kans op late betaling kunnen bijvoorbeeld aanleiding geven tot gerichte vervolgwerkzaamheden, zoals uitgebreidere afloopcontroles of een kritische beoordeling van de voorziening voor dubieuze debiteuren.
De historische dataset bestaat uit 2.000 facturen, met zowel financiële kenmerken als andere klantindicatoren.
Voor het classificeren van de facturen als ‘te laat’ of ‘op tijd’ gebruikt de auditor het k-nearest neighbors (KNN)-algoritme. KNN is relatief eenvoudig en daardoor geschikt voor situaties waarin begrijpelijkheid centraal staat. Het algoritme volgt een intuïtief principe: om een voorspelling te maken voor een ongeziene factuur, zoekt het model naar de meest vergelijkbare historische facturen op basis van alle beschikbare kenmerken en gebruikt het betaalgedrag van deze ‘buren’ als basis voor de voorspelling.
Bij het maken van een voorspelling selecteert het algoritme de k dichtstbijzijnde buren in de historische dataset. De keuze van k is een belangrijke modelparameter: een lage waarde kan leiden tot overgevoeligheid van het model, terwijl een hoge waarde de voorspellingen minder genuanceerd maakt (
Illustratie van het KNN-algoritme en de invloed van verschillende waarden van k op de voorspelling voor de met de blauwe driehoek aangegeven factuur. Noot: Bij k = 1 voorspelt het model een op tijd betaalde factuur (groene cirkel), bij k = 3 verschuift de meerderheid van de dichtstbijzijnde buren naar te laat betaalde facturen (rode vierkanten) en bij k = 5 keert de voorspelling terug naar een tijdige betaling.
In deze subparagraaf wordt stap voor stap uitgewerkt hoe het KNN-algoritme in JASP wordt toegepast binnen een realistische auditcasus. Daarbij ligt de nadruk op het vergelijken van no-code software met het werken in programmeertalen met betrekking tot de twee didactische afwegingen in paragraaf 2. Tabel
Overzicht van veelvoorkomende fouten en hun afhandeling in verschillende softwarepakketten.
| Fout | JASP | caret (R) | mlr3 (R) | kknn (R) | scikit-learn (Python) |
|---|---|---|---|---|---|
| 1. Onbedoeld niet schalen | ✓ Automatisch opgelost (standaardinstelling) | X Niet opgevangen | X Niet opgevangen | ✓ Automatisch opgelost (standaardinstelling) | X Niet opgevangen |
| 2. Verkeerd meetniveau doelvariabele | ✓ Automatische correctie | ✓ Automatische correctie | ✓ Informatieve foutmelding (uitvoer) | X Voert regressie uit | ✓ Automatische correctie |
| 3. Tekstvariabele als feature | ✓ Automatische transformatie naar factor | ✓ Automatische transformatie naar factor | X Non-informatieve foutmelding | ✓ Automatische transformatie naar factor | X Non-informatieve foutmelding |
| 4. Onlogische datasplitsing | ✓ Informatieve foutmelding (invoer) | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing | X Niet ondersteund | ✓ Informatieve foutmelding (uitvoer) |
| 5. k = 0 | ✓ Informatieve foutmelding (invoer) | ✓ Informatieve foutmelding (uitvoer) | X Non-informatieve foutmelding | ✓ Informatieve foutmelding (uitvoer) | ✓ Informatieve foutmelding (uitvoer) |
| 6. k > aantal trainingsobservaties | ✓ Informatieve foutmelding (uitvoer) | X Crash / Aanpassing naar maximum | ✓ Informatieve foutmelding (uitvoer) | ✓ Informatieve foutmelding (uitvoer) | X Non-informatieve foutmelding |
| 7. Evaluatie / validatie op trainingsset | ✓ Niet mogelijk | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing |
| 8. Inconsistent schalen bij voorspellen | ✓ Niet mogelijk | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing | X Mogelijk, geen waarschuwing |
De toepassing van het KNN-algoritme begint met het openen van de historische dataset in JASP en het selecteren van de ‘K Dichtste Buren’-analyse (wanneer de interface op Nederlands staat ingesteld) binnen de machine learning module. In de bijbehorende gebruikersinterface kan een student de relevante variabelen eenvoudig naar de bijbehorende invoervelden slepen. De wijze waarop deze invoeropties en bijbehorende feedback worden gepresenteerd heeft directe gevolgen voor zowel kennisopbouw als gebruiksgemak.
3.4.1.1. Ondersteuning van kennisopbouw
JASP ondersteunt kennisopbouw door de interface af te stemmen op statistische concepten en hun onderlinge samenhang. Hierdoor worden studenten geholpen bij het interpreteren van zowel invoerkeuzes als modeluitvoer. Zo geeft de interface bijvoorbeeld per invoerveld aan welk meetniveau wordt verwacht en biedt het de mogelijkheid om verschillende tabellen en grafieken op te vragen voor de uitvoer. Voor elke optie is gedetailleerde uitleg beschikbaar via het ‘i’-symbool in de rechterbovenhoek. JASP bevat bovendien een databibliotheek met uitgewerkte voorbeelden die de interpretatie van relevante uitvoer stap voor stap toelichten. Dit is functionaliteit waarvan in paragraaf 2 is beargumenteerd dat het de kennisopbouw ondersteunt.
3.4.1.2. Ingebouwde vangnetten
Naast ondersteuning biedt de interface ingebouwde vangnetten die studenten behoeden voor veelvoorkomende methodologische fouten. Zodra de variabelen zijn gespecificeerd, voert JASP bijvoorbeeld automatisch de benodigde berekeningen uit. Studenten doorlopen daarbij vanzelf een gestandaardiseerde workflow (dataschaling en datasplitsing → modeltraining en parameteroptimalisatie → modelevaluatie → voorspellingen maken voor nieuwe data). Deze workflow fungeert als een didactisch vangnet doordat het de volgorde van stappen bewaakt, wat voorkomt dat studenten fasen overslaan of deze onbedoeld verwisselen. Denk bijvoorbeeld aan het per ongeluk evalueren van het model op de testset tijdens de optimalisatiefase; een fout die in een programmeertaal gemakkelijk kan ontstaan door bijvoorbeeld een typfout.
De gegenereerde JASP-uitvoer (Figuur
De eerste fase in het modelbouwproces is het schalen van de historische dataset (
3.4.2.1. Ingebouwde vangnetten
JASP schaalt automatisch alle numerieke variabelen en voert daarna meteen de datasplitsing uit volgens gangbare richtlijnen, namelijk 80% voor training (inclusief validatie) en 20% voor testen (e.g.,
Daarnaast blokkeert JASP in deze fase onlogische invoer en geeft het informatieve foutmeldingen, terwijl dat in programmeertalen niet altijd het geval is. Zo worden de doelvariabele (Tabel
3.4.2.2. Ondersteuning van kennisopbouw
Na het uitvoeren van de datasplitsing maakt JASP automatisch een grafische weergave van de omvang van de drie sets: 1.280 facturen in de trainingsset, 320 in de validatieset en 400 in de testset (zie Figuur
3.4.2.3. Beperkte flexibiliteit
Het gebruik van de interface brengt echter ook beperkingen met zich mee voor de wijze waarop de datasplitsing kan worden uitgevoerd. Zo biedt createDataPartition de mogelijkheid om meerdere trainingssets te genereren, terwijl deze functionaliteit niet beschikbaar is in JASP. Daarnaast schaalt JASP numerieke variabelen standaard naar een gemiddelde van nul en een standaardafwijking van één, zonder dat de gebruiker deze instelling kan aanpassen. Wanneer dergelijke flexibiliteit nodig is, zijn studenten daarom aangewezen op een programmeertaal.
De tweede fase in het modelbouwproces betreft het trainen van het model en het bepalen van de optimale waarde voor k. JASP vergelijkt hiervoor automatisch de nauwkeurigheid op de validatieset voor verschillende waardes van k. Uit dit optimalisatieproces blijkt dat een model met k = 3 de hoogste nauwkeurigheid behaalt op de validatieset (0,8281).
3.4.3.1. Ingebouwde vangnetten
Een centrale keuze in het optimalisatieproces is welke waarden van k worden geprobeerd. JASP gebruikt hiervoor standaard een maximumaantal voor k van tien. Dit is een standaardinstelling die beginners ondersteunt door het proces niet onnodig complex te maken. Een mogelijke fout in het optimalisatieproces is namelijk het kiezen van een onlogische waarde voor k. Denk hierbij aan k = 0 door een typfout (Tabel
3.4.3.2. Ondersteuning van kennisopbouw
Studenten kunnen het maximumaantal voor k eenvoudig aanpassen, bijvoorbeeld naar 100, waarna JASP direct toont hoe deze keuze de optimale waarde van k en de modelprestaties beïnvloedt. Zoals beargumenteerd is in paragraaf 2, bevordert dergelijke directe feedback het begrip van de causale relatie tussen deze keuze en de modelprestatie. JASP maakt daarnaast automatisch een grafiek die dit proces visualiseert door de nauwkeurigheid op de validatieset voor verschillende waarden van k te laten zien (zie Figuur
3.4.3.3. Beperkte flexibiliteit
Hoewel JASP het volledige optimalisatieproces automatiseert en daarmee complexiteit wegneemt, brengt dit ook beperkte flexibiliteit met zich mee. Zo kan er uitsluitend worden geoptimaliseerd op nauwkeurigheid. Voor optimalisatie op andere maatstaven is het gebruik van een programmeertaal noodzakelijk.
3.4.3.4. Risico op oppervlakkig begrip
Daarnaast is er een risico op oppervlakkig begrip, omdat studenten niet zelf het modelgedrag bij verschillende waardes van k ervaren. Hierdoor bestaat er een risico dat ze oppervlakkig inzicht ontwikkelen in de rol van k, bijvoorbeeld dat een lage waarde de voorspellingen van het model overgevoelig kan maken. Daarom is het belangrijk dat docenten het gebruiksgemak van de software benutten om studenten actief te laten nadenken over verschillende modellen, bijvoorbeeld door hen met één druk op de knop de voorspellingen voor verschillende waarden van k te laten visualiseren.
De derde fase bestaat uit het evalueren van het geoptimaliseerde model op de testset. De bovenste tabel in Figuur
3.4.4.1. Ingebouwde vangnetten
JASP produceert automatisch de verwarringsmatrix waarin de voorspelde betaalstatus wordt afgezet tegen de werkelijke betaalstatus van de facturen (zie Figuur
3.4.4.2. Risico op oppervlakkig begrip
Omdat JASP automatisch alle maatstaven berekent, bestaat het risico dat studenten deze uitkomsten klakkeloos overnemen zonder eerst te overwegen welke maatstaf relevant is voor het specifieke vraagstuk. Dit vergroot de kans op oppervlakkig begrip van de prestatie van het model. Daarom is het belangrijk dat docenten studenten actief laten nadenken over welke maatstaf in de gegeven context het meest betekenisvol is (zoals recall in deze casus). In programmeertalen doet dit probleem zich minder snel voor, omdat gebruikers daar expliciet moeten aangeven welke maatstaven zij willen opvragen, waardoor zij gedwongen worden bewust die keuze te maken.
De laatste stap in deze casus bestaat uit het toepassen van het eindmodel op de dataset van 2026. Nadat het geoptimaliseerde model is opgeslagen en de nieuwe dataset is geopend, kan binnen JASP de analyse ‘Voorspellen’ worden geselecteerd. Na het inladen van het eindmodel en het invoeren van de variabelen worden de 500 facturen uit 2026 automatisch geclassificeerd. De uitvoer (Figuur
3.4.5.1. Ingebouwde vangnetten
Een belangrijk aandachtspunt bij het maken van voorspellingen is dat de nieuwe data op dezelfde wijze worden geschaald als de data waarop het model is getraind. In programmeertalen vereist dit dat gebruikers de gemiddeldes en standaardafwijkingen in de trainingsdata opslaan en deze opnieuw toepassen tijdens het schalen van de nieuwe dataset. Dit proces is foutgevoelig, zeker voor beginners: het vergeten van één regel code kan leiden tot onlogische voorspellingen. JASP neemt dit gehele proces uit handen door de juiste schalingsparameters op te slaan met het getrainde model en automatisch opnieuw toe te passen. Dit vormt opnieuw een didactisch vangnet dat studenten behoedt voor subtiele maar impactvolle methodologische fouten die bij het werken met programmeertalen snel kunnen ontstaan (Tabel
3.4.5.2. Beperkte flexibiliteit
Waar no-code oplossingen echter tegen hun grenzen aanlopen, is in het vertalen van voorspellingen naar vervolgacties. In een programmeertaal kan bijvoorbeeld een koppeling worden gemaakt met de bronsystemen van de klant, waarna facturen die interessant zijn voor nadere inspectie automatisch kunnen worden geëxtraheerd. Een dergelijke integratie is niet makkelijk mogelijk in no-code software, wat de toepassingsmogelijkheden in de praktijk aanzienlijk beperkt.
De uitwerking van deze voorbeeldcasus met no-code software laat zien hoe een machine learning model kan worden opgebouwd, geëvalueerd en geïnterpreteerd zonder dat programmeervaardigheden nodig zijn.
In de inleiding van dit artikel wordt gesteld dat er een kloof bestaat tussen de technische mogelijkheden en de beschikbaarheid van data enerzijds en anderzijds wat in de auditpraktijk daadwerkelijk wordt toegepast. Het onderwijs kan bijdragen om deze kloof te overbruggen. Wij hebben voor programmamanagement en docenten in accountantsopleidingen de volgende drie aanbevelingen:
Los van de geschetste technische kloof staan ook de studeerbaarheid en aantrekkelijkheid van de accountantsopleiding onder druk (
Om de drie aanbevelingen in dit hoofdstuk concreet te maken, bespreken we een voorbeeld van een mogelijk ontwerp voor een cursusprogramma voor machine learning dat aansluit bij de voorgestelde integratie tussen theorie en praktijk (Tabel
Mogelijk ontwerp voor een geïntegreerd cursusprogramma voor machine learning in de accountantsopleiding.
| Dagdeel | Collegevorm | Onderwerp |
|---|---|---|
| 1 | Werkcollege | Basisconcepten machine learning; typen auditdata en soorten analyses, data inlezen in JASP; variabelen herkennen; beschrijvende statistiek berekenen en interpreteren. |
| 2 | Intervisie | Bespreking van proces(verslag) over praktijkdata verkrijgen en inlezen in casussituaties. |
| 3 | Werkcollege | Opzetten van eenvoudige classificatie- en regressiemodellen in JASP; interpreteren van de modeloutput in auditcontext. |
| 4 | Intervisie | Bespreking van proces(verslag) over toepassen classificatie- of regressiemodel op praktijkdata. |
| 5 | Werkcollege | Clusteren van transacties; identificeren van anomalieën; toepassing op journaalposten. |
| 6 | Intervisie | Bespreking van proces(verslag) over toepassing van clusteren of anomaliedetectie op praktijkdata. |
| 7 | Werkcollege | Belang van transparantie in audit; interpreteren van variabele-invloed en uitleggen hoe voorspellingen tot stand komen. |
| 8 | Intervisie | Bespreking van proces(verslag) over evalueren van toegepaste modellen en reflecteren op succesfactoren voor toekomstig eigen gebruik. |
Om deze leerdoelen te bereiken, worden werkcolleges afgewisseld met intervisiesessies. Voor de werkcolleges wordt een flip-the-classroom-opzet gebruikt, waarbij studenten eerst zelfstandig met theorie aan de slag gaan in een gestileerde casus. Als ondersteunende literatuur bevelen wij de boeken van
Tijdens de intervisiesessie presenteren studenten hun voortgang, bespreken ze obstakels en ontvangen ze feedback van de docent. De intervisie tussen studenten draagt bij aan de ervaring die nodig is om werkzaamheden die door anderen of door AI-agents zijn uitgevoerd te reviewen. Wanneer studenten bij de praktijkopdracht in hun eigen beroepspraktijk met no-code software tegen uitdagingen of problemen aanlopen, biedt de intervisiebijeenkomst ook de mogelijkheid dat de docent kan laten zien welke extra mogelijkheden zelf programmeren heeft ten opzichte van de no-code software. Na afloop van de laatste intervisiesessie wordt ook het eindproduct met de (geanonimiseerde) resultaten van de toepassing van machine learning in de controle bij hun eigen klant aan het portfolio toegevoegd en beoordeeld. Op deze manier worden zowel het leerproces als de leeruitkomst vastgelegd, waarbij de nadruk ligt op het proces van leren en niet uitsluitend op het eindproduct (scoren van voldoende of onvoldoende).
Na afloop van de voorgestelde cursus hebben studenten geleerd en ervaren hoe de theorie en concepten van bijvoorbeeld nieuwe technieken als machine learning gebruikt kunnen worden, aan de hand van eenvoudig te gebruiken no-code software en hebben ze inzicht in kansen en risico’s die dit oplevert voor de beroepspraktijk van accountants. Goede intervisie tussen studenten stimuleert de kritische vaardigheden die nodig zijn om de kwaliteit van deze werkzaamheden te kunnen reviewen.
In dit artikel is beargumenteerd dat no-code software een effectieve didactische opstap vormt voor het ontwikkelen van een basisniveau van datageletterdheid bij (toekomstige) accountants. De lage technische instapdrempel maakt het mogelijk dat studenten zich kunnen concentreren op het begrijpen van de fundamentele concepten van data-analyse, zonder te worden afgeleid door de syntactische en technische complexiteit van programmeertalen. Functionaliteiten zoals ingebouwde vangnetten, directe feedback, geïntegreerde uitleg en automatische visualisaties ondersteunen dit leerproces actief. Hoewel no-code software minder flexibiliteit biedt dan programmeertalen zoals Python of R, en een risico bestaat op oppervlakkig begrip wanneer reflectie ontbreekt, biedt het een goede mogelijkheid om datageletterdheid te ontwikkelen en daarmee te voldoen aan de vraag hiernaar vanuit de praktijk.
Voor een student die de fundamentele concepten beheerst en zich verder wil ontwikkelen als technisch specialist is de overstap naar programmeertalen een logische vervolgstap, waarmee zowel de toepasbaarheid als de diepgang van analyses wordt vergroot. Eerder onderzoek suggereert dat een gefaseerde aanpak waarin no-code software gecombineerd wordt met programmeertalen tot betere leerresultaten leidt dan uitsluitend programmeeronderwijs (
Samenvattend biedt no-code software een laagdrempelige manier voor opleiders om in te spelen op de groeiende behoefte aan een datagedreven controleaanpak. Niet elke accountant hoeft een data scientist te worden, maar accountants moeten wel de werkzaamheden die door specialisten worden uitgevoerd kunnen beoordelen en interpreteren (reviewen). Aanleren van deze vaardigheden met no-code software in de dagelijkse beroepspraktijk levert voordelen op voor zowel de individuele accountant als voor accountantsorganisaties en onderwijsinstellingen, die hierdoor beter in staat zijn om een datagedreven controleaanpak structureel te integreren in zowel de praktijk als de opleiding. Dit is in lijn met de vraag naar een brede integratie van theorie en praktijkopleiding.
Dr. K.P. Derks – Koen is universitair docent bij Nyenrode Business Universiteit en lid van de Stuurgroep Statistical Auditing van het Limperg Instituut. Daarnaast ontwikkelt hij de modules voor auditing en machine learning in JASP.
L. Mensink MSc – Lotte is promovenda bij Nyenrode Business Universiteit waar zij onderzoek doet naar de toepassing van Bayesiaanse statistiek in de audit.
Drs. R.M. Renes RA – Remko is universitair docent bij Nyenrode Business Universiteit en academic director van de Nyenrode accountancy opleidingen.
JASP kan gratis gedownload worden via https://jasp-stats.org.
De bestanden zijn te vinden in de online appendix op https://doi.org/10.17605/OSF.IO/G4D9A.
Zowel Python als R beschikt over uitgebreide bibliotheken voor machine learning, waaronder scikit-learn (
De variabelen omvatten onder andere het factuurbedrag, de duur van de klantrelatie en het aandeel eerdere facturen dat te laat is betaald. Daarnaast bevat de dataset risicofactoren zoals sectorrisico, de mate van kredietlimietbenutting, de frequentie van factuurgeschillen en de omzetgroei van de klant als mogelijke proxy voor druk op omzetdoelstellingen.
De online appendix bevat R en Python scripts om deze foutmeldingen te reproduceren.
JASP ondersteunt, naast het gebruik van een validatieset voor parameteroptimalisatie, verschillende vormen van cross-validatie, waaronder leave-one-out en k-fold (
Ter vergelijking: het implementeren van dezelfde toepassing in Python vergt minimaal 54 regels code en in R ten minste 35 regels code. Zie hiervoor de R en Python scripts in de online appendix.