Clear Sky Science · nl

Intelligente technieken voor voorspellende analyse in Agile softwareontwikkeling

· Terug naar het overzicht

Waarom het belangrijk is werk in software te voorspellen

Wie ooit heeft gewacht op een softwarereparatie of een nieuwe functionaliteit kent de frustratie van niet weten wanneer het daadwerkelijk klaar is. Achter de schermen worstelen teams met het raden van hoe lang elke taak duurt, wat deadlines, budgetten en klantvertrouwen beïnvloedt. Dit artikel onderzoekt hoe moderne, datagedreven methoden die schattingen kunnen omzetten in gefundeerde voorspellingen, zodat Agile-softwareteams hun werk op dagen kunnen plannen in plaats van te steunen op vage “story points.”

Figure 1
Figure 1.

Van ruwe schattingen naar datagedreven voorspellingen

In veel Agile-teams hangt inspanningenschatting nog steeds af van groepsdiscussies, planningsspellen of de mening van ervaren ontwikkelaars. Hoewel vertrouwd, zijn deze benaderingen subjectief: twee teams kunnen zeer verschillende schattingen geven voor hetzelfde werk. Eerder onderzoek gebruikte meestal privé- of betaalde bedrijfsdata, of richtte zich op bijzondere eenheden zoals story points die van organisatie tot organisatie anders worden gedefinieerd. Dat maakt het moeilijk om resultaten tussen projecten te vergelijken en bijna onmogelijk voor buitenstaanders om het werk te reproduceren of uit te breiden.

Een nieuw, open venster op Agile-werk bouwen

Om deze barrière te doorbreken introduceren de auteurs AgES, een nieuw open dataset opgebouwd uit volledig openbare GitHub-projecten die Agile-praktijken gebruiken. In plaats van vage story points registreert AgES de werkelijke tijd in dagen tussen het openen en het sluiten van een issue. Elk van de meer dan 35.000 issues bevat rijke context: wie het rapporteerde, wie eraan heeft gewerkt, hoeveel reacties het aantrok en welke labels en componenten (zoals gebruikersinterface, backend of beveiliging) erbij betrokken zijn. Met tekstverwerking haalt het team ook hoger-niveau informatie naar boven, zoals of het issue een bug, een verbetering of een nieuwe functie is, en hoe ervaren elke bijdrager is met soortgelijk werk.

De data opschonen zodat machines kunnen leren

Ruwe gegevens uit echte projecten zijn rommelig: sommige issues zijn nog open, sommige velden ontbreken en veel details verschijnen als vrij tekstveld. De onderzoekers ontwerpen een zorgvuldige schoonmaak- en transformatiepipeline. Ze verwijderen dubbele of onvolledige entries, zetten tekstlabels en categorieën om in numerieke vorm en berekenen nieuwe kenmerken zoals de expertise van bijdragers. Omdat de tijd tot oplossing sterk scheef verdeeld is—de meeste issues worden snel opgelost terwijl enkele erg lang duren—passen ze wiskundige transformaties en schaling toe om te voorkomen dat één factor het leerproces domineert. Het resultaat is een gestroomlijnde, consequent geformatteerde dataset die computers kunnen gebruiken om patronen te herkennen tussen eigenschappen van issues en de dagen die nodig zijn om ze op te lossen.

Figure 2
Figure 2.

Meerdere slimme methoden aan de tand voelen

Met de opgeschoonde AgES-data vergelijken de auteurs negen verschillende machine learning-benaderingen, van klassieke beslisbomen en random forests tot deep learning-modellen zoals recurrente en convolutionele netwerken. Elk model wordt getraind op het grootste deel van de data en vervolgens getest op niet eerder geziene issues, waarbij de prestatie wordt gemeten aan de hand van hoe dicht de voorspellingen bij de werkelijke oplossingtijden liggen. De studie gebruikt meerdere standaard foutmaten om zowel typische fouten als zeldzame maar grote misschattingen vast te leggen. Ook vergelijkt het AgES met twee bekende Agile-datasets uit eerder werk, om te laten zien hoe de nieuwe dataset en modellen zich verhouden.

Wat het beste werkte en waarom het ertoe doet

Over alle evaluatiematen heen levert een methode genaamd Extreme Gradient Boosting (XGBoost), die veel kleine beslisbomen combineert, consequent de meest nauwkeurige voorspellingen op de AgES-dataset. Boomgebaseerde methoden zoals XGBoost en random forests gaan goed om met echte tabeldata en ontbrekende waarden, en ze kunnen genuanceerde, niet-lineaire relaties vastleggen—zoals hoe een combinatie van issue-type, component en ontwikkelaarsexpertise de doorlooptijd beïnvloedt. Wanneer dezelfde modelfamilies op oudere datasets worden toegepast, bereiken AgES gekoppeld aan XGBoost lagere fouten, wat zowel de kracht van de nieuwe data als de geschiktheid van deze techniek voor inspanningenschatting in Agile benadrukt.

Van onderzoeksmodel naar dagelijks hulpmiddel

Voor niet-specialisten is de kernboodschap eenvoudig: door te leren van duizenden eerdere issues kunnen computers redelijk nauwkeurig voorspellen hoe lang nieuwe issues kunnen duren, vooral wanneer ze leunen op rijke, open data over echte projecten. Dit kan worden ingebouwd in lichte webtools of worden gekoppeld aan bestaande platforms zodat, zodra een ticket wordt aangemaakt, het systeem een voorspelling voor tijd-tot-oplossing biedt op basis van soortgelijk werk uit het verleden. Hoewel de auteurs opmerken dat de resultaten kunnen afwijken in zeer grote of gesloten industriële omgevingen, toont hun werk een praktische weg naar betrouwbaardere, transparante planning in Agile-softwareontwikkeling—teams wegbewegend van buikgevoel en richting op bewijs gebaseerde planning.

Bronvermelding: Shankar, S.P., Chaudhari, S.S., Mishra, V. et al. Intelligent techniques for predictive analytics in Agile software development. Sci Rep 16, 11195 (2026). https://doi.org/10.1038/s41598-026-41102-4

Trefwoorden: Agile softwareontwikkeling, inspanningenschatting, voorspellende analyse, machinaal leren, projectplanning