Modelinferentie en vergelijking voor software-evolutie in grote op componenten gebaseerde systemen

woensdag 28 augustus 2024, 16:30
Promovendus
D. Hendriks
Promotor(s)
prof. dr. F.W. Vaandrager
Copromotor(s)
dr. ir. G.J. Tretsman
Locatie
Aula

Complexe cyberfysieke systemen hebben vaak veel softwarecomponenten. Naarmate deze systemen en hun software zich onvermijdelijk ontwikkelen, moeten engineers het (communicatie)gedrag van de software begrijpen om deze op de juiste wijze aan te passen en de impact van hun veranderingen begrijpen om kostbare achteruitgang te voorkomen en risico's te beperken.
Het maken van een overzicht van het softwaregedrag is uitdagend, tijdrovend en foutgevoelig werk, zelfs met de beschikbare code, tests en documentatie. Dit overzicht kan worden gemaakt door automatisch modellen te maken die het softwaregedrag vastleggen. Dankzij deze multi-level modellen kunnen engineers het gedrag begrijpen, zelfs voor grote systemen met veel softwarecomponenten.
Engineers hebben vaak geen inzicht in de gevolgen die hun wijzigingen hebben voor het hele systeem. Onze multi-level vergelijkingsmethode vergelijkt automatisch het gedrag van modellen van softwareversies vóór en na een wijziging. De vergelijkingsresultaten worden op verschillende niveaus gepresenteerd, zodat engineers een overzicht krijgen en ze stapsgewijs door de relevante verschillen worden geleid zonder tijd te verspillen aan onderdelen van het systeem die niet worden beïnvloed.
De benaderingen zijn geëvalueerd aan de hand van ruim een dozijn praktijkvoorbeelden, waaruit blijkt dat engineers minder moeite hoeven te doen en dat de risico's voor de software-evolutie kunnen worden verminderd. De uitbreidbare open-source MIDS-tool combineert de benaderingen en stelt deze beschikbaar voor de industrie om zo de uitdagingen van de software-evolutie te verlichten.

Dennis Hendriks behaalde in 2007 zijn master Informatica aan de Technische Universiteit Eindhoven (TU/e). Vervolgens werkte hij als wetenschappelijk programmeur aan de TU/e, totdat hij in 2016 in dienst trad bij onderzoekscentrum TNO. Momenteel is hij senior onderzoeker bij TNO-ESI. Hij heeft bovendien een parttime functie op de afdeling Software Science van het Institute for Computing and Information Sciences aan de Radboud Universiteit en is projectleider van het Eclipse ESCET open-source project.