Meer grip op software

Onderhoud en vernieuwing van grote software- systemen vormen complexe en groeiende problemen. Het NWO-onderzoeksprogramma Big Software stimuleert innovatie op het gebied van theorieën, methoden, tools en technieken. Dirk-Jan Swagerman (links) en Jan Friso Groote (rechts) werken samen binnen een van de eerste drie gehonoreerde projecten.

Dit verhaal verscheen eerder op www.ictonderzoek.net

De aanleiding voor het Big Softwareprogramma is tweeledig, vertelt Arie van Deursen, hoogleraar Software Engineering aan de Technische Universiteit Delft en lid van de voorbereidingscommissie die de call voor het programma opstelde. ‘Softwaresystemen worden steeds groter en ingewikkelder.

Big Software

Alles hangt met alles samen, en er zijn veel mensen betrokken bij het ontwikkelen en onderhouden ervan. Daardoor verliezen organisaties het overzicht wat al die software doet en wat er gebeurt als je ergens iets aanpast.’ Dat probleem speelt natuurlijk om te beginnen sterk bij legacysystemen, software die soms al decennia meegaat maar desondanks nog goed functioneert. ‘Je kunt het vergelijken met een Romeins mozaïek, dat in de loop der eeuwen is uitgegroeid tot het formaat van een voetbalveld waar allerlei mensen tegels verplaatsen en aan toevoegen. Dan wordt het lastig de oorspronkelijke structuur te bewaren. Maar big software is in mijn ogen meer dan alleen

Adyen, dat technologie voor het verwerken van wereldwijd betalingsverkeer levert aan multinationals als Netflix, Uber en Airbnb, zien dat hun software steeds groter en complexer wordt en met veel meer data moet kunnen omgaan.’

Machine Learning

Er is nog een tweede aanleiding voor het NWO-programma, vertelt Van Deursen: vanuit big data-onderzoek ontstaan steeds meer nieuwe technieken om de genoemde problemen aan te pakken. ‘Met machine learning kun je op andere manieren inzicht krijgen in complexe systemen. Ik denk bijvoorbeeld aan intents based programming, waarmee we de processen en de onderliggende ideeën achter software expliciet kunnen maken. Met die informatie kunnen ontwikkelaars de software makkelijker aanpassen. Want dat is de grote uitdaging: toekomstige aanpassingen.’

Lees het hele verhaal in het I/O magazine