MDSD: Which way to go?

Het bekende gezegde “meerdere wegen leiden naar Rome” geldt ook voor Model Driven Development. Er zijn immers meerdere routes die je kunt volgen om hier invulling aan te geven. Markus Völter is er van overtuigd dat projectional editing een belangrijke basistechnologie is voor het creëren en bewerken van modellen.Tijs van der Storm gelooft juist dat modelleren op een tekst gebaseerde manier moet gebeuren. Zijn het simpelweg verschillende wegen naar hetzelfde doel? Of zit er hier iemand op een dood spoor? 

Op tien november stapten twee giganten in de wereld van model gedreven software met elkaar in de ring tijdens de Hot or Not: 'Model Driven Software Development, Which way to go?'. Markus Völter trapte de Hot-or-Not af met een algemene introductie van model gedreven software ontwikkeling en opende de eerste ronde met zijn argumentatie voor projectional editors. Dit zijn (structuur-)editors op modellen waarop een of meerdere views zijn gedefinieerd. Tijs van der Storm sloeg hard terug met de grote voordelen van het gebruik van domein specifieke talen in tekstueel formaat. 

Markus Völter opende de aanval: 'In den beginne hadden we ponskaarten, vervolgens kregen we tekst. Tegenwoordig...., tegenwoordig hebben we GEKLEURDE tekst!' Hij onderstreepte het grote belang van notaties voor domein experts en gaf een indrukwekkende demonstratie van de mogelijkheden van JetBrains MPS in combinatie met Mbeddr zoals o.a. visualisatie van toestandsmachines, grafische diagrammen, product-line-engineering features en verificatie tools, allen feilloos geïntegreerd in MPS. 

Tijs benadrukte juist de integratie-problematiek van projectional editors met andere tools wegens het gebrek aan een simpele tekstuele representatie. Dit is tevens problematisch voor het copy/pasten van code-fragmenten van het web of uit e-mail, waar toch weer parsers voor nodig zijn in de MPS wereld. Ook betwiste Tijs de schaalbaarheid van niet-tekstuele notaties en ontkrachtte hij de stellingname dat parsers niet in staat zijn om talen te componeren. 'Dit is allang geen probleem meer', aldus Tijs. 

In de vervolgronde barstte de discussie los aan de hand van vragen uit het publiek. Waarbij er helaas meer vragen dan tijd was. Beide heren benadrukten de voordelen van hun eigen aanpak op kundige wijze en deelden rake, maar humorvolle klappen uit aan hun opponent. Deze discussieopzet werd zowel door sprekers als publiek als prettig, leuk en verhelderend ervaren. 

De conclusie? Beide werelden bieden krachtige model gedreven tooling waarmee we de uitdagingen van de toekomst passend te lijf kunnen gaan. Projectional editing heeft een goed antwoord paraat voor ontwikkeling door domein-experts of eindgebruikers, maar kan veel voordeel behalen door meer te integreren met de state-of-the-art parser-technologie die gebruikt wordt in de tekstuele wereld.

OVER DE SPREKERS

Markus Völter is een autoriteit op het gebied van o.a. Model Driven Software Development, Domain Specific Languages en (uiteraard) Language Engineering. Markus is een veelgevraagd spreker, o.a. bij de toonaangevende conferentie "Code Generation". 

Tijs van der Storm is onderzoeker bij het Centrum Wiskunde & Informatica (CWI) en houdt zich daar vooral bezig met Language Engineering, Domain Specific Languages en Model Driven Engineering. Hij is een van de ontwerpers van Rascal, een language workbench en meta programmeertaal voor source code analyse en transformatie. Verder werkt hij samen met William Cook aan een Model Driven Programming Framework, genaamd Ensō.