← Nieuwste papers
💻 informatica

Entity and non-functional-requirement extraction from user stories: evidence from supervised sequence models and reproducible LLM benchmarking

Dit artikel evalueert supervised sequentiemodellen en open-weight LLM's voor het extraheren van entiteiten en niet-functionele eisen uit user stories, waarbij wordt aangetoond dat een BiLSTM-CRF model een nieuw uitgebracht, reproduceerbaar benchmark significant beter presteert dan zero-shot en one-shot LLM's.

Oorspronkelijke auteurs: Hazem Abedelrazeq Alreqeb, Motaz SAAD

Gepubliceerd 2026-10-19
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Hazem Abedelrazeq Alreqeb, Motaz SAAD

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Softwareteams schrijven hun plannen vaak in de vorm van korte, natuurlijke zinnen die user stories worden genoemd. Deze aantekeningen volgen een eenvoudig patroon: "Als een [persoon], wil ik [actie], zodat [reden]." Ze zijn bedoeld om vast te leggen wat een stuk software moet doen en waarom dat belangrijk is. Hoewel mensen deze aantekeningen gemakkelijk kunnen lezen, hebben computers moeite met het begrijpen ervan. De zinnen zijn vaak slordig, missen onderdelen of zijn geschreven op een manier die niet in een strikt sjabloon past. Om betere tools voor het beheren van software te bous, moeten onderzoekers een manier vinden om computers te leren deze verhalen te lezen en de specifieke stukjes informatie eruit te halen: wie erbij betrokken is, wat ze willen doen en waarom ze dat willen. Ze moeten ook verborgen vereisten opsporen, zoals regels over snelheid, privacy of hoe gebruiksvriendelijk het systeem is, die vaak in de tekst begraven liggen of onuitgesproken blijven.

Een team van onderzoekers zette zich met deze oplossing bezig door twee verschillende benaderingen te testen om computers te leren deze details te extraheren. De eerste benadering gebruikt een gespecialiseerd type computerprogramma dat is getraind op duizenden voorbeelden om te fungeren als een zorgvuldige redacteur, die de exacte woorden markeert die in elke categorie passen. De tweede benadering maakt gebruik van large language models, wat krachtige kunstmatige intelligentiesystemen zijn die in staat zijn menselijke taal te begrijpen en te genereren zonder specifieke training voor de taak nodig te hebben. De onderzoekers wilden zien welke methode de juiste informatie nauwkeuriger uit een grote verzameling softwareverhalen kon halen, en of de nieuwere, flexibelere AI-tools de oudere, meer rigide methoden konden overtreffen.

Het team begon met het verzamelen van een enorme collectie van 2.234 Engelse user stories uit diverse publieke bronnen, waaronder softwareontwikkelingsgemeenschappen en eisen-databases. Ze labelden deze verhalen handmatig, waarbij ze precies markeerden welke woorden de persoon, de actie en het doel vertegenwoordigden. Vervolgens testten ze een reeks computermodellen op deze gegevens. Het meest succesvolle model was een systeem dat tekst in beide richtingen tegelijk leest, waardoor het de context van een woord kan begrijpen door naar de woorden vóór en na het woord te kijken. Dit model identificeerde, wanneer het getraind op de oorspronkelijke collectie, de kernonderdelen van de verhalen in 96,2% van de gevallen correct. Toen de onderzoekers meer voorbeelden aan de trainingsdata toevoegden door lichte variaties van de bestaande verhalen te maken, verbeterde de nauwkeurigheid van het model naar 98,6%. Dit systeem bleek ook zeer goed in het opsporen van de vijf specifieke kwaliteitsaspecten waar het team naar op zoek was: privacy, prestaties, bruikbaarheid, schaalbaarheid en onderhoudbaarheid.

Om ervoor te zorgen dat hun resultaten eerlijk waren en door anderen gecontroleerd konden worden, creëerden de onderzoekers een nieuwe, gedeelde testset die apart werd gehouden van de trainingsdata. Ze nodigden zeven verschillende large language models uit om dezelfde taak uit te voeren. Deze modellen kregen de verhalen en de opdracht om de antwoorden in een strikt formaat terug te geven, zonder extra uitleg. De onderzoekers maten het succes door te controleren of het antwoord van de computer woord voor woord en in exact dezelfde volgorde overeenkwam met het door mensen gelabelde antwoord. De resultaten toonden een duidelijke kloof tussen de twee soorten technologie. Het gespecialiseerde computerprogramma dat specifiek op de betreffende data was getraind, behaalde een nauwkeurigheidsscore van 0,953 op de nieuwe testset. Zelfs toen de onderzoekers een klein aantal veilige, aangepaste voorbeelden aan de training toevoegden, steeg de score naar 0,961.

In contrast hiermee hadden de large language models, zelfs de krachtigste die beschikbaar zijn, aanzienlijke problemen met het matchen van de exacte grenzen van de woorden. Het best presterende large language model zonder specifieke voorbeelden om van te leren, haalde slechts 0,414. Toen de onderzoekers datzelfde model één voorbeeld gaven om het te laten zien hoe de taak werkt, verbeterde de score licht naar 0,434. Het hoofdzakelijke probleem was dat hoewel deze modellen vaak de algemene betekenis van het verhaal begrijpen, ze vaak te veel of te weinig woorden in hun antwoorden opnamen, of de verkeerde begin- en eindpunten van de zinsdelen kozen. Omdat de test een exacte overeenkomst vereiste, telden deze kleine fouten als mislukkingen. Het gespecialiseerde programma was echter ontworpen om specifiek die exacte grenzen te vinden, wat het veel betrouwbaarder maakte voor deze specifieke taak.

De studie keek ook naar hoe snel deze systemen werkten. Het gespecialiseerde programma kon een enkele user story verwerken in minder dan een halve milliseconde op een standaardcomputer, wat het ongelooflijk snel maakt voor grote collecties gegevens. De large language models duurden veel langer, met een gemiddelde van ongeveer 0,7 seconden per verhaal, wat een aanzienlijk verschil is bij het werken met duizenden documenten. De onderzoekers merkten op dat hoewel de large language models uitstekend zijn in het begrijpen van de algemene idee en nuttig kunnen zijn voor een menselijke beoordeling, ze nog niet klaar zijn om de gespecialiseerde programma's te vervangen voor taken die een precieze, geautomatiseerde extractie van specifieke details vereisen.

De onderzoekers waren zorgvuldig in het benoemen van de beperkingen van hun werk. Ze konden de resultaten van een eerder uitgevoerd, groter experiment niet volledig reproduceren omdat sommige van de originele gegevens en logs ontbraken. Ze merkten ook op dat de door hen gecreëerde gedeelde benchmark de labels voor kwaliteitsaspecten (NFR) opzettelijk leeg liet, omdat de beschikbare brongegevens niet gevalideerd waren voor story-level categorieën. Bijgevolg laat deze nieuwe gedeelde testset geen eerlijke vergelijking toe van hoe goed de large language models die specifieke niet-functionele vereisten afhandelden. De studie concludeert dat voor teams die automatisch door duizenden softwareverhalen moeten zoeken om specifieke actoren, acties en doelen te vinden, het gespecialiseerde computerprogramma het meest nauwkeurige en efficiënte hulpmiddel blijft. De large language models kunnen dienen als een behulpzame assistent voor een menselijke analist, maar ze kunnen nog niet vertrouwd worden om het werk alleen te doen zonder zorgvuldige controle. De onderzoekers hebben hun gegevens en tools vrijgegeven zodat andere wetenschappers deze bevindingen kunnen verifiëren en de technologie verder kunnen verbeteren.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →